2017 年是机器学习领域最有成效、最具创意的一年。现在已经有很多博文以及官方报道总结了学界和业界的重大突破。本文略有不同,Alex Honchar在Medium发文,从研究者的角度分享机器学习明年发展的走向。
本文的预测基于 2012 年以来我关注的学术界和科技巨头实验室的研究思路演变。我所选择的领域,从我的观点来看,都多多少少尚处于发展的初级阶段,但是已经为研究做足了准备,且在 2018 年可能获得良好的结果,并在 2019-2020 年能投入实际应用。请阅读吧!
开放科研
来自其他学科的学术界人士正在自问:
人工智能研究的进展为何如此之快?
首先,在机器学习领域,大多数文章并不在期刊中发表,而是以即时 arXiv 预印本的形式提交到会议论文中。因此,人们无需在论文提交之后等待数月,就能很快地看到最新进展。第二,我们并不发表「顺势疗法」的文章:如果你想让文章被发表的文章,必须确保在文中展现最先进的技术,或是展示和现有最先进技术性能相近的新方法。而且,新方法必须在不同的指标中有所改进——其中包括速度、准确率、并行执行效率、数学证明的质量、处理不同大小数据集的能力等——即大大提高整体质量。最后,所有的主要文章都是开源实现的,因此别人可以使用你的代码进行二次检查甚至改进。
以「博客」为形式的出版新格式,是当代人工智能研究中最棒的事情之一。我们可以关注各种博客,比如:
DeepMind blog(https://deepmind.com/blog/)
OpenAI blog(https://blog.openai.com/)
Salesforce blog(https://www.salesforce.com/products/einstein/ai-research/)
IBM Research blog(http://www.research.ibm.com/ai/)
在其中,结果得以清晰展现,所以即使是不谙于研究的人也能看出这有多「酷」。就个人而言,我非常喜欢 Distill Pub(https://distill.pub/)。
Distill Pub 是一本真正的科学期刊,不过文章看起来更像博文,有着很棒的插图。当然,这需要大量的工作,但是现在只有这种研究形式才能吸引更多的人——基本上,你可以同时向以下三种人同时展现成果:
研究者,他们可以评估你的数学成果;
开发者,他们可以从可视化图像中了解你的研究意图;
投资者,他们可以了解你的研究,懂得它该如何应用。
我相信,在接下来的几年里,最佳研究就是这样发布的。如果科技巨头正在这么做——你不妨也试试!
无平行语料库的语言模型
让我们考虑一个简单的问题:
使用 50 本阿拉伯语书、16 本德语书、7 本乌克兰语书,学习阿拉伯语到乌克兰语的翻译,以及乌克兰语到德语的翻译。
你能做到吗?我打赌你不行。但是现在机器已经可以做到。2017 年,两篇突破性的文章发表了,它们是「Unsupervised Machine Translation Using Monolingual Corpora Only」和「Unsupervised Neural Machine Translation」。基本上,研究想法是训练一些通用人类语言表达空间,其中将相似的句子连接在一起。这个想法并不新鲜,但是现在,它却能在无显式德语-阿拉伯语句子对的情况下实现翻译:
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/d35e19636ddc6ca9db20eb567857aae9.jpeg)
多语种表征空间的图示
这些文章作者表示,翻译质量可以在少量监督下得到大幅上升。我预计这项研究将一直持续到明年夏天,并在 2018 年年底得到产品应用。而这种有监督却并非传统意义的监督学习的总体思路,可以并且必定会扩展到其他领域。
更好地理解视频
现在计算机视觉系统已在视觉方面超越人类。这要归功于不同深度、广度和连接密集度的网络:
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/83ffaae3b2df72832a4d27286cac540e.png)
来源: http://aiindex.org/2017-report.pdf
但是现在,我们只在静止图像上进行了性能基准测试。这很不错,但是我们习惯于用眼睛观察图像的序列、视频、或是真实世界的改变——所以,我们需要将这些计算机视觉的成果转化到视频领域,并使其能工作得和在静止图片中一样快。
老实说,在静止的图像中检测 1000 个物体简直是太无聊了。
在最近的 NIPS 2017 中,发表了关于下一帧预测的有趣结果(Temporal Coherency based Criteria for Predicting Video Frames using Deep Multi-stage Generative Adversarial Networks),我们可以看到这与用 RNN 网络进行文本生成的联系,其中预测下一个词的训练的神经网络可作为一种语言模型。此外,还发布了关于从视频中进行表征学习的结果(Unsupervised Learning of Disentangled Representations from Video)。以下是可供使用的数据集,以改善注意力模型、将光流概念添加到视频中、使用循环架构以使其在大型视频中更加高效:
Moments in Time(http://moments.csail.mit.edu/)
Youtube-8M(https://research.google.com/youtube8m/)
多任务/多模式学习
当我观察周围的世界时,不仅看到了移动的图像:我听到声音、感受到外界的温度、感知一些情绪。这说明我能从不同的来源「观察」这个世界,我想称之为「多模态」。而且,即使我只「观察」一种形式,比如听到别人的声音——我不会像语音识别系统那样只是将其翻译为文字,我还能了解说话人的性别、年龄、以及说话人的感情——我在同一时刻了解了很多不同的东西。我们希望机器也有相同的能力。
人类能够从一个图像中得到成百个结论,为什么机器做不到呢?
目前并没有很多关于解决多任务问题的数据集,通常在创建额外的任务之前,我们将这些数据集用作正则项。但是,最近牛津大学在多模态图像识别方面发布了很不错的数据集,向人们提出了挑战性的问题。我希望明年在语音应用方面会出现更多的数据集和结果(例如年龄、声音),详见「Visual Decathlon Challenge」(http://www.robots.ox.ac.uk/~vgg/decathlon/)。
人类能处理 10 余种模态,为什么机器不能呢?
这是一个令人震惊的环境,在其中你能教你的机器人在一个接近全真的房间内去看、听、感受所有事。参见「HoME: a Household Multimodal Environment」(https://home-platform.github.io/)
我们能同时做这些事情吗?
如果我们能构建令人震惊的的多模态-多任务模型,那么就可以根据完全不同的输入来解决不同的任务——Google Reasearch 就做到了。他们构建了一个可将图片和文本作为输入的体系结构,并用单个神经网络解决图像识别、图像分割、文本翻译、文本解析等问题。这不算是解决这类问题最聪明的方法,但这是一个很好的开始!
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/cfadb159f239c9dfa643ec5fac97f17b.jpeg)
来源:https://research.googleblog.com/2017/06/multimodel-multi-task-machine-learning.html
参考阅读:
学界 | 稳!DeepMind 提出多任务强化学习新方法 Distral
共享相关任务表征,一文读懂深度神经网络多任务学习
强化学习:还在游戏领域
强化学习是令我最兴奋、也最怀疑的领域之一——强化学习可以在自我博弈、不知道任何规则的情况下学习复杂的游戏,并在围棋、象棋和牌类等游戏中取胜。但是同时,我们几乎看不到强化学习在真实世界中的应用,最多也只是一些 3D 玩具人物在人造环境当中攀爬或是移动机器手臂。这也就是为什么我认为明年强化学习还会继续发展。我认为,明年将会有两个重大突破:
Dota 2(https://blog.openai.com/dota-2/)
星际争霸 2(https://deepmind.com/blog/deepmind-and-blizzard-open-starcraft-ii-ai-research-environment/)
是的,我非常确定,Dota 和 星际争霸 2 的人类冠军将被 OpenAI 和 DeepMind 机器人所击败。目前已经可以使用 OpenAI Gym 环境(https://github.com/alibaba/gym-starcraft)自己玩星际穿越 2。
看看 OpenAI 机器人是怎么玩 Dota 游戏的:https://www.youtube.com/watch?v=x7eUx_Ob4os
对于那些没有玩多少游戏的研究人员而言,可能想改进一些 OpenAI 所获得的的有趣结果:竞争性的自我博弈、从其他模型中学习、学习沟通和合作,以及 Facebook 引导的学习谈判。我希望 1-2 年内能在聊天机器人中看到上述结果,但是目前还需要完成更多研究。
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/d1cacb62ebe8ea8bd1e7b44283755405.jpeg)
上图表明 Facebook 机器人正在学习谈判(来源:https://code.facebook.com/posts/1686672014972296/deal-or-no-deal-training-ai-bots-to-negotiate/)
参考阅读:
OpenAI 人工智能 1v1 击败 Dota2 最强玩家:明年开启 5v5 模式
学界 | 面向星际争霸:DeepMind 提出多智能体强化学习新方法
业界 | 让人工智能学会谈判,Facebook 开源端到端强化学习模型
人工智能需要自我解释
使用深度神经网络当然很赞。你能凭借层数、连接密度和在 ImageNet 上 0.05 的改善来自我吹嘘,或者可以将其应用到医疗放射学中。但是,如果神经网络无法实现自我解释,我们怎么能真正依赖它呢?
我想知道的是,为什么我的神经网络会认为图像中出现的是一只狗,或者为什么它认为有一个人在笑,又何以判断我患有一些疾病。
但不幸的是,深度神经网络即便能给出准确的结果,却无法给我们上述问题的答案。
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/c10417fd016881dd2051998e3ebbe3db.jpeg)
图片来自演讲展示「DARPA Explainable AI—Performance vs. Explainability」
即使我们已经有了一些成功的应用,比如:
从深度网络提取基于树的规则:https://www.ke.tu-darmstadt.de/lehre/arbeiten/master/2015/Zilke_Jan.pdf
卷积神经网络层的可视化:http://cs231n.github.io/understanding-cnn/
以及一些更加有难度的想法如:
隐概念:http://www-nlpir.nist.gov/projects/tvpubs/tv14.papers/sri_aurora.pdf
与-或图训练:http://www.cnbc.cmu.edu/~tai/microns_papers/zhu_AOTpami.pdf
生成视觉解释:https://arxiv.org/pdf/1603.08507.pdf
然而,这个问题仍然是开放性的。
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/98ea3ec543819b350e3e6bb7fbeb6928.jpeg)
来源:https://arxiv.org/pdf/1603.08507.pdf
最近的当前最佳 InterpretNet:
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/2ce9b3f584e77d8dfe9830869eca74d7.jpeg)
来源: https://arxiv.org/pdf/1710.09511.pdf
我们还应关注贝叶斯方法,它可以跟踪预测的准确性。对于已有的神经网络,这在明年将是机器学习中一个非常热门的话题。
参考阅读:
学界 | Hinton 提出泛化更优的「软决策树」:可解释 DNN 具体决策
业界 | 解释深度神经网络训练全过程:谷歌发布 SVCCA
人工智能安全:不再是小问题
在人工智能可解释性之后,要解决的第二个重要任务就是当代机器学习算法的脆弱性——他们很容易被对抗样本、预测 API 等愚弄:
Hype or Reality? Stealing Machine Learning Models via Prediction APIs(https://blog.bigml.com/2016/09/30/hype-or-reality-stealing-machine-learning-models-via-prediction-apis/)
Attacking Machine Learning with Adversarial Examples(https://blog.openai.com/adversarial-example-research/)
对于这些事,Ian Goodfellow 有一个名为 CleverHans(http://www.cleverhans.io/security/privacy/ml/2017/06/14/verification.html)的惊人创举。关于数据的隐私和加密数据的训练,请看看牛津大学博士生的精彩文章「Building Safe A.I.」(https://iamtrask.github.io/2017/03/17/safe-ai/),其中展示了构建简单同态加密神经网络的例子。
我们应当保护人工智能的输入(私人数据)、内在结构(使其免于攻击),以及它所习得的东西(其行动的安全性)。
以上所述仍非如今人工智能所面临的全部问题。从数学的角度来看(特别是在强化学习中),算法仍然不能安全地探索环境,这也就意味着如果我们现在让物理机器人自由地探索世界,他们仍然不能在训练阶段完全避免错误或不安全的行为;我们仍然不能使我们的模型适用于新的分布和情况——例如,用在真实世界中的对象中训练的神经网络识别绘制的对象仍然很困难;此外还有许多问题,你可以在如下文章中查看:
Concrete AI Safety Problems(https://blog.openai.com/concrete-ai-safety-problems/)
Specifying AI safety problems in simple environments | DeepMind(https://deepmind.com/blog/specifying-ai-safety-problems/)
优化:超越梯度,还能做什么?
我是优化理论的忠实粉丝,而且我认为 2017 年最佳的优化方法发展综述是 Sebastian Ruder 所撰写的「Optimization for Deep Learning Highlights in 2017」。这里,我想回顾一下改进一般随机梯度下降算法+反向传播的方法:
• 合成梯度和其他方式以避免深度学习中高成本的链式法则(https://deepmind.com/research/publications/understanding-synthetic-gradients-and-decoupled-neural-interfaces/)
• 进化策略,可用于强化学习、不可微损失函数问题,可能避免陷入局部最小值(https://blog.openai.com/evolution-strategies/)
• SGD 的改进,学习率和批调度(http://ruder.io/deep-learning-optimization-2017/)
• 学习优化——将优化问题本身视为学习问题(http://bair.berkeley.edu/blog/2017/09/12/learning-to-optimize-with-rl/)
• 不同空间的优化——如果我们可以在 Sobolev 空间中训练网络呢?(https://papers.nips.cc/paper/7015-sobolev-training-for-neural-networks.pdf)
![0?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/8f2a16e2e9de2f3670ddea67b7344f2e.jpeg)
来源:http://bair.berkeley.edu/blog/2017/09/12/learning-to-optimize-with-rl/
我相信,通过进化方法解决不可微函数优化问题带来的进展,强化学习和学习优化技术将帮助我们更有效地训练人工智能模型。
3D 和图形的几何深度学习
在 NIPS 的一份演说「Geometric Deep Learning on Graphs and Manifolds」之前,我并没有真正意识到这个话题的重要性。当然,我明白现实数据比 R^d 更困难,实际上数据和信息本身就有自己的几何和拓扑结构。三维物体可以被看作点云,但事实上它是一个表面(流形),一个特别是在运动中具有自身局部和全局数学(微分几何)的形状。或者,考虑一下图形,你当然可以用一些邻接矩阵的形式描述它们,但是你会忽视一些你真想看作图形的局部结构或图形(例如分子)。其他多维的对象,例如图像、声音、文本也可以且必须从几何角度考虑。我相信,我们会从这个领域的研究中得到许多有趣的见解。让我们坚信:
所有数据都有着我们无法避免的局部和全局几何结构
查看下列连接,以获取更多细节:Geometric Deep Learning(http://geometricdeeplearning.com/)
结论
我本来还可以谈谈知识表示、迁移学习、单样本学习、贝叶斯学习、微分计算等领域,但是说实话,这些领域在 2018 年还没有充足的准备能有巨大的发展。贝叶斯学习中,我们仍然没有解决抽样的数学问题。微分计算听起来很酷,但有何用?神经图灵机、DeepMind 的差分神经计算机——又该何去何从?知识表示学习已是所有深度学习算法的核心,已经不值得再写它了。单样本学习和少样本学习也不是真正的已开发领域,而且目前也没有明确的指标或数据集。我希望本文提到的主题能在一些热门或成熟的领域发展,并且在 2019-2020 年能有大量实际应用。
另外,我想分享一些重要的实验室,从中你可以了解最新的研究新闻:
OpenAI(http://openai.com/)
DeepMind(https://deepmind.com/)
IBM AI Research(http://www.research.ibm.com/ai/)
Berkley AI(http://bair.berkeley.edu/)
Stanford ML Group(https://stanfordmlgroup.github.io/)
Facebook Research(https://research.fb.com/)
Google Research(https://research.googleblog.com/)