假设有烹饪比赛.代理人将评估一些菜肴并选择最好的一道,每道菜分为几个方面(例如:外观、味道等).
每个dishs在不同方面的得分是已知的(例如:味道20分,外观15分),但代理在这些方面的权重未知,权重增加到100%(例如:假设只有两个方面,代理可能有60%的味道和40%的外观).这道菜的最终得分是各方面得分与其重量乘积的总和.因此,这道菜的分数将为20 x 60%+15 x 40%=18.每场比赛将有几道菜,得分最高者获胜.
现在的问题是,如果我们知道每道菜的得分,但我们从经纪人那里得到的只是获胜的菜.如果我们多次运行此竞争,我们可以使用强化学习来找出此代理的每个方面的权重吗?或者一般来说,我们如何解决这个问题?
你应该能够很容易地将其编码到你的损失函数中.假设你有3个特征:`味道8215;,8215;外观8215;,质地.模型的输出将是一个由3个值组成的数组.由于您在训练期间具有每个特征的等级,因此可以定义三个损失函数(这称为多任务学习).
您的最终损失函数(您针对其进行训练)是三个加权个人损失函数的总和.现在,您的模型经过训练,可以分别输出"味道"、"外观"和"纹理"的各个特征,并且可以正确预测每个特征.
有更简洁的方法来构造上面的代码,但我给了你一个更长的版本来阐明这一点.此外,我意识到你可能会使用平方误差以外的东西,这没有什么特别值得注意的,这只是一个尖锐的例子.