AI学习笔记——强化学习之Model-Free Prediction--解决未知环境下的预测问题

简介: 前面关于强化学习的文章中介绍了MDP,动态规划的方法对MDP问题的V函数进行评估和求最优策略。然而现实问题中,往往很多时候环境是未知的。那么这篇文章就介绍一下在未知环境下用Model Free的方法预测MDP。

前面关于强化学习的文章中介绍了MDP,动态规划的方法对MDP问题的V函数进行评估和求最优策略。然而现实问题中,往往很多时候环境是未知的。那么这篇文章就介绍一下在未知环境下用Model Free的方法预测MDP。

1. Monte-Carlo (蒙特卡洛)策略估计

Monte-Carlo(MC)方法广泛应用于数学、物理和金融等领域。比如在物理学中研究离子运动轨迹,我们就可以采用Monte-Carlo方法进行多次随机抽样,观测离子运动规律。

同样的,在解决强化学习问题的时候,机器人面对未知环境的时候,它也可以用MC的方法评估当前策略。如果想知道当前策略π,当前状态s下的价值函数V函数,在当前策略π下直接行动,待到达终点之后(完成一个episode),再复盘整个过程所获得的奖励,评估出s状态下的V函数。然后再不停迭代,最终获得该策略π下s状态下的真实V函数Vπ(s)。

当然Monte-Carlo策略估计方法也分为首次访问MC方法和每次访问MC方法,两者唯一的不同只有一处,下面算法过程中在括号中的就是每次访问MC方法。

算法过程如下:

  1. 在一个episode中,当s状态第一次被访问到(或者每次被访问到)的时候,计数器N(S)=N(S)+1。
  2. 总共得到的奖励S(s) = S(s) + Gt
  3. 价值V函数的数值V(s)= S(s) /N(s)
  4. 当迭代无数次之后,根据大数定理,V(s)就应该趋近真实的V函数Vπ(s)

2. Monte-Carlo(MC)迭代更新

在介绍Monte-Carlo迭代更新之前必须先引入一个迭代求平均的例子。比如你想算一箱苹果中苹果的平均重量,简单的方法是随机抽取几个苹果,将这几个苹果的重量相加再除以个数就估算出了苹果的平均重量。

如果想让这个估计更加精确,你又从箱子里面拿出一个苹果,这时候还需要将所有拿出来的苹果重量相加吗?当然不需要。你只需要将这个苹果的重量减去之前求得的平均数,再除以总共拿出苹果的数量得到误差。最后原平均数加上这个误差就是新的平均数了。证明过程如下。


img_5bdd31dd3899333ef564f2da9defb4ff.png

有了这个迭代求平均值的方法我们就可以改进MC算法,不用记住总共得到的奖励S(s)了

对于每个St,和奖励Gt


img_ae427e5bc9d92fa88676737b484b6617.png

其实我们甚至都不用记住N(St), 因为在非静态的(Non-Stationary)的问题中,如果N越大,就意味着误差越小,当前行动对V函数的纠正就越小。所以在实际过程中我们往往用一个固定的学习速率α来代替1/N(St):

img_6bdcb4f18f40111246645559adc7f96b.png

这个公式是不是跟之前的梯度下降(Gradient Desent)方法非常类似了。

3. Temporal-Defference (TD)算法

MC有一个很大的缺点,就是要更新V(s)一定要走完整个epsoide。TD方法不需要走完整个epsoide,走有限几步就可以更新,极端情况下TD(0)甚至可以走一步就更新。

回顾MC算法:
img_7b9897181b6cce697ef755dc0b620665.png

其中


img_02535887ddf446b44a5a1e19df1988dc.png
TD(0)算法:
img_6a3055de9ac2cce5407056ac9a21c235.png

如英文描述红色文字部分叫做TD-target。与MC类似括号里面的误差叫做TD error

4. MC vs TD

MC有高Variance 零Bias:

  • 收敛性好
  • 对初始值不敏感
  • 算法容易理解和使用

MC 对解决非马可夫环境(或者部分马可夫环境)效果好。

