从零道一:从专业的层面来讲,你觉得博士期间遇到的最大的挑战是什么? 田:读博其实每个人都不太一样。有些人可能是老板规定太死,他没办法发挥。但对我来说,情况可能是倒过来的。老板在这方面其实懂的不多,所以最重要的是我能不能自主地找到一个方向并攻克它,这可能比跟着老板做要难多了。 我可能有一种倾向,就是做非常难的问题,有一种想要攻克难题的决心。但是,怎么把这个决心变成一个可实现的目标是一个很困难的问题。 我在知乎的一篇文章(《博士五年之后五年的总结》)中也写过,这五年我学会的最重要的事情是怎么把一件事分成几部分来做,这样才能开始做比较大的事情。刚开始的时候,我觉得我想把很难的问题解决掉,别人都解决不了我去解决。 作为一个刚来的博士生,想要攻很难的问题,心气是很高的,但怎么落地是一个很难的问题。你可能会花很多时间去思考,而且这个思考是漫无边际的。今天想这个,明天想那个,非常地不连贯,非常天马行空,你自己觉得好像是在做研究,但其实是在浪费时间。因为思路没有落地的结果就是不能存盘,下一次你还要从头开始想。而且,它无法形成一个持续的步骤,这样对自信的打击也是很大的。比如说你可能思考了很长时间,然后发现:哎呀,不是很有效果,怎么办呢? 经过了博士阶段的几年之后,你才会知道自己先要去想什么,再去想什么;什么能做,什么不能做;什么是自己力所能及的;什么是别人已经做过的,什么别人还没做,还有机会。这种对于学术的感觉也是通过博士这五年慢慢练出来的。 田渊栋博士论文:《Theory and Practice of Globally Optimal Deformation Estimation》
从零道一:博士之后你第一份工作是去了 Google X,做和无人车有关的项目,能不能讲讲当时找工作的一些想法? 田:首先,我当时想要去尝试一下各种各样不同的东西,无人车是挺有意思的一个方向,另外,我听说那边可能开始要用深度学习,所以觉得很感兴趣。第二个就是现实问题,因为读了五年博士,毕业之后肯定想找一份「好工作」。当时那个组大家都觉得还不错,技术上相对来说是比较前沿的。无人车大概在 16、17 年开始大火,在这之前 Google 就开始做了,所以后来就去了这个组。 我刚去的时候有点兴奋,但是后来觉得跟我的期望还是有距离的,所以待了一年多就走了。 从零道一:为什么会觉得跟自己的期望有差距? 田:有几个方面的因素吧。首先它是一个保密组,允许你做很厉害的工作,但是你不能对外说,这样对将来的工作不是很有利。你要跳槽的话,别人会问你之前做什么,你说「我不能说」。这是一个非常现实的问题。第二个问题就是,我当时进去的时候还很兴奋,问我当时的老板:「我们是不是可以用深度学习啊?」但是进去之后发现,我做不了深度学习。当时 GPU 还是一种比较稀缺的资源,Google 内部是有配额的,做深度学习的主要是一些比较资深的工程师,他们有时间和权限去跑一些深度学习模型。所以我当时相当于是打杂的,做的是一些没有那么兴奋的东西,感觉做下去也没有多大的前途。最后,你会慢慢知道自己想要什么。所以一年之后就想要跳槽了。 从零道一:我记得在知乎的帖子上看到你白天做 Google X 的工作,晚上自己做研究,是不是当时就觉得自己对研究更感兴趣? 田:对,是这样。我当时觉得上班就是做一天和尚撞一天钟。上班写一天代码之后,晚上回去做自己想做的事。我觉得上班之后的状态和读博士时的状态是完全不一样的。博士期间,我还是挺喜欢花很多时间去研究、去思考,但是去谷歌之后,好像这种激情就没有了,觉得自己就是来赚钱的。所以,我觉得这可能不是一个适合自己的地方。 我在公司没有办法做深度学习,但是我可以看,找篇文章闲暇时间自己做做。当时我还自己搭了个小平台。当然,这样也能做(研究),但是会很累,而且没有办法和其他研究人员交流。当时那种状态还是很辛苦的,所以最后还是决定要走。我不可能一直留在谷歌,白天做一件事,晚上做另一件事,这不是长远之策。
从零道一:能不能讲一讲你做这个围棋项目中遇到的困难、挑战,或者有没有哪些有意思的事情? 田:挑战和困难是非常多的,因为围棋涉及大规模的深度强化学习,需要大量的跨领域的知识组合。你不仅要知道强化学习怎么做,还需要搭分布式系统,保证训练能够进行,还需要调参。各种各样的东西都需要组合在一起,才能把系统的效果搞出来。所以这一点很锻炼人,它把本来并不交叉的领域放在了一起,这是一个非常好的项目。 从零道一:你会下围棋吗? 田:我会,但我的水平很差。我只要知道出了问题我怎么 debug 就行了。比如说围棋高手能够在某个问题出现之前就把问题看清,但对我来说,我可能要让机器先走个十步,我才能看出来。但这也没关系,因为机器一直在跑嘛,我完全可以让机器先跑。所以这个问题倒不大。围棋下得比较好的人可能还希望把自己的经验加到里面去,这其实对于 AI 的设计来说并不是有利的,因为我们希望 AI 能够自己学出来。 2016 UEC 计算机围棋大赛, DarkForest(左)与职业棋手小林光一九段(右)对弈。 从零道一:你刚才讲说做这个项目的时候需要跨领域的知识,当时你是怎么快速学到这些跨领域的知识,并且把这些知识投入到应用中的呢? 田:我觉得这个算是我的一个长处吧,很多东西我都能自己学会,只要我花时间花精力去做这件事。另外一个就是,我什么事情都愿意自己去尝试。因为深度强化学习是一个非常需要自己动手去尝试的领域。只有通过这种方式我才能知道什么东西是有效果的。这对我来说不是一个费力的事情。通过不停的实践,慢慢就可以知道怎么去做这个系统,然后很快地把效果提上去。
从研究员到研究经理
从零道一:我知道你刚进 Facebook 的时候是 Research Scientist,后来还成为了研究经理。能不能讲述一下自己从一个研究员到管理者的挑战和感受? 田:挑战肯定是有的。首先作为管理者,不仅需要把自己的工作做好,而且还要理解别人的想法和思路。作为一个 manager,我要考虑我能不能让下属成长,所以我就需要去理解他们在想什么,他们的诉求,他们的目标,他们的能力有什么局限。这些东西需要通过交流,包括一对一的交流,通过一些探讨和思考,慢慢地了解才能知道,再进行一个反馈。这其实是一个很重要的能力,能够理解别人是一个非常重要的挑战。 从零道一:你说你从来不认为自己是一个非常成功的人,甚至有时候觉得自己比别人要笨。但是其实现在很多人都认为你现在做出来的研究是非常出色的,也是有很多价值的,那你觉得自己有现在的研究成果依靠的是什么? 田:我能依靠的首先是耐心,要有耐心,要愿意去磨一个问题。比如有一个问题我愿意去做,那么我并不在乎多快时间能做出来,可以慢慢来,只要方向是对的,思路是明确的,一点点就能够把这个问题挖下去,就可以完成。耐心是很重要的。如果一个月能专注做一件事,成果真的是惊人的。最怕的是一个人很聪明,但是浅尝辄止。一件事情做了一会儿不想做了就换一件事情做。这样可能就是人虽然非常聪明,但是没有办法把一件事情做好做实在。所以我觉得我自己笨,就笨鸟先飞,多花点时间做自己满意的东西。所以耐心是很重要的,尤其是现在这个时代大家都比较满足于快速的反馈,比如看个视频获取开心。但是做出大东西来还是需要专注很长时间来把事情做完,就算别人不看好你,你也会愿意做下去。现在这个社会普遍来说缺乏这种能力,但是有这种能力更容易做出大事情。
对于 AI 发展的看法
从零道一:从你的专业视角来看,当前人工智能处于一个什 么样的发展状态?特别是现在它的局限在哪里,哪些事是做不了的? 田:这个问题比较大,我觉得现在 AI 可能处在一波热潮之后回调的时间段。可能还会有一些改进提升,每年也有很多文章出来,但已经不像前几年那样非常火热,会常有一两件惊世骇俗的东西出来的样子。但重大进展也是有的,比如 OpenAI 的 GPT-3 还是很厉害的,能够生成很多有意思的对话。 另外一方面是很多人涌进了 AI 这个领域,使得竞争非常激烈。但是长远来说,我还是认为 AI 是一个很好的方向,是一个非常有前途的方向,这个方向是值得长期投入的。今后不管是哪个领域都会有 AI 的身影,它都能够做到自动化,减轻人的负担。但是现在 AI 的成果还是比较弱的,总体来说还是一个函数拟合器,给定输入输出,然后拟合一个函数且效果不错。 现在的 AI 谈不上有自我意识,谈不上有很强的推理能力。比如说有一些例子:AI 会回答问题,从文中找到一些很有意思的段落,研究下来发现,它也只是找到了问题和段落之间的一些关联,利用这些关联去寻找答案。围棋也是一样的,找到棋子的落点和它周围的棋子之间的联系,然后通过大量的自我对弈,慢慢找到联系,找到更好的解法。 本质上说,现在 AI 这个阶段已经产生很多有影响力的结果了,接下来一方面是怎样去理解模型在干什么,刷榜、提高性能都是常规操作,已经不能算是有突破了。如果能够理解 AI 存在的问题,能够理解神经网络的工作原理,理解如何避免神经网络出现一些 bug(比如对抗样本),这些是很重要的,这些对 AI 未来的发展有很大的影响。 我们并不希望使用自己也不知道为什么能 work 的东西,去左右自己的决策。比如说,最近发现用 AI 来做的很多东西存在偏见(bias),那么也只有理解神经网络是怎样工作的,才能克服偏见问题,这个其实是很重要的。 从零道一:有听众提问说,他是您知乎的粉丝,您之前提到过意识和智能是可以分离的,开发高智能的 AI 可以做很多人做不了的事情。但是根据我们的经验,人的直觉在处理问题时常起到画龙点睛的效果。那么在 AI 的智能中植入意识的做法可不可行?现在是否有尝试模仿人的直觉引入到人工智能领域研究的内容,进展如何? 田:首先我觉得,直觉这一点已经被引入进来了。比如在围棋这一部分,有很多的步法其实并不是计算机通过精密的搜索算出来的,而是通过大量对弈找到了直觉上比较好的步法,相当于不通过推理和意识,直接找到当前输入的一些模式,看到这些模式之后,反应过来该干什么。我觉得这是直觉在现在的机器学习框架下比较好的定义。 对人来说,直觉一定是很神秘的,因为人们并不知道是怎么得来的,但是对机器来说非常简单,就是看到了这些模式,然后反应出应该干什么。按照这种逻辑来看,现在的机器学习全都是直觉,但我们恨不得它能少一点直觉,多一点推理。 比如问一个问题:「这张图片里天空是什么颜色的?」然后机器说:「不用看,肯定是蓝的」。这就是直觉,现在的神经网络是靠直觉活着的,但是我们要加入高层的思考、推理、判断,这是很难的,也是现在要思考的问题。
给年轻从业者的职业建议
从零道一:您对对 AI 感兴趣的学生或者年轻从业者有什么样的建议? 田:其实前两天在知乎上有个帖子,是关于高考刚结束的学生有哪些选专业的建议。我觉得还是先把基础打好,这是非常重要的,AI 可以火,可以不火。我之前还看到有个帖子说:「如何看待算法岗灰飞烟灭?」,因为前两年实在太火了,所有人都愿意去做它,所以也许有些人在找工作时会遇到问题。现实上来说,我觉得还是要把计算机的一些基础知识打好,这个是非常重要的,因为不管怎么样,以后你可以做 AI,也可以去做其他的事情。出路会宽一点。这些基础知识在各个领域都共通,这是一个非常好的起点。 如果你直接做 AI 的话,问题是在于你可能会见到很多高大上的东西,这些东西可能过两年就不火了或者发现有比较严重的问题。因为整个 AI 领域和深度学习相对来说还是比较年轻的东西,每天有那么多 arXiv 论文,可能今天他说的是对的,明天就是不对的,这也是可能性很大的事情。所以一开始就去接触这些东西可能就会陷入一个误区:「稍微改改就能跑个新的东西出来,我为什么要学基础知识呢?」所以这样的方式可能对学习者没有特别大的帮助,还是要把基础打好。一个是计算机,一个是数学,这些基础知识都不会变,都是被很多人证明过这些东西都是有效果的,确实是有用的,所以这些还是要先学的。打好基础知识之后,再去做一些其他工作,去研究一些前沿的东西,这样对学习者的未来才都有好处。