亚博_主页

梯度下降过时了, OpenAyabo. sportsI. 拿出一种新的优化算法 PPO.

2018-10-08 19:20:08  by亚博国际

梯度下降过时了,  OpenAyabo.  sportsI. 拿出一种新的优化算法 PPO.

亚博体育特 AI 科技评论把这篇介绍 PPO 算法的博文编译如下.

图中就是一个 OpenAI 利用 PPO 训练的机器人.它要学习走、跑、转弯来尝试接近球型的、随机移动的目标;环境中还有一个会撞机器人的小球给它增大难度,所以它还要学会受到撞击以后恢复平衡,甚至被撞倒以后重新站起来.

现有算法

近期的梯度的一类方法让深度神经网络在控制任务中取得了明显进步,电脑游戏、三维运动、围棋都是很好的例子.但是用梯度的方法取得好的结果也有一些难度,因为这类方法对迭代步骤数非常敏感:如果选得太小,训练过程就会慢得令人绝望;如果选得太大,反馈信号就会淹没在噪声中,甚至有可能让模型表现雪崩式地下降.这类方法的采样效率也经常很低,学习简单的任务就需要百万级至十亿级的总迭代次数.

为了解决方法中的这些问题,研究人员们已经找到了 TRPO (Trust Region Policy Optimization ,信任区域优化)和 ACER (Sample Efficient Actor-Critic with Experience Replay ,能高效采样的带有经验回放的表演者-评论者算法)这样的方法,对更新的大小做出限制或者另外的优化.达到了这样的效果,这些方法也就在别的方面付出了代价:ACER 比 PPO 复杂得多,需要额外的代码用于外的纠正以及一个回放缓冲区,在 Atari 测试中的具体表现却只比 PPO 勉强好一点点;TRPO 虽然在连续控制任务中很有用,但是对函数和价值函数或者辅助损失之间有共享参数的算法较难兼容,比如 Atari 和其它一些视觉输入占据主要部分的任务就是这样.

PPO

在监督学习中,实现损失函数、在上面做梯度下降都很容易,而且基本上不费什么功夫调节超参数就肯定能够得到很好的结果.但是在强化学习中想要获得好结果就没有这么简单了,算法中有许多变化的部分导致难以 debug ,而且需要花很大的精力在调试上才能得到好结果.PPO 则在实现的难易程度、采样复杂度、调试所需精力之间取得了新的平衡,它在每一步迭代中都会尝试计算新的,这样可以让损失函数最小化,同时还能保证与上一步迭代的间的偏差相对较小.

之前 OpenAI 就详细介绍过 PPO 的一个变种 (NIPS 2016 论文视频:通过优化进行深度强化学习)