reinforcement learning学习

来源:互联网 发布:淘宝店铺流量怎么看 编辑:程序博客网 时间:2024/05/29 16:21

最近研究了下RL,挺有意思的,在这里把心得写下来。


学习方式:

1,学习 MIT出的这本书《Reinforcement Learning: An Introduction》

非常不错的一本书,非常是和RL初学者,所讲概念清晰易懂、深入浅出。

关键概念:

Reward, Action, Value Function,  Markov Decision Process, TD, Q-learning


2,阅读RL相关论文

* Playing Atari with deep reinforcement learning (这篇论文是下一篇的原型)

本文利用RL的方法来玩一种电子游戏:atari 2600(一种我们小时候玩的游戏,比如里面有一个是坦克大战, 可以操纵坦克转向并发射炮弹)

其训练出来的网络,在很多游戏中,能够比人玩得更出色!

关键点:

RL里其实最麻烦也是最关键的是Value Function的计算,这篇文章中作者通过function approximation来近似Value Function;

Value Function的输入是一帧图像,输出是不同Action下Reward的期望值;(这个Value Function用的是DNN网络)

采用memory-replay方式进行训练;(将近期的experience缓存起来,每次训练网络的时候,从这个缓存里sample一些样本进行训练)


* Human level control through deep reinforcement learning (发表在nature上的一篇paper,内容与上一篇基本相同)

思想同上一篇


这篇文章有对应的源码,基于torch实现。

程序运行起来会占用较大内存(实际测试达到9G左右内存);

程序比较耗计算资源,最好用GPU,全部训练完也要十几天,实际发现训练两天左右后(大概1千万次迭代),能够达到一个比较好的状态(目测是这样的);




0 0
原创粉丝点击