Then, assuming the CIRL can also predict and manipulate human behaviour, it can force the human to confirm (through action or speech) that some particularly-easy-to-maximise R is the correct one.
This seems incorrect to me; my understanding is that CIRL treats the true utility function as a historical fact. What’s your model of CIRL such that this could happen?
If it models the human as always perfectly rational, then this is valid (eg if the human confirms they want heroin after being forcibly given heroin, then, since they are rational, they must really like the combination (having heroin)&(being forcibly given heroin); this must therefore be part of R).
All it needs is to model the human decision in that specific instance as rational, for that to work.
I agree that, if the AI has already manipulated the human into liking heroin, then the AI will confirm that the human in fact wants heroin. However, with CIRL the AI will not predict in advance that giving the human heroin would cause them to say they like heroin.
Specifically, we could consider a prior over utility functions where there’s a 40% chance that the human likes heroin. The irrationality model is that, after being administered heroin or not, the human will say what they like, and will be correct with 80% probability. Say that, if the human likes heroin, they assign utility 5 to heroin and 0 to no heroin; while if the human dislikes heroin, they assign utility −5 to heroin and 0 to no heroin.
In this case the AI will not administer heroin, since it thinks that the human probably does not like heroin (according to the prior over utility functions), and will gain the same information either way. The AI (incorrectly) predicts that if it administered heroin to the human, the human would probably still say they don’t like heroin. So at least in this case, the problem does not appear.
Are you concerned this combination of (prior over utility functions, irrationality model) is going to make bad predictions, so over time the AI will replace it with some other model?
Here I’m allowing the AI to predict in advance what giving the heroin would do. And the AI doesn’t predict “the human likes heroin” but “contingent on some minor fact that is true in the world where the human is forced to take heroin, the human likes heroin”.
Via tricks like that, the human’s behaviour is seen to be perfectly rational.
Ok, here’s my reconstruction of what model you’re using:
The AI will take an action AAI; then the human will take action AH; then a world state W will result.
The human utility function U is taken to be a function from W to R.
The AI has a “prior” over utility functions, Q(U), and a “rationality model”, Q(AH|U,AAI), saying what action a human would take given that they have a given utility function and given the action the AI took (in this case, let’s say the human directly observes the AI’s action). For example, Q could say that the human takes the optimal action 80% of the time and otherwise takes a suboptimal action.
Separately, the AI has a predictive model P(AH|AAI), saying what action the human is actually going to take. The predictive model is “good” is the sense that, for example, it should predict that the human will say they want heroin if they are given it. The AI also has a predictive model for the world P(W|AAI,AH).
Notably, Q is inconsistent with P. If we define Q(AH|AAI):=∑UQ(U)Q(AH|U,AAI), then in general P(AH|AAI)≠Q(AH|AAI). For example, P correctly predicts that the human will say they like heroin if the AI administers it; while Q says that the human will probably not (since they’re correct 80% of the time, and dislike heroin with 60% probability).
The AI’s “estimate” for the human’s utility function, given action AH, is
Q(U|AH,AAI):=Q(U)Q(AH|U,AAI)∑U′Q(U)Q(AH|U,AAI).
The AI’s objective is to optimize its “estimate” of expected utility:
UAI:=∑UQ(U|AH,AAI)U(W)
And it scores actions by taking the expectation of this, using P:
Correct me if I’m wrong about the model you’re using.
If this is the model you’re using, then it is (a) inconsistent with the IRL/CIRL literature, and (b) looks really weird (as Paul points out). In this case you should be clear that you’re not criticizing IRL/CIRL, you’re criticizing a different model which, as far as I know, no one has advocated as a good way of learning human values.
Let Q be quite simple: the human always takes the optimal action. The predictive model P predicts that, if given heroin, the human will take more, and, if not, will not.
It seems that P and Q are in contradiction with each other, but that is because we are using a different model Q′ of human preferences. A valid model of human preferences, under Q, is that humans like heroin if it’s forced on them. Or, if you want to isolate this from the AI’s direct actions, that humans like heroin if X happens, where X is some unrelated event that happens if the AI forces heroin on the human, but not otherwise.
Having separate models P and Q is already quite weird; usually there would be a single model where values appear as latent structure.
You could legitimately complain that it seems very hard to construct such a model. And indeed I am skeptical that it will be possible. But if you want to fix problems arising from specifying Q rather than P, it seems like you should say something about why specifying a separate Q is easier, or why someone would do it. At face value it looks equally difficult.
(Also, it is definitely not clear what algorithm you are referring to in this comment. Can you specify what computation the AI actually does / what kind of objects this P and Q are? The way I can see to make it work, P is a distribution over observations and Q is a distribution over values conditioned on observations. Is that right?)
The model P is simply a model of human behaviour. It’s objective in the sense that it simply attempts to predict what humans will do in practice. It is, however, useless for figuring out what human values are, as it’s purely predictive of observations.
The model Q is an explanation/model for deducing human preferences or values, from observations (or predicted observations). Thus, given P and Q, you can construct R, the human reward function (note that P, Q, and R are all very different types of objects).
Simple possible Q’s would be Q1 = “everything the human does is rational” or Q2 = “everything the human does is random”.
So each Q contains estimates of rationality, noise, bias, amount of knowledge, and so on. Generally you’d want to have multiple Q’s and update them in terms of observations as well.
What kind of object is Q? (I assume its not a string.) Are you directly specifying a distribution of preferences conditioned on observations? Are you specifying a distribution over observations conditioned on preferences and then using inference?
I assume the second case. So given that Q is a predictive model, why wouldn’t you also use Q as your model for planning? What is the advantage of using two separate models? Has anyone proposed using separate models in this way?
To the extent that your model Q is bad, it seems like you are just doomed to perform badly, and the you either need to abandon the model-based approach or come up with a better model. Adding a second model P doesn’t sound promising at face value.
It may be interesting or useful to have two models in this way, but I think it’s an unusual architecture that requires some discussion.
This seems incorrect to me; my understanding is that CIRL treats the true utility function as a historical fact. What’s your model of CIRL such that this could happen?
If it models the human as always perfectly rational, then this is valid (eg if the human confirms they want heroin after being forcibly given heroin, then, since they are rational, they must really like the combination (having heroin)&(being forcibly given heroin); this must therefore be part of R).
All it needs is to model the human decision in that specific instance as rational, for that to work.
I agree that, if the AI has already manipulated the human into liking heroin, then the AI will confirm that the human in fact wants heroin. However, with CIRL the AI will not predict in advance that giving the human heroin would cause them to say they like heroin.
Specifically, we could consider a prior over utility functions where there’s a 40% chance that the human likes heroin. The irrationality model is that, after being administered heroin or not, the human will say what they like, and will be correct with 80% probability. Say that, if the human likes heroin, they assign utility 5 to heroin and 0 to no heroin; while if the human dislikes heroin, they assign utility −5 to heroin and 0 to no heroin.
In this case the AI will not administer heroin, since it thinks that the human probably does not like heroin (according to the prior over utility functions), and will gain the same information either way. The AI (incorrectly) predicts that if it administered heroin to the human, the human would probably still say they don’t like heroin. So at least in this case, the problem does not appear.
Are you concerned this combination of (prior over utility functions, irrationality model) is going to make bad predictions, so over time the AI will replace it with some other model?
Here I’m allowing the AI to predict in advance what giving the heroin would do. And the AI doesn’t predict “the human likes heroin” but “contingent on some minor fact that is true in the world where the human is forced to take heroin, the human likes heroin”.
Via tricks like that, the human’s behaviour is seen to be perfectly rational.
Ok, here’s my reconstruction of what model you’re using:
The AI will take an action AAI; then the human will take action AH; then a world state W will result.
The human utility function U is taken to be a function from W to R.
The AI has a “prior” over utility functions, Q(U), and a “rationality model”, Q(AH|U,AAI), saying what action a human would take given that they have a given utility function and given the action the AI took (in this case, let’s say the human directly observes the AI’s action). For example, Q could say that the human takes the optimal action 80% of the time and otherwise takes a suboptimal action.
Separately, the AI has a predictive model P(AH|AAI), saying what action the human is actually going to take. The predictive model is “good” is the sense that, for example, it should predict that the human will say they want heroin if they are given it. The AI also has a predictive model for the world P(W|AAI,AH).
Notably, Q is inconsistent with P. If we define Q(AH|AAI):=∑UQ(U)Q(AH|U,AAI), then in general P(AH|AAI)≠Q(AH|AAI). For example, P correctly predicts that the human will say they like heroin if the AI administers it; while Q says that the human will probably not (since they’re correct 80% of the time, and dislike heroin with 60% probability).
The AI’s “estimate” for the human’s utility function, given action AH, is
Q(U|AH,AAI):=Q(U)Q(AH|U,AAI)∑U′Q(U)Q(AH|U,AAI).
The AI’s objective is to optimize its “estimate” of expected utility:
UAI:=∑UQ(U|AH,AAI)U(W)
And it scores actions by taking the expectation of this, using P:
score(AAI):=EP[UAI|AAI]:=∑AHP(AH|AAI)∑WP(W|AH,AAI)∑UQ(U|AH,AAI)U(W)
Correct me if I’m wrong about the model you’re using.
If this is the model you’re using, then it is (a) inconsistent with the IRL/CIRL literature, and (b) looks really weird (as Paul points out). In this case you should be clear that you’re not criticizing IRL/CIRL, you’re criticizing a different model which, as far as I know, no one has advocated as a good way of learning human values.
No, that’s not it! Let me try to make it clearer.
Let Q be quite simple: the human always takes the optimal action. The predictive model P predicts that, if given heroin, the human will take more, and, if not, will not.
It seems that P and Q are in contradiction with each other, but that is because we are using a different model Q′ of human preferences. A valid model of human preferences, under Q, is that humans like heroin if it’s forced on them. Or, if you want to isolate this from the AI’s direct actions, that humans like heroin if X happens, where X is some unrelated event that happens if the AI forces heroin on the human, but not otherwise.
Having separate models P and Q is already quite weird; usually there would be a single model where values appear as latent structure.
You could legitimately complain that it seems very hard to construct such a model. And indeed I am skeptical that it will be possible. But if you want to fix problems arising from specifying Q rather than P, it seems like you should say something about why specifying a separate Q is easier, or why someone would do it. At face value it looks equally difficult.
(Also, it is definitely not clear what algorithm you are referring to in this comment. Can you specify what computation the AI actually does / what kind of objects this P and Q are? The way I can see to make it work, P is a distribution over observations and Q is a distribution over values conditioned on observations. Is that right?)
The model P is simply a model of human behaviour. It’s objective in the sense that it simply attempts to predict what humans will do in practice. It is, however, useless for figuring out what human values are, as it’s purely predictive of observations.
The model Q is an explanation/model for deducing human preferences or values, from observations (or predicted observations). Thus, given P and Q, you can construct R, the human reward function (note that P, Q, and R are all very different types of objects).
Simple possible Q’s would be Q1 = “everything the human does is rational” or Q2 = “everything the human does is random”.
So each Q contains estimates of rationality, noise, bias, amount of knowledge, and so on. Generally you’d want to have multiple Q’s and update them in terms of observations as well.
What kind of object is Q? (I assume its not a string.) Are you directly specifying a distribution of preferences conditioned on observations? Are you specifying a distribution over observations conditioned on preferences and then using inference?
I assume the second case. So given that Q is a predictive model, why wouldn’t you also use Q as your model for planning? What is the advantage of using two separate models? Has anyone proposed using separate models in this way?
To the extent that your model Q is bad, it seems like you are just doomed to perform badly, and the you either need to abandon the model-based approach or come up with a better model. Adding a second model P doesn’t sound promising at face value.
It may be interesting or useful to have two models in this way, but I think it’s an unusual architecture that requires some discussion.