大数据,机器学习,人工智能深度学习

2021 重启强化学习(3) 多摇臂老虎机

2021-03-24  本文已影响0人  zidea
020.jpg

如果想观看相关视频可以在西瓜视频(账号zidea)或者哔哩哔哩(账号zidea2015)找到我发布视频解说,注意头像和简书使用头像一致。

多摇臂老虎机

在强化学习中多摇臂老虎机相对比较简单,所以我们就从这个多摇臂老虎机说起,看如何将解决多摇臂老虎机的方法应用到推荐系统中。一个赌徒,要去摇老虎机,走进赌场一看,一排老虎机,外表一模一样,但是每个老虎机吐钱的概率可不一样,他不知道每个老虎机吐钱的概率分布是什么,那么每次该选择哪个老虎机可以做到最大化收益呢?这就是多臂老虎机问题 ( Multi-armed bandit problem, K-armed bandit problem, MAB )。

接下来我们数学的语言简单描述一些摇臂老虎机问题,以及如何用强化学习方法来解决这个问题。多摇臂老虎机是一个单一状态的蒙特卡洛规划,是一种序列决策的问题,这种问题是在利用(exploitation)和探索(exploration)之间保持平衡。

在多摇臂老虎机是简单强化学习问题

在摇臂老虎机中状态、动作和奖励

假设摇臂 T 次,那么按照什么策略摇臂,才能使期望累积奖励最大,当Q^{*}(a) 已知时,每次都选择 Q^{*}(a) 最大的 a (贪心策略)

接下来介绍几种策略来解决摇臂老虎机问题

贪心策略

利用和探索

利用(Exploitation)

所谓利用就是在保证过去的决策中得到最佳回报,按照贪心策略进行选择的话,也就是选择估计的 Q_t(a) 最大的行为 a,这样做虽然最大化即时奖励,但是可能由于 Q_t(a) 只是对 q(a) 的估计,估计的不确定性导致按照贪心策略选择行为不一定 q^*(a) 最大的行为

探索(Exploration)

所谓探索就是寄希望在未来得到跟大的回报,选择贪心策略之外的行为(non-greedy actions) 可能短期奖励会比较低,但是长期奖励比较高,通过探索可以找到奖励更大的行为,供后续选择。

贪心策略和 \epsilon 贪心策略

贪心策略形式化地表示
A_t = \argmax_{a} Q_t(a)

\epsilon 贪心策略

根据历史观测样本的平均值对 q^*(a) 进行估计

Q_t(a) = \frac{\sum_{i=1}^{t-1} R_i \mathbb{I}_{A_i=\alpha}}{\sum_{i=1}^{t-1} \mathbb{I}_{A_i=\alpha}}

行为估值的增量式

Q_n = \frac{R_1 + R_2 + \cdots + R_{n-1}}{n-1}

这一轮收益以及之前的均值,好处是无需每次求和。过去均值以及当前收益就可以计算出当前均值。而且可以看成更新就是将当前值更新到过去的值来实现更新。

Q_{n+1} = Q_n + \frac{1}{n}\left[ R_n - Q_n \right]

上一篇 下一篇

猜你喜欢

热点阅读