Hudson River Trading:如何正确看待Machine Learning学术论文
由small_q创建,最终由small_q 被浏览 68 用户
摘要
在HRT,做好工作意味着不断学习和提高。作为不断学习的一部分,HRT的研究员也持续关注学术研究——无论是为了跟上他们研究领域的最新发展,还是为了学习对我们工作有用的进展。我们经常被问到,阅读和应用最新成果是否是我们工作的重要组成部分。在实践中,我们很少能读到一篇论文就立即将其应用于我们的问题。
近年来,这些领域的一些大型论文都非常强调实证结果,而不是理论结果,我们在HRT中试图解决的具体问题也永远无法得到相关论文中对应的实证结果——神经网络区分犬种的能力每增加0.1%的精度提高,但无法转化为对股票价格的预测。因此,我们倾向于用与学术会议审稿人略有不同的维度来评估论文——即简单性、可重复性和概括性。
简单性
我们的研究人员不断推动前沿技术以发现在高度竞争的市场中理解和交易的新方法。虽然需要很大程度的技术和数学复杂性,但我们构建的系统也需要健壮和可维护。我们实现这一目标的一个原则是总是使用最简单的方法来达到预期的结果。
例如,如果线性模型和随机森林模型一样好,我们更喜欢线性模型。将这一原则与学术机器学习研究中的动机进行对比是很有趣的。
一篇由实证驱动的论文,如果它证明了新颖性,那么它更有可能被发表——但通常当其目的就是为了新颖性而进行优化时,结果可能会很复杂,这可能会使它在实际的应用环境中不那么有吸引力。
这个问题在学术界并不陌生,一些研究人员已经证明,如果一个人在许多标准测试任务中着眼于最简单的可能解决方案,他可以找到非常简单和健壮的结果。Mania、Guy和Recht的论文“Simple random search provides a competitive approach to reinforcement learning”有力地证明了这一点。本文涉及控制问题,如教学机器人行走,并侧重在寻找一种“model-free”的控制器——机器人的力学不需要显式地建模,而且控制器必须学会,只基于一个“奖励”,就能够从观察并做出相应有奖励的反应。近年来,许多研究人员使用无模型强化学习来解决各种问题,包括在许多游戏中实现超人的表现。由于种种原因,这些技术很难在实践中应用,作者指出了两个原因:学习好的控制器所需的数据量,以及选择和调整学习算法本身的难度。此外,作者观察到这些困难相互放大:为了努力减少所需的数据量,算法变得越来越复杂,越来越不健壮。
为了消除噪声,作者“旨在确定最简单的无模型[强化学习]方法,可以解决标准的基准问题。” 他们通过两种方式做到这一点。 首先,他们证明了一个简单的线性映射可以在这些控制基准上达到与任何用更复杂和昂贵的神经网络获得的结果一样高的性能。其次,他们通过“随机搜索”来学习这种线性映射。在这种情况下,随机搜索意味着在当前控制器上做出许多细微的变化,记录每个变化的表现,然后更新控制器,使其更像表现更好的变化,而不像表现更差的变化。该算法可以非常简洁地完整描述,并且由于每个变量都可以独立测试,该算法具有固有的并行性和有效性。
作者并没有声称这种非常简单的方法足以解决所有的控制问题, 但这些结果表明,如果我们希望将结果推广到其他场景,学术研究中常用的基准可能不具备我们希望它们具有的所有属性(请参阅下面的“一般性”了解更多关于这个主题的信息)。本文还表明,当可能有更简单的方法可用时,我们在使用复杂的尖端方法之前应该有所犹豫。
可复制性
“简单”方法的一个好处是它们通常更容易复现。这既是“我可以在同一个问题上得到与本文相同的结果”的复现,也是“我可以在我的问题上下文中实现这个方法”的复现。
如上Mania等人的论文在引言中所述:“……研究表明,许多RL方法对超参数、随机种子、甚至同一算法的不同实现的变化都不具有鲁棒性……如果没有显著的简化和鲁棒性,具有这种脆弱性的算法无法集成到关键任务控制系统中。”如果一个人甚至不能确定一篇论文在一个几乎相同的问题上是可重复的,为什么我们的研究人员要花时间把这个结果应用到一个完全不同的问题上呢?
我们在自己的日常工作中经常会遇到这个问题:对我们来说,一个常见的问题是试图了解我们的交易在未来的变化会有多大的表现。我们可以尝试通过测试它在过去的表现来估计这一点。这样做可能会出错的事情有很多,但即使不考虑这些,我们仍然有统计偏差的问题。我们不仅很难避免系统性偏差,而且很容易在解决低信噪比领域的小差异时欺骗自己。这有点类似于提出强化学习算法改进的学者所面临的问题。RL方法是随机的,每次运行的性能差异很大,而且基准测试任务本身也存在随机性的问题。与此同时,运行这些RL实验的计算成本非常高,特别是对于计算资源有限的学术机构来说,而且没有标准化的方法来报告指标(这与我们内部运行“回溯测试”的标准化方法不同)。
Agarwal等人在“Deep Reinforcement Learning at the Edge of the Statistical Precipice” 一文中对该问题进行了量化。这篇论文的重点并不是关于机械地再现一个结果的困难,而是关于这些结果是如何传达的。
作者证明,经常报告的对各种基准任务表现的点估计是非常误导的,因为这些指标的不确定性水平是实质性的。此外,模型运行的细微差异可以完全颠倒结果。例如,他们发现在基于雅达利游戏的基准测试中,一种算法报告的结果很可能比另一种算法更好,这正是由于这种可变性。在其他情况下,如果将一篇论文的评估方案应用到另一篇论文中,任何表现上的差距都会消失,甚至产生相反的结论。不幸的是,对于这个问题没有简单的解决方案:研究人员应该努力使他们的结果中的不确定性尽可能清晰,并使用标准的度量标准,而审稿人应该对他们负责。对于实践者来说,我们需要对任何新的结果都有很大程度的怀疑,并且更喜欢那些在任何可能的地方都能强有力地证明其可重复性的方法。
普适性
正如我们前面提到的,大多数AI研究是经验驱动的,但经验结果可能是在与我们自己的问题太不同而不能立即适用于我们的问题上获得的。例如,从第一原则来看,从市场数据预测未来股票价格作为一个回归问题并不等同于图像分类或机器翻译,因此,主要在这些任务上评估的新型模型在我们的问题上表现会如预期那样良好吗?
考虑设计一个深度学习模型优化器的问题。有越来越多的优化器是为深度学习问题设计的,但实际上选择优化器本身就是一个令人担忧的问题。考虑到理论对它们的设计提供了很少的指导,人们可能会认为最近发布的优化器比旧的更好,至少在经验上是这样。然而,我们有理由怀疑:优化器有许多超参数,只要比参考/基准优化器更仔细地拟合这些超参数,就可能无意中提出一种看起来更好的设计。此外,还有一种发表偏差在起作用:发表的论文只是说明该优化器在论文设定的环境中有更好的表现,并不适用于其他“样本”空间的深度学习的问题。
Schmidt, Schneider,Hennig的一篇论文“Descending through a Crowded Valley – Benchmarking Deep Learning Optimizers”阐述了这个问题。他们收集了一组15个流行的(经常被引用的)优化器,并对问题、优化器、优化调优和学习率计划的交叉乘积进行彻底搜索。他们有两个特别有趣的结论,直接适用于我们。首先,2014年首次发布的Adam优化器(Kingma和Ba)仍然是深度学习问题的最佳首选优化器——它实现了我们所期望的“一般性”属性。
第二个教训是使用新优化器前要更谨慎:“与用不同的随机种子重新调整或重新运行的单一方法相比,不同的优化器表现出惊人的相似性能分布。”在实践中,考虑到我们有限的研究时间和一定程度上有限的计算时间,这意味着我们甚至不清楚测试新的优化器是否明智,除非所提出的优化器和它声称可以很好地解决的问题的交集有一些特别独特的东西。
总结
学术研究是我们改善策略的重要资源。阅读最新的学术研究给我们带来了启发,即使这些研究并不直接适用。我们必须认识到,学术研究的动机可能与从业人员的动机不一致。
因此,在考虑将这项研究应用于我们的问题时,我们必须保持健康的怀疑态度。但要想成为更好的研究人员和技术人员,就必须保持好奇心、参与感,并从他人的工作中汲取灵感。