TD有低的Variance,一些Bias

  • 比MC效率高
  • TD(0)能收敛于Vπ(s)
  • 对初始值敏感

TD能探索出马可夫模型,对马可夫环境效果好。

5. DP,MC,TD比较

之前文章中介绍的动态规划(DP),与MC,TD相比较可以发现


img_ba46321447587f20ca424f075bb52bfb.png

从抽样的数量和反馈的深度可以这样理解DP,MC和TD


img_bdaf7f3fd1582c8fdb98defb94a1e03f.png

实际上TD不仅仅只有只走一步的TD(0), 可以是n TD(n)。当n等于无穷大的时候TD=MC


img_68512851f13a4f49d3499a9100dfb4f0.png
目录
相关文章
|
2月前
|
机器学习/深度学习 人工智能 安全
ai集成环境
【4月更文挑战第27天】ai集成环境
43 1
|
10天前
|
人工智能 Serverless 异构计算
[AI Cog] 想要运营AI业务,但没有GPU?环境搞不定?使用Cog帮您轻松将业务部署上云
[AI Cog] 想要运营AI业务,但没有GPU?环境搞不定?使用Cog帮您轻松将业务部署上云
|
10天前
|
人工智能 运维 Serverless
报名参课丨解锁 Serverless+AI 新模式,拥有专属 AIGC 环境
Serverless 和 AI 大模型都是当前云上最火的技术方向,本次活动期望通过 Severless+AI 技术的强强联合,期待为客户提供基于 Serverless 技术实现 AI 推理部署平台的技术思路,一键解锁 AI 潜力,无需繁琐运维,降低 GPU 的使用成本、减少企业或个人创业的试错成本,让人人都可以拥有自己“专属”的 AIGC 环境成为可能。
|
1月前
|
存储 人工智能 安全
大环境下AI发展迅速,如何保证AI的安全问题?
保障AI安全的关键措施包括:数据隐私保护(加密、访问控制、脱敏、共享协议)、模型安全(验证、鲁棒性、监测、更新)、用户信息保护(透明收集、匿名化、保密协议)、网络安全(实时监测、防护措施)和合规伦理(遵守法规、融入设计)。此外,安全培训和意识提升也是重要一环。多角度策略确保AI技术的安全、健康和可持续发展。
42 0
|
2月前
|
机器学习/深度学习 固态存储 Python
fast.ai 深度学习笔记(四)(2)
fast.ai 深度学习笔记(四)
64 3
fast.ai 深度学习笔记(四)(2)
|
2月前
|
API 机器学习/深度学习 Python
fast.ai 深度学习笔记(四)(1)
fast.ai 深度学习笔记(四)
73 3
fast.ai 深度学习笔记(四)(1)
|
2月前
|
机器学习/深度学习 算法框架/工具 PyTorch
fast.ai 深度学习笔记(五)(4)
fast.ai 深度学习笔记(五)
92 3
fast.ai 深度学习笔记(五)(4)
|
2月前
|
机器学习/深度学习 人工智能 自动驾驶
【AI 初识】强化学习是如何工作
【5月更文挑战第3天】【AI 初识】强化学习是如何工作
|
2月前
|
机器学习/深度学习 人工智能 安全
构建未来:AI驱动的自适应网络安全防御系统云端守卫:云计算环境下的网络安全与信息保护策略
【5月更文挑战第27天】 在数字化时代,网络安全威胁持续进化,传统的安全措施逐渐显得力不从心。本文探讨了人工智能(AI)技术如何革新现代网络安全防御系统,提出一个基于AI的自适应网络安全模型。该模型结合实时数据分析、模式识别和自我学习机制,能够动态调整防御策略以应对未知攻击。文章不仅分析了此模型的核心组件,还讨论了实施过程中的挑战与潜在效益。通过引入AI,我们展望一个更加智能且具有弹性的网络安全环境,旨在为未来的网络防护提供一种创新思路。
|
2月前
|
机器学习/深度学习 人工智能 运维
【AI 初识】监督学习、无监督学习和强化学习定义
【5月更文挑战第2天】【AI 初识】监督学习、无监督学习和强化学习定义

热门文章

最新文章