UCB – The Upper Confidence BoundAlgorithm,上置信算法。
下图红圈部分就是 UCB Spikes。
下面就来解释如何形成UCB Spikes(尖峰)。由于UCB算法的优化目标是提高每个动作的置信度,这个置信度可以理解为每个动作的平均收益和该动作的探索程度的加权和,而探索程度是一个关于该动作被选中次数的函数,选中越多,则探索程度越小。在最开始时,所有的臂的置信度都很低(因为所有动作的初始收益都是0,此时探索程度占据主动),因此每个臂都会被选中几次,很快地就找到了最优的动作(在平均收益图像中形成一个很显著的波峰),但是UCB算法的优化目标是提高每一个臂的置信度,它会去选择那些当前收益不高的动作,因而又从波峰处掉了下去。以上便解释了USB Spikes在前几个Steps形成的原因。
下面总结一些UCB算法的缺点。
1. UCB算法尽管能很快发现最优的动作,但为了追求每个动作的置信度,收敛于最优的动作的速度慢于一些方法,例如softmax,同时总平均收入也低于softmax,但比e-greedy要高。
2. UCB算法比e-greedy算法更难拓展到更普遍的强化学习环境中,很难解决非静止的问题(动作的收益不是来自一个静止的概率分布),很难解决有海量状态空间的问题。