置信上限(UCB)是强化学习(RL)中的一种策略,它在不确定性下做出决策时平衡了探索和利用。它广泛应用于多臂老虎机等问题中,在这些问题中,智能体必须在具有未知奖励分布的动作之间进行选择。其核心思想是根据动作的当前估计值和围绕该估计值的不确定性来优先考虑动作。通过向未充分探索的动作添加“乐观奖励”,UCB 鼓励智能体尝试可能产生更高奖励的选项,同时仍然利用已知的高奖励动作。 这通过系统地解决不确定性来减少遗憾——最优累积奖励与智能体实际实现的奖励之间的差异。
UCB算法使用结合了平均观察到的奖励和探索项的公式来计算每个动作的分数。对于一个动作 (a),该分数的计算公式为:[ \text{UCB}(a) = \text{average_reward}(a) + \sqrt{\frac{2 \ln T}{n(a)}} ] 在这里,(T) 是采取的总步数,(n(a)) 是动作 (a) 被选择的次数。第一个项 ((\text{average_reward}(a))) 代表利用(使用当前知识),而第二个项(平方根)量化了不确定性,倾向于试验较少的动作。随着 (n(a)) 的增加,探索奖励会缩小,从而将重点转移到利用上。例如,在新闻推荐系统中,具有高点击率的文章(利用)会更频繁地显示,但 UCB 确保偶尔测试较新的文章(具有更高的不确定性),以避免错过更好的选项。
一个实际用例是 A/B 测试,其中 UCB 动态地将流量分配给网页变体。早期,它平等地探索所有变体,但随着数据的积累,它会将流量转移到表现更好的变体,同时仍然测试其他变体。在 RL 中,UCB 原则扩展到蒙特卡洛树搜索 (MCTS) 等算法,其中决策树中的节点根据其 UCB 分数进行选择,以平衡探索新状态和利用已知路径。 虽然 UCB 易于实现,但它假设平稳的奖励分布,并且需要跟踪动作计数和奖励。对于非平稳环境(例如,不断变化的用户偏好),需要滑动窗口或衰减因子等修改。 尽管存在这些局限性,UCB 仍然是管理探索-利用权衡的基础方法。