运行实验时,我注意到以下行为-贪婪和UCB1。如果奖励保持二进制(0 或 1),则两个算法的性能彼此相当。但是,如果我使奖励连续(并且有界 [0, 1]),那么-greedy 仍然不错,但 UCB1 性能直线下降。作为一个实验,我只是将 1 的奖励放大了 1/10,这会对性能产生负面影响。
我已经绘制了算法估计的奖励值,并且看到(由于置信区间项)UCB1 在很大程度上高估了奖励。
有解决这个问题的实用技巧吗?我的猜测是比例系数在置信上限之前仅适用于这种情况。然而,性能上的差异对我来说是惊人的。我怎么知道什么时候以及什么比例系数是合适的?
===
更新 1奖励分配非常简单。有 17 个臂,对于臂 3 和 4,学习算法得到 1 的奖励,其他臂返回 0 的奖励。没有随机性,算法有 1000 次迭代。
例如,如果我将奖励扩大 1/10,那么 UCB1 需要很长时间才能开始赶上-贪婪的