编程开发 购物 网址 游戏 小说 歌词 地图 快照 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 开发 租车 短信 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
移动开发 架构设计 编程语言 互联网 开发经验 Web前端 开发总结
开发杂谈 系统运维 研发管理 数据库 云 计 算 Java开发
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
  编程开发知识库 -> 互联网 -> 【强化学习】QLearning -> 正文阅读
 

[互联网]【强化学习】QLearning[第1页]

强化学习之Q Learning
标签: ReinforcementLearning QLearning
代码:https://github.com/gutouyu/ReinforcementLearning/tree/master
1. 算法思想
Q指的是状态动作效益。智能体Agent,每个时刻都有一个状态State, 在该状态下,它可以采取一系列动作中的一个动作Action。Q就是指在状态State下采取动作Action所获得的收益。
我们的Agent就是根据这张表Q-Table来采取动作的。每采取一个动作Action,就会到达一个状态State,会得到一个奖励Reward(Reward可正可负)。
2. 更新公式

Agent的学习过程,或者说是训练过程就是Q-Table的更新过程,也就是上式。在S状态下采取动作A,效用值是Q(S,A), α是学习速率(learning rate),γ是折扣因子(discount factor)。根据公式可以看出,学习速率α越大,保留之前训练的效果就越少。折扣因子γ越大,
的作用就越大。
是指的什么那?Agent在对状态State进行更新的时候,会考虑到眼前的利益(R),和记忆中的利益(
)。记忆中的利益,就是指Agent记忆中,下一个状态的动作中效用的最大值。如果Agent在下一个状态的某个动作上吃过甜头,那么它就希望通过提早的得知这个消息,以便下回再进行动作选择的时候继续进入这个吃甜头的状态。也可以理解成,采取当前动作的奖励,不仅仅是R,还有下一个状态好坏的一个奖励。Agent当然希望选择进入一个最大效用值更大的状态,也就是一个更好的状态。由此可见,γ越大,
所起到的作用就越大,Agent就会越重视过往经验,越小,Agent就会越重视验签利益R。
3. 实现 训练

Initialize Q arbitrarily //随机初始化Q值
Repeat (for each episode): //每一次游戏,从小鸟出生到死亡是一个episode
    Initialize S //小鸟刚开始飞,S为初始位置的状态
    Repeat (for each step of episode):
        根据当前Q和位置S,使用一种策略,得到动作A //这个策略可以是ε-greedy等
        做了动作A,小鸟到达新的位置S',并获得奖励R //奖励可以是1,50或者-1000
        Q(S,A) ← (1-α)*Q(S,A) + α*[R + γ*maxQ(S',a)] //在Q中更新S
        S ← S'
    until S is terminal //即到小鸟死亡为止

根据当前Q和位置S,使用一种策略,得到动作A //这个策略可以是ε-greedy等。 解释下这句话,假设我们现在每次都选择效用值最大的动作Action,也就是贪心去动作。那么会怎么样那?我们会一直被限制在有限的状态里出不来!就跟现实是一样的,贪心的Action就相当于是完全依照过往经验去做出选择。这样只能达到过往的水平,但是如果还存在另外一种更好的方式,是无法达到的,也就是缺少了探索。可是如果一直探索,一直乱走随机的State,那么又会导致收敛速度过慢的问题。解决办法就是,一定的概率来进行探索(探索的意思就是随机的选择一个Action),这个概率一般很小,0.01就够了。
4. 效果
全部代码见github 代码

阅读全文
版权声明:Github: https://github.com/gutouyu 有用您拿走 举报
标签: 强化学习 / q-learning / 本文已收录于以下专栏: 机器学习

发表评论
HTML/XML objective-c Delphi Ruby PHP C# C++ JavaScript Visual Basic Python Java CSS SQL 其它
相关文章推荐
QLearning
Q-Learning .*; Step-By-Step Tutorial This tutorial introduces the concept of Q-learning th...
wjh1313677 2015-06-17 16:26 384
u010352603 +关注
原创 108 粉丝 喜欢 0 码云  
他的最新文章 更多文章
【强化学习】QLearning 【机器学习读书笔记】Logistic回归 【机器学习读书笔记】朴素贝叶斯分类 【机器学习读书笔记】决策树
编辑推荐 最新专栏 机器学习 LeetCode专栏 QLearning
在线课程

自然语言处理在“天猫精灵”的实践应用
讲师:姜飞俊

蚂蜂窝大数据平台架构及Druid引擎实践
讲师:汪木铃
目录
喜欢 取消喜欢 收藏 评论 分享
  互联网 最新文章
Stanford 英文词性标注(Part-of-speech)缩
基于窗口的实时统计
求解矩阵最短路径问题
SSL握手通信详解及linux下c/c++ SSL Socket
关于服务器上(Docker中)运行Java程序时区
python爬虫系列(六):强大的beautifulsou
[计算机网络笔记]第四部分——网络层 选路算
11.28 北京,念腾讯暑假,不思则惘吧!
web安全之
滑块验证码识别 java版本
上一篇文章      下一篇文章      查看所有文章
加:2017-09-28 16:13:45  更:2017-09-28 16:13:51 
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年6日历
2018-6-19 22:25:33
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程开发知识库