深入理解强化学习——多臂赌博机:增量式实现

分类目录:《深入理解强化学习》总目录


至今我们讨论的动作---价值方法都把动作价值作为观测到的收益的样本均值来估计。下面我们探讨如何才能以一种高效的方式计算这些均值,尤其是如何保持常数级的内存需求和常数级的单时刻计算量。

为了简化标记,我们关心单个动作。令 R i R_i Ri表示这一动作被选择 i i i次后获得的收益, Q n Q_n Qn表示被选择 n − 1 n-1 n−1次后它的估计的动作价值,现在可以简单地把它写为:
Q n = R 1 + R 2 + ⋯ + R n − 1 n − 1 Q_n=\frac{R_1+R_2+\cdots+R_{n-1}}{n-1} Qn=n−1R1+R2+⋯+Rn−1

这种简明的实现需要维护所有收益的记录,然后在每次需要估计价值时进行计算。然而,由于已知的收益越来越多,内存和计算量会随着时间增长。每增加一次收益就需要更多的内存存储和更多的计算资源来对分子求和,但这确实不是必须的。为了计算每个新的收益,很容易设计增量式公式以小而恒定的计算来更新平均值。给定 Q n Q_n Qn和第 n n n次的收益 R n R_n Rn,所有 n n n个收益的新的均值可以这样计算:
Q n + 1 = Q n + 1 n [ R n − Q n ] Q_{n+1}=Q_n+\frac{1}{n}[R_n-Q_n] Qn+1=Qn+n1[Rn−Qn]

这个式子即使对 n = 1 n=1 n=1也有效,对任意 Q 1 Q_1 Q1,可以得到 Q 2 = R 1 Q_2=R_1 Q2=R1。对于每一个新的收益,这种实现只需要存储 Q n Q_n Qn和 n n n,并用上式进行少量计算即可。

上式的一般的形式是:
新估计值 = 旧估计值 + 步长 ∗ [ 目标 − 旧估计值 ] \text{新估计值}=\text{旧估计值}+\text{步长}*[\text{目标}-\text{旧估计值}] 新估计值=旧估计值+步长∗[目标−旧估计值]

表达式 目标 − 旧估计值 \text{目标}-\text{旧估计值} 目标−旧估计值是估计值的误差。误差会随着向"目标"(Target)靠近的每一步而减小。虽然"目标"中可能充满噪声,但我们还是假定"目标"会告诉我们可行的前进方向。比如在上述例子中,目标就是第 n n n次的收益。

值得注意的是,上述增量式方法中的"步长"(Stepsize)会随着时间而变化。处理动作 a a a对应的第 n n n个收益的方法用的"步长"是 1 n \frac{1}{n} n1。我们将"步长"记作 α \alpha α,或者更普适地记作 α t ( a ) \alpha_t(a) αt(a)。

参考文献:

1\] 张伟楠, 沈键, 俞勇. 动手学强化学习\[M\]. 人民邮电出版社, 2022. \[2\] Richard S. Sutton, Andrew G. Barto. 强化学习(第2版)\[M\]. 电子工业出版社, 2019 \[3\] Maxim Lapan. 深度强化学习实践(原书第2版)\[M\]. 北京华章图文信息有限公司, 2021 \[4\] 王琦, 杨毅远, 江季. Easy RL:强化学习教程 \[M\]. 人民邮电出版社, 2022

相关推荐
赵钰老师25 分钟前
【Deepseek、ChatGPT】智能气候前沿:AI Agent结合机器学习与深度学习在全球气候变化驱动因素预测中的应用
人工智能·python·深度学习·机器学习·数据分析
AIGC-Lison25 分钟前
【CSDN首发】Stable Diffusion从零到精通学习路线分享
人工智能·ai·stable diffusion·aigc·sd
AI绘画咪酱26 分钟前
Stable Diffusion|Ai赋能电商 Inpaint Anything
人工智能·ai·ai作画·stable diffusion·sd·ai教程·sd教程
ruokkk27 分钟前
Spring AI MCP 客户端实战:轻松连接高德地图等工具
人工智能
_一条咸鱼_28 分钟前
AI Agent 工作原理深入剖析
人工智能
飞哥数智坊29 分钟前
AI编程实战:数据大屏生成初探
人工智能
蚝油菜花31 分钟前
Cua:Mac用户狂喜!这个开源框架让AI直接接管你的电脑,快速实现AI自动化办公
人工智能·开源
蚝油菜花31 分钟前
AutoAgent:无需编程!接入DeepSeek用自然语言创建和部署AI智能体!港大开源框架让AI智能体开发变成填空题
人工智能·开源
nuise_33 分钟前
李宏毅机器学习笔记06 | 鱼和熊掌可以兼得的机器学习 - 内容接宝可梦
人工智能·笔记·机器学习
林泽毅34 分钟前
SwanLab x EasyR1:多模态LLM强化学习后训练组合拳,让模型进化更高效
算法·llm·强化学习