让我们考虑以下情况:
- 您正在教机器人打乒乓球
- 您正在教一个程序来计算平方根
- 您正在学校为一个孩子教数学
在这些情况下(即监督学习),许多其他情况(在其他情况中)有一个共同点:学习者根据其表现获得奖励。
我的问题是,奖励函数应该是什么样的?是否有“最佳”答案,还是取决于情况?如果取决于情况,如何确定选择哪种奖励功能?
例如,采用以下三个奖励功能:
- 函数
A
说:- 在某一点以下,坏或坏都是一样的:您一无所获
- 几乎完美与完美之间有明显的区别
- 函数
B
说:- 您获得的奖励与您的表现成线性比例
- 函数
C
说:- 如果你的表现不好,没关系,你就尽力了:你仍然会得到一些回报
- 完美与几乎完美之间没有太大区别
凭直觉,我认为A
这会使机器人非常专注并学习确切的模式,但是在处理类似模式时C
会变得愚蠢,同时会使它更适应更改,但会失去完美性。
人们可能还会想到更复杂的功能,只是为了展示而已:
那么,如何知道选择哪个功能呢?这是已知的行为会从(至少)基本出现A
,B
和C
功能?
附带的问题是,这对于机器人和人类孩子来说会根本不同吗?
A
,该机器人具有类似于的奖励功能,该机器人在完成确切的任务时可能会变得非常擅长,但在相似但略有不同的任务上却会很糟糕。不过那只是我的猜测。
X
会给我最好的结果”,即使不是完全正确,也会给出很好的经验法则。