Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
models
提交
3b15dc85
M
models
项目概览
PaddlePaddle
/
models
大约 1 年 前同步成功
通知
222
Star
6828
Fork
2962
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
602
列表
看板
标记
里程碑
合并请求
255
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
models
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
602
Issue
602
列表
看板
标记
里程碑
合并请求
255
合并请求
255
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
3b15dc85
编写于
6月 29, 2018
作者:
S
Shan Yi
提交者:
GitHub
6月 29, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update README_cn.md
上级
8222284e
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
17 addition
and
5 deletion
+17
-5
fluid/DeepQNetwork/README_cn.md
fluid/DeepQNetwork/README_cn.md
+17
-5
未找到文件。
fluid/DeepQNetwork/README_cn.md
浏览文件 @
3b15dc85
## 基于PaddlePaddle的Fluid版本复现DQN, DoubleDQN, DuelingDQN三个模型
## 基于PaddlePaddle的Fluid版本复现DQN, DoubleDQN, DuelingDQN三个模型
基于PaddlePaddle下一代API Fluid复现了深度强化学习领域的DQN模型,在经典的Atari 游戏上复现了论文同等水平的指标,模型接收游戏的图像作为输入,采用端到端的模型直接预测下一步要执行的控制信号,本仓库一共包含以下3类模型。
基于PaddlePaddle下一代API Fluid复现了深度强化学习领域的DQN模型,在经典的Atari 游戏上复现了论文同等水平的指标,模型接收游戏的图像作为输入,采用端到端的模型直接预测下一步要执行的控制信号,本仓库一共包含以下3类模型:
+
DQN模型:
+
DQN模型:
[
Human-level Control Through Deep Reinforcement Learning
](
http://www.nature.com/nature/journal/v518/n7540/full/nature14236.html
)
[
Human-level Control Through Deep Reinforcement Learning
](
http://www.nature.com/nature/journal/v518/n7540/full/nature14236.html
)
+
DoubleDQN模型:
+
DoubleDQN模型:
...
@@ -8,13 +9,20 @@
...
@@ -8,13 +9,20 @@
[
Dueling Network Architectures for Deep Reinforcement Learning
](
http://proceedings.mlr.press/v48/wangf16.html
)
[
Dueling Network Architectures for Deep Reinforcement Learning
](
http://proceedings.mlr.press/v48/wangf16.html
)
## 模型效果:Atari游戏表现
## 模型效果:Atari游戏表现
### [Atari游戏介绍](https://gym.openai.com/envs/#atari)
### Atari游戏介绍
请点击
[
这里
](
https://gym.openai.com/envs/#atari
)
了解Atari游戏。
### Pong游戏训练结果
### Pong游戏训练结果
三个模型在训练过程中随着训练步数的变化,能得到的平均游戏奖励如下图所示(大概3小时每1百万步):
三个模型在训练过程中随着训练步数的变化,能得到的平均游戏奖励如下图所示(大概3小时每1百万步):
![
DQN result
](
assets/dqn.png
)
<div
align=
"center"
>
<img
src=
"assets/dqn.png"
width=
"600"
height=
"300"
alt=
"DQN result"
></img>
</div>
## 使用教程
## 使用教程
### 依赖:
### 依赖:
+
python2.7
+
python2.7
+
gym
+
gym
...
@@ -24,6 +32,7 @@
...
@@ -24,6 +32,7 @@
+
ale_python_interface
+
ale_python_interface
### 下载依赖:
### 下载依赖:
+
安装PaddlePaddle:
+
安装PaddlePaddle:
建议通过PaddlePaddle源码进行编译安装
建议通过PaddlePaddle源码进行编译安装
+
下载其它依赖:
+
下载其它依赖:
...
@@ -31,9 +40,10 @@
...
@@ -31,9 +40,10 @@
pip install -r requirement.txt
pip install -r requirement.txt
pip install gym[atari]
pip install gym[atari]
```
```
安装ale_python_interface可以参考
:https://github.com/mgbellemare/Arcade-Learning-Environment
安装ale_python_interface可以参考
[
这里
](
https://github.com/mgbellemare/Arcade-Learning-Environment
)
### 训练模型:
### 训练模型:
```
```
# 使用GPU训练Pong游戏(默认使用DQN模型)
# 使用GPU训练Pong游戏(默认使用DQN模型)
python train.py --rom ./rom_files/pong.bin --use_cuda
python train.py --rom ./rom_files/pong.bin --use_cuda
...
@@ -45,9 +55,10 @@ python train.py --rom ./rom_files/pong.bin --use_cuda --alg DoubleDQN
...
@@ -45,9 +55,10 @@ python train.py --rom ./rom_files/pong.bin --use_cuda --alg DoubleDQN
python train.py --rom ./rom_files/pong.bin --use_cuda --alg DuelingDQN
python train.py --rom ./rom_files/pong.bin --use_cuda --alg DuelingDQN
```
```
训练更多游戏,可以
下载游戏rom从
[
这里
](
https://github.com/openai/atari-py/tree/master/atari_py/atari_roms
)
训练更多游戏,可以
从
[
这里
](
https://github.com/openai/atari-py/tree/master/atari_py/atari_roms
)
下载游戏rom
### 测试模型:
### 测试模型:
```
```
# Play the game with saved model and calculate the average rewards
# Play the game with saved model and calculate the average rewards
# 使用训练过程中保存的最好模型玩游戏,以及计算平均奖励(rewards)
# 使用训练过程中保存的最好模型玩游戏,以及计算平均奖励(rewards)
...
@@ -56,4 +67,5 @@ python play.py --rom ./rom_files/pong.bin --use_cuda --model_path ./saved_model/
...
@@ -56,4 +67,5 @@ python play.py --rom ./rom_files/pong.bin --use_cuda --model_path ./saved_model/
# 以可视化的形式来玩游戏
# 以可视化的形式来玩游戏
python play.py --rom ./rom_files/pong.bin --use_cuda --model_path ./saved_model/DQN-pong --viz 0.01
python play.py --rom ./rom_files/pong.bin --use_cuda --model_path ./saved_model/DQN-pong --viz 0.01
```
```
[
这里
](
https://pan.baidu.com/s/1gIsbNw5V7tMeb74ojx-TMA
)
是Pong和Breakout游戏训练好的模型,可以直接用来测试。
[
这里
](
https://pan.baidu.com/s/1gIsbNw5V7tMeb74ojx-TMA
)
是Pong和Breakout游戏训练好的模型,可以直接用来测试。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录