结合深度学习与强化学习,Google 训练机器手臂的长期推理能力
▼
机器人如何学到在多样且复杂的真实世界物体和环境中广泛使用的技能?如果机器人设计用来在可控环境执行重复工作,那么这工作相对来说应更简单,如设计在管线组装产品的机器人。但要是想设计成会观察周围环境,根据环境决定最佳行动,同时还能回应不可预知环境的机器人,那难度就等比级数的增长。
目前,有两个有力的工具能帮助机器人从试验中学习技能,一是深度学习,一是强化学习。深度学习非常适合解决非架构化的真实世界场景,而强化学习能达成较长期的推理(longer-term reasoning),同时能在一系列决策时做出更好的决策。将这两个工具结合,就可能让机器人从自身经验不断学习,使机器人透过资料,而不是人工手动定义来掌握运动感知技能。
为机器人设计强化学习演算法主要有几个挑战:首先真实世界物体通常有多样视觉和物理特征,接触力(触觉)的细微差异可能难以预测物体运动。同时机械臂可能会遮住视线导致难以透过视觉辨识预测物体运动。此外,机器人感测器本身充满声音杂讯,这也增加了演算法的复杂性。所有这些因素结合,让设计学习通用解决方案的演算法变得异常困难,除非训练资料够丰富,有够多不同种类的资料,但这使构建资料库的时间成本变得很高。
这些难点激励着研究者探索能重复使用以往经验的学习演算法,比如之前 Google 设计的抓取学习演算法,就能从大型资料库获益。但该工作有个问题,就是机器无法推断行动的长期后果,而长期推理对学习如何抓取物体非常重要。比如,如果多物体聚在一起,先将一个分离出来(称作“单一化”),在抓取时会更容易,但“单一化”步骤无法直接导致抓取成功,而是有较长期的成功率提升。
▲“单一化”的例子。
为了提高效率,使用离线策略强化学习(off-policy reinforcement learning)是必须的,即能从之前几小时、几天或几周的资料学习。为了设计这种从之前互动获得大量不同经验的离线策略强化学习演算法,Google 研究人员将大规模分散式最佳化与一个新型拟合深度Q学习(new fitted deepQ-learningalgorithm)演算法结合,名为 QT-Opt 。该论文目前可在arXiv检视。
QT-Opt是一种分散式 Q 学习演算法,支援连续行动空间,非常适合机器人问题。为了使用 QT-Opt,研究人员首先使用之前收集的资料完全离线训练一个模型。这个过程并不需要执行实际的机器人,这点使该演算法更容易分散式训练。之后,将该模型部署到真正机器人进行 finetune,这个阶段使用全新资料训练。执行 QT-Opt 演算法时,同时也积累更多离线资料,使模型训练得更好,也能得到更好的资料,这样就形成正回馈回圈。
为了将此方法应用到机器人抓取工作,Google 研究人员使用7 个真实的机器人,在 4 个月里,执行了超过 800 个机器人小时。为了启动资料收集过程,研究人员开始时手动设计一个抓取策略,大概有 15%~30% 机率能成功完成抓取工作。当演算法学到的模型效能比手动设计的策略更好时,就将机器人的抓取策略换成学到的模型。该策略使用相机拍摄影像,之后传回机械手臂和抓取器应如何运动的资料。整个离线训练资料含超过 1 千种不同物体的抓取资料。
▲一些用来训练抓取的物体。
过去的研究表明,跨机器人的经验分享能加速学习过程。研究人员将训练和资料收集的过程延伸到十块GPU、七个机器人和许多 CPU,最终收集并处理了一个超过 58 万次抓取尝试的大型资料库。最后,研究人员成功训练了一个能在真实机器人执行的抓取策略,能泛用化到不同种类的物体抓取,即使这些物体没有在训练时遇到。
▲七个正在采集资料的机器人。
从定量角度分析,QT-Opt 方法在训练集没有遇过的物体700 次抓取尝试中,有 96% 成功率。与之前基于监督学习的抓取方法(成功率78%)相比,该方法将错误率降低了 5 倍以上。
值得注意的是,该抓取策略具标准机器人抓取系统不常见的各种封闭反应行为:
- 面对一组互锁无法一起拾取的物体时,策略会在拾取之前将其中一块与其他块分开。
- 当抓住互相缠绕的杂乱物体时,策略会先探测不同的物体,直到手指牢牢握住其中一个,然后才抬起手臂。
- 机器人抓到一个物体后,如果人故意将物体拍打开来以扰乱机器人(训练时没有这种场景),它会自动重新定位夹具,并进行另一次尝试。
最重要的是,这些行为都不是手动设计的,都是透过 QT-Opt 自监督训练而自动学习到的,因为这些行为能从长期角度提高模型抓取的成功率。
此外,研究人员还发现 QT-Opt 使用较少资料就达到更高成功率,尽管可能需要更长时间才能收敛。这点对机器人来说尤其令人兴奋,因为训练的瓶颈通常是如何收集到众多真实的机器人资料,而不是训练时间。将该方法与其他提高资料效率的技术相结合,可能会对机器人技术开辟一些新的有趣方向。Google 研究人员也正将 QT-Opt 与最近学习如何自我校准(self-calibra)工作结合,想进一步提高模型的泛用化能力。
总体而言,QT-Opt 演算法是一种通用的强化学习方法,可为真实世界的机器人提供良好的效能。除了奖励函数定义,QT-Opt 任何内容都没有针对机器人抓取做任何设计。这是迈向更通用的机器人学习演算法的重要一步,也更期待演算法能应用到其他任何机器人工作。
-
Scalable Deep Reinforcement Learning for Robotic Manipulation
(本文由 雷锋网 授权转载;首图来源:shutterstock)
▼
特别声明 本页内容仅供参考,版权终归原著者所有,若有侵权,请联系我们删除。