我们可以用已有的强化学习的算法来训练我们这两个翻译模型,比如策略梯度方法。策略梯度方法的基本思想非常简单:如果我们在执行某个动作之后,观测到了一个很大的回报,我们就通过调整策略(在当前策略函数的参数上加上它的梯度)来增加这个状态下执行这个动作的概率;相反,如果我们在执行某个动作之后,观测到了一个很小的回报,甚至是负的回报,那么我们就需要调整策略(在当前策略函数的参数上减去它的梯度),以降低在这个状态下执行这个动作的概率。 实测与展望 我们在一个英语-法语翻译的公共数据集上测试了对偶学习的有效性,并和当前最好的算法(NMT,基于深度神经网络算法)进行了对比。这个数据集的训练集有1200万个英法的双语句对,NMT用了所有的1200万个双语句对训练模型。我们的对偶算法只用了不到10%的双语句对初始化两个翻译模型f和g,再用没有标注的英法语句进行训练。如下图所示,我们的对偶学习算法只用10%的标注数据就达到了和NMT用上所有标注数据而取得的相似的甚至更好的翻译准确度,也就是说我们可以把数据标注的代价从2000万美元降到200万美元左右。这个结果说明了我们提出的对偶学习方法能够非常有效地利用未标注的数据。
对偶学习的基本思想是两个对偶的任务能形成一个闭环反馈系统,使我们得以从未标注的数据上获得反馈信息,进而利用该反馈信息提高对偶任务中的两个机器学习模型。该思想具有普适性,可以扩展到多个相关任务上面,前提是只要它们能形成一个闭环反馈系统。例如,从中文翻译到英文,然后从英文翻译到日文,再从日文翻译到中文。另外一个例子是从图片转化成文字,然后从文字转成语音,再从语音转化成图片。 对偶学习(dual learning)和已有的学习范式有很大的不同。首先,监督学习(supervised learning)只能从标注的数据进行学习,只涉及一个学习任务;而对偶学习涉及至少两个学习任务,可以从未标注的数据进行学习。其次,半监督学习(semi-supervised learning)尽管可以对未标注的样本生成伪标签,但无法知道这些伪标签的好坏,直播,而对偶学习通过对偶游戏生成的反馈(例如对偶翻译中x和x1的相似性)能知道中间过程产生的伪标签(y1)的好坏,因而可以更有效地利用未标注的数据。我们甚至可以说,对偶学习在某种程度上是把未标注的数据当作带标签的数据来使用。第三,对偶学习和多任务学习(multi-task learning)也不相同。尽管多任务学习也是同时学习多个任务共的模型,但这些任务必须共享相同的输入空间,而对偶学习对输入空间没有要求,只要这些任务能形成一个闭环系统即可。第四,对偶学习和迁移学习(transfer learning)也很不一样。迁移学习用一个或多个相关的任务来辅助主要任务的学习,而在对偶学习中,多个任务是相互帮助、相互提高,并没有主次之分。因此,对偶学习是一个全新的学习范式,我们预计其会对机器学习领域产生很大的影响,特别是考虑到以下两个点。 第一, 很多深度学习的研究人员认为人工智能和深度学习的下一个突破是从未标注的数据进行学习。由于未标注的数据没有标签信息,无监督学习主要聚焦在聚类、降维等问题,因此,如何从未标注的数据进行端到端的学习(把数据映射到标签,如分类、预测等任务)一直没有很好方法。我们提出的对偶学习提供了一个利用未标注数据进行端到端学习的有效方式。 第二, 近年来强化学习取得了很大的成功,吸引了众多的研究人员和工业界人员的关注。但是到目前为止,强化学习的成功主要是在各种游戏上,因为在游戏中规则定义得非常清楚,并且很容易通过玩大量的游戏获取回报信息(例如Atari游戏中每一步的得分,围棋中最后的输赢),从而改善游戏策略。然而在游戏以外的实际应用中并没有规范定义的规则,也很难获得回报信息(或者获取的代价很高),因而强化学习在复杂的实际应用中的成功还是比较有限。而对偶学习提供了一种为强化学习获取奖励信息的方式,并证实了强化学习在复杂应用(如翻译)中成功的可能。 更多详细信息可点击【阅读原文】参见我们NIPS 2016 论文。 (责任编辑:本港台直播) |