OpenAI发布新强化学习算法:近端策略优化

允中 编译自 blog.openai.com 量子位 出品 | 公众号 QbitAI

OpenAI今天发布一类新的强化学习算法:近端策略优化(Proximal Policy Optimization,PPO)。因为易于使用和表现良好,PPO已经成为OpenAI默认的强化学习算法。

视频内容

PPO让我们在根据挑战性的环境中训练AI策略,例如上面所示的Roboschool训练场中,智能体(agent)的任务是追逐粉红色的球体,并在期间学习走路、跑步、转向以及被击倒时如何站起来。

代码在此:

https://github.com/openai/baselines

Paper在此:

https://openai-public.s3-us-west-2.amazonaws.com/blog/2017-07/ppo/ppo-arxiv.pdf

最近在使用深度神经网络控制视频游戏等领域取得的突破中,策略梯度方法扮演了基础的角色。但策略梯度方法想要获得良好的结果非常困难,因为它对步长的选择比较敏感——太小。而且过程慢得让人绝望。样本效率通常也不好。

通过监督学习,我们可以轻松实现成本函数,运行梯度下降,而且很有信心能通过相对较小的超参数调优获得出色的结果。强化算法的成功路径并不明显,算法里有很多难以调试的部分。PPO则在样本复杂性和易于调优之间取得平衡,试图在每一步最小化成本函数计算更新时,确保与先前策略的偏差相对较小。

我们详细说明了使用自适应KL惩罚来控制每次迭代策略变化的PPO变体。新的变体使用其他算法中通常没有的新目标函数:

该目标实现了一种与随机梯度下降兼容的信赖域修正方法,并通过消除KL损失来简化算法,以及减小适应性修正的需求。在测试中,这一算法在连续控制任务上显示出最佳性能,几乎与ACER在Atari上的性能相匹配,而且实现起来更为简单。

OpenAI还使用PPO来教导复杂的模拟机器人。

视频内容

例如波士顿动力的Atlas。这个模型具有30个不同的关节,普通的双足机器人只有17个左右。研究人员利用PPO训练模拟机器人,在越过障碍物时表现出跑酷的感觉。(不过在这个演示视频中,没有感觉出来……)

基线:PPO和TRPO

这一次放出的基线版本包括PPO和TRPO的可扩展并行实现,它们都是用MPI进行数据传递。两者都是用Python3和TensorFlow。

OpenAI基线是一套强化学习算法的高质量实现。地址在:https://github.com/openai/baselines

可以直接输入下面这个命令安装:

pip install baselines

原文发布于微信公众号 - 量子位(QbitAI)

原文发表时间:2017-07-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯大讲堂的专栏

Mariana DNN 多 GPU 数据并行框架

本文是腾讯深度学习系列文章的第二篇,聚焦于腾讯深度学习平台Mariana中深度神经网络DNN的多GPU数据并行框架。 深度神经网络(Deep Neural Ne...

2355
来自专栏顶级程序员

人工智能“鉴黄师”

最近,雅虎利用分类神经网络搭建了一套可以辨别Not Suitable for Work(上班不宜,以下简称NSFW)色情图片的Caffe模型,并将源码搬上了gi...

2989
来自专栏量子位

如何用3D-CNN确认说话人身份?这里有Code+Paper

安妮 编译自 Github 量子位出品 | 公众号 QbitAI 说话人确认(Speaker Verification)是一种以语言特性确认说话人身份的技术。 ...

3524
来自专栏AI科技大本营的专栏

机器学习不神秘!手把手教你用R语言打造文本分类器

简单安装几个R软件包,你就直接在自己电脑上打造出一个文本分类器,用进行机器来评估人类写作。 本文是一篇极简的上手教程,它想用清晰明了的步骤告诉读者,机器学习不...

36516
来自专栏新智元

DeepMind 提出分层强化学习新模型 FuN,超越 LSTM

【新智元导读】在用强化学习玩游戏的路上越走越远的 DeepMind,今天发表在 arxiv上的最新论文《分层强化学习的 FeUdal 网络》引起热议。简称 Fu...

46312
来自专栏AI研习社

AI 玩微信跳一跳的正确姿势——跳一跳 Auto-Jump 算法详解

最近,微信小游戏跳一跳可以说是火遍了全国,从小孩子到大孩子仿佛每一个人都在刷跳一跳,作为无(zhi)所(hui)不(ban)能(zhuan)的 AI 程序员,我...

3898
来自专栏深度学习入门与实践

【深度学习系列】用PaddlePaddle进行人脸识别

上个案例中我们讲了如何用PaddlePaddle进行车牌识别的方法,这次的案例中会讲到如何用PaddlePaddl进行人脸识别,在图像识别领域,人脸识别也属于...

4038
来自专栏机器之心

贾扬清撰文详解Caffe2:从强大的新能力到入门上手教程

选自 Nvidia Blog 作者:Aaron Markham、贾扬清 机器之心编译 昨天,Facebook 推出了 Caffe2,一个兼具表现力、速度和模块性...

2773
来自专栏AI研习社

问答 | 迁移学习有哪些入门建议?

1203
来自专栏机器之心

教程 | AI玩微信跳一跳的正确姿势:跳一跳Auto-Jump算法详解

39311

扫码关注云+社区