使用PPO算法让我的马里奥小兄弟狂奔丨【我的华为云体验之旅】
强化学习是我一直要写的一部分,一直没有狠下心去啃这块硬骨头,今天发现华为云有体验,特地来玩了一下,算法的具体介绍就不多说了,因为后面会写一个系列,今天主要说华为云的体验。
可以看到马里奥小兄弟玩得很开心,我看的也很开心,哈哈,虽然只是简单的调节参数,可以实现马里奥的强化学习,不得不说,很不错
2、步骤
1、体验地址
体验地址:https://developer.huaweicloud.com/develop/aigallery/home.html
从下面的图中可以看出能做很多事,我选择了我喜欢的强化学习,PPO算法玩超级马里奥。你可以选择一个自己喜欢的分类进行体验,白嫖还不香吗?
2、实验说明
我们利用PPO算法来玩“Super Mario Bros”(超级马里奥兄弟)。目前来看,对于绝大部分关卡,智能体都可以在1500个episode内学会过关,您可以在超参数栏输入您想要的游戏关卡和训练算法超参数。
整体流程:创建马里奥环境->构建PPO算法->训练->推理->可视化效果
里面有算法的一些数学解释,虽然我没看,过于学术性了,不好理解,等你有点道行了回头再看不迟,不适合入门!!!
因为只是为了体验,所以我直接找到能让我体验的入口
进入到下面的界面,然后点击-> run in ModelArts
进入到jupyter 的编辑界面
搜索找到 # 请在此处实现代码,放入你自己的参数,我这边的参数是:
opt={
"world": 1, # 可选大关:1,2,3,4,5,6,7,8
"stage": 1, # 可选小关:1,2,3,4
"action_type": "simple", # 动作类别:"simple","right_only", "complex"
'lr': 1e-4, # 建议学习率:1e-3,1e-4, 1e-5,7e-5
'gamma': 0.8, # 奖励折扣
'tau': 1.0, # GAE参数
'beta': 0.01, # 熵系数
'epsilon': 0.2, # PPO的Clip系数
'batch_size': 16, # 经验回放的batch_size
'max_episode':10, # 最大训练局数
'num_epochs': 10, # 每条经验回放次数
"num_local_steps": 512, # 每局的最大步数
"num_processes": 8, # 训练进程数,一般等于训练机核心数
"save_interval": 5, # 每{}局保存一次模型
"log_path": "./log", # 日志保存路径
"saved_path": "./model", # 训练模型保存路径
"pretrain_model": True, # 是否加载预训练模型,目前只提供1-1关卡的预训练模型,其他需要从零开始训练
"episode":5
}
如果你只是为了体验,可以直接使用上面的参数,或者简单修改。
3.运行代码
因为第一次使用jupyter,所以不怎么熟悉怎么使用,看了下教程,要选择cell,然后一个一个从头到尾运行就可以了
总结:
不用考虑计算资源
不用考虑环境的搭建,主要专注于代码的开发,专注于网络参数的优化
【我的华为云体验之旅】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/309059
- 点赞
- 收藏
- 关注作者
评论(0)