Greg Brockman:如何定义OpenAI的CTO(翻译)
来自 https://zhuanlan.zhihu.com/p/616857619。
本文内容基本上拷贝自“智能说”,只是原文将gdb的多篇blog合并成一篇文章,不方便阅读。本文根据gdb原博客内容,将多篇blog分开发布。
update:
- “智能说”有很多原文没有的分段和加粗,本文均做了调整,与原文保持一致。
- “智能说”将本文题目误写为“OpenAI的使命”,本文也做了修正;
如何定义OpenAI的CTO
from:https://blog.gregbrockman.com/the-openai-mission
在2015年8月,OpenAI只是一个埃隆·马斯克、萨姆·阿尔特曼、伊利亚·苏茨克弗尔以及我和其他几个人共进晚餐时表达的想法。虽然每个来参加晚宴的人都各抒己见,但并没有一个清晰的愿景,Elon和Sam提出自己的想法:OpenAI旨在构建安全的人工智能以造福人类。我也想尽可能贡献自己的力量,为了如愿以偿,便开始和Sam一起组建团队。
不过我们缺少核心要素,即一位AI技术远见者,其直觉和想法可以帮助我们取得突破。

Ilya Sutskever是最佳人选。Ilya可以说是一位艺术家,他常通过机器学习来表达自己感受(有时也会通过绘画来表达)。深度学习教父Geoffrey Hinton曾告诉我,AlexNet之所以能引发一场计算机视觉深度学习革命,在于Alex Krizhevsky高超的GPU编码技能及Ilya的信念,即深度神经网络必定会在ImageNet竞赛中获胜。(Geoff对自己贡献的管理技巧感到无比自豪。Alex非常讨厌写论文,Geoff告诉他,他在ImageNet上的性能每提高1%,他就可以把论文推迟一周,结果Alex拖延了15周。)
一直以来,我都认为自己只能与相识多年的朋友共创公司,事实并非如此。2015年8月下旬,我和Ilya在山景城共进晚餐,当时我就知道我们会一起合作,在此之前,我们也只在7月见过一次。我和Ilya聊得十分投机,尽管我对机器学习了解不多,他对工程和团队建设的认识也没有那么深入,但我们对彼此的成就印象十分深刻,也希望能够相互学习。我们交流彼此看法、汲取彼此长处。
Ilya认为,顶级研究人员希望在人工智能组织工作,而该组织致力于为世界创造最佳成果。在我看来,要想解决一些棘手问题,需将私营企业资源与学术界使命相结合。
若无外界干预,人工智能将会像自动驾驶汽车一样发挥自身作用。一旦人工智能潜力得以证实,人们就会与之展开合作,而后是一场场技术竞赛。不过,人类级别的人工智能,将会是一种与众不同的变革性技术,有其独特的风险和收益。
我们看到了这一机遇:在人工智能领域展开合作,汇集众多顶尖研究人员,以取得史上最重大的科技突破。Ilya和我一直在讨论团队组建方案,直到该方案得以落实。期间,我们讨论了战略(即将从事什么工作)、文化(想雇用的人员,同等重视工程和研究的人员)、策略(举办每日阅读小组)。
Alan Kay与我们共进晚餐时,向我们讲述了施乐帕洛阿尔托研究中心Xerox PARC的故事,包括Alto的诞生及用硬件在未来生存,这些硬件在10年内将花费1,000美元。事后,Ilya对用餐期间的谈话做了巧妙总结:虽然Alan的话我只听懂一半,但令人振奋不已。不过这顿饭帮我们验证了许多假设,即怎样才能构建一支能将工程与研究相结合的有影响力的团队。
早期团队的招募
由于Ilya还在谷歌工作,因此无法帮忙招聘,这一工作落到我身上。2015年8月~11月,由我负责创办团队。不过,我对人工智能并不熟悉,不清楚如何招募优秀的研究人员。我首先关注的是7月参加过晚宴的人,但不能确认具体人选。下一步,便是通过人际网络与这些人取得联系,并依次寻求他们推荐,这与我以往招聘方式有所不同。对于初创公司而言,首要挑战总是要向候选人兜售使命,但在OpenAI,使命立刻引发大家共鸣。于我而言,挑战在于如何说服候选人相信这个未成形的组织。

人工智能领域顶尖人才的人际网络,对我帮助很大。一位朋友引荐我认识Andrej Karpathy和OpenAI联合创始人Wojciech Zaremba,由于我并未从事该领域工作,他们对我说的话表示怀疑。Yoshua Bengio又将我引荐给曾任OpenAI研究科学家的Durk Kingma(现在谷歌研究团队),当时后者对我的提议表示很感兴趣,不过这种兴趣转瞬即逝。真正的转折点是OpenAI联合创始人、研究科学家John Schulman的评价,我跟他聊到这一组织的成立,他表示这样的组织正是他所追寻的,能将学术界的开放和使命,与私企的资源相结合,因此加入我们。
John的支持,也引起了Andrej和Wojciech关注。招聘工程师相对容易一些。Trevor Blackwell是机器人专家,也是YC合伙人,他一直在与Sam讨论我们正在计划的疯狂想法。Vicki Cheung(现Gantry联合创始人),是在我们成立赞助机构“YC Research(现为OpenResearch)”之后申请加入的。那时,我们虽未表明研究领域是AI,但她深受YC Research构架鼓舞,并表示很乐意参与我们团队所有工作。
巩固
2015年11月初,虽然我们对创始团队有了更深入了解,但仍然需要让大家正式加入进来。在Sam建议下,我们邀请了所有候选人户外漫步。期间,人人都真切表达内心想法、观点,才思泉涌(实际上,该地也是Andrej提出Universe之地)。回程中,一路上交通堵塞。不过几乎没人留意到这一点,因为大家聊得太投入了。

我们给此次活动的参与者,都发了offer,并将offer截止日期设置为2015年12月1日,这样我们就可以在12月初NIPS(NeurIPS)机器学习会议上发布成员加入的消息。
“月末”就这样开始了。Sam、Elon,还有我,和每个人都聊了聊,主要是让大家相信这件事的真实性。除了一名完全无意涉足人工智能的工程师外,其他候选人都接受了我们offer。
正式运转
Fred Brooks在《人月神话》一书中,提及了Robert Heinlein的故事,该故事讲述了登月项目。该项目的总工程师,总会被运营任务分散注意力,例如关于运输车或电话的决策,这种情况一直持续到他收到一份报告,据报告显示不再让他负责所有与技术无关的任务。
这一故事给我留下印象深刻,我认为它同样适用于构建人工智能项目。技术领导,除了做实际技术工作以外,同时还应该亲自做决策。我不知道自己的工程技能何时才能派上用场,不过在此期间,我决定尽我所能帮Ilya分担与研究无关的任务。
2016年1月4日,我们整个团队来到第一间办公室(也就是我的公寓)开始工作。讨论中,John和Ilya转身打算在白板上写点些什么,却发现这儿没有白板。我立即给他们买了一块白板,还有一些办公用品。

我们第一间办公室(配有白板)
2016年1月剩下时间里,我负责组织团队,帮忙确定哪些人负责哪些工作,以及团队想达成的目标。我们讨论了研究人员需要具备什么品质,践行公司理念,设计并确保面试顺利进行。
我们还谈论了愿景、工作方式,以及想要达成的目标。我和Vicki购买服务器,创建Google Apps帐户,同时对我们12月启动的Kubernetes集群进行维护。
余下时间,我阅读了GAN网络发明者Ian Goodfellow的深度学习书籍,并写下书评,由于我评论比其官方评审员评论更加全面,给他留下深刻印象。因此,这也不失为一种招聘策略。
Gym库
比起使用新的数据集,使用新的算法,通常能解决机器学习中的问题,Wojciech建议构建一个库来形成强化学习环境的标准(实际上是动态数据集),现在称之为Gym,这个代码库的质量,很快成为我们迭代速度的高阶位high-order bit。
2016年2月底,我和John讨论了Gym的公开发布时间。按照目前发展情况,他认为可能要到2016年底才能发布。

一时之间,工程学成了研究进展瓶颈。Ilya与我互换角色,由他负责行政工作,我可以专注技术工作。和John考察了这项工作之后,我们知道在2016年4月底之前就能构建好Gym。
在Stripe时,我发现能够直接创建软件系统的可重复模式,专注于软件,排除一切干扰,从早工作到晚。这样一来,便能激励大家贡献自己最好的作品,重要的是,是以输出质量来衡量,而不是工作时间。这是我感觉最有活力的时候:编程就如魔法变成现实一般,我所想象和描述的事情都将成为可能。这种模式产生了Stripe信用卡保险库(2010年构建完毕,也就是在我假期回家的2周内完成)、信用卡授权流程(在3周内就能建成,而银行构建周期需要6~12个月)、夺旗赛(通常我和其他人都要花3周时间)。从战术上讲,我可以选择一个试发行日期、和正式发布日期,间隔一两周;我从未选择过试发行日期,但从未错过正式发布日期。
随之而来的,是从未面临过的挑战。由于我并非该领域专家,起初,引起很多摩擦。我会构造一个抽象的框架来帮助Wojciech工作顺利进行,而John会发现这一举动阻碍了他工作进程。但很快,我就了解到哪些决定,会影响研究的工作流程(例如人们如何记录指标),以及哪些细节,研究人员不会关注(例如人们如何录制视频)。在确定了案例对研究的重要性之后,要保持一定的谦逊,才能做出最佳选择。我通常会提出5个可能的备选方案,John会指出其中有4个方案都不行。但大多数设计决策可以通过软件工程的直觉做出,而无需深入了解相关领域。
幸运的是,我不是一个人。大约在Gym发布的前6周,曾与我在Stripe一起研究CTF 3的Jonas Schneider联系我。短短几天时间,我们就在Gym上建立合作关系。因为他人在德国,所以我们通过每日交接,最终成功完成该项目。对于已经建立好工作关系的人来说,这真的很奇妙,若一切从头开始,我们不会保持如此紧密的工作关系。

总的来说,机器学习系统可视为机器学习的核心之一,通常是一种高级算法,要想理解该算法,至少需要阅读过几章Ian的书,涉及大量软件工程内容。工程可以围绕数据进行改组,提供输入和输出的封装器,或调度分布式代码,这些都会以黑盒形式与核心core连接。我们在工程和研究方面作出的努力达到一定程度时,机器学习就会取得进步。工程方面每多一分努力(例如减少Universe延迟),我们模型问题就会逐渐变得更容易,并且有机会完成当前研究。
Universe平台
2016年4月Gym上线后,我和Ilya开始调整组织流程。Sam和Elon都会到访公司,提出一些指导意见,我们会根据其指导来确定团队结构与目标。

多样、复杂的AI环境必不可少。Andrej提出一个不错的建议,创建一个Agent来控制Web浏览器,但这与Selenium测试工具有所冲突。我开始考虑使用VNC,以允许Agent从像素驱动整个桌面。
但我们发现,这种方法存在许多风险。例如,2013年DeepMind发布的Atari文章提出,他们花了50小时从像素训练Pong游戏,我们环境将比Pong更难。即使是做小规模实验,我们也需要花几天时间,而且不会取得任何进展。因此,我们设定降低内部风险的目标,让Agent在1小时内学会Pong(如今我们已取得突破:10分钟内便能解决Pong遇到的问题)。
就像构建Gym时那样,我专注构建VNC系统,现称之为Universe。与Gym不同的是,该项目并非旨在支持我们现有的研究方式,而是提出全新问题。关于这一点,我们每个团队都有负责人,他们负责照顾自身团队成员,我们工程师Jie Tang已开始带头招聘。因此,行政这一重担并没有完全落在Ilya身上。这十分幸运,因为这样Ilya就能为该风险项目的首个版本构建Agent。
一个从整个动作空间随机抽样的Universe Agent(即随意点击、按键)。更多表现良好的Agent请参阅Universe发布的帖子。
Universe项目耗时相当长,因此,需要合理分配时间来运营项目。我找到一个平衡点,编码时,我会将时间进行划分。一次会议,会扼杀整个上午/下午的生产力,若上午和下午都有会议,我将精疲力竭,从而导致晚间编码效率大大降低。我开始将会议时间,限制在清晨或午餐后,每天会议次数低于3次,隔天会议次数不超过一次。
搭建Universe本身,就是一项系统研究工作:虽然高级规范很简单(允许Agent使用键盘/鼠标/屏幕),但从来没有人尝试过构建类似的系统。长期以来,人类一直可以用VNC控制一台远程机器,但还无法实现以编程方式同时控制数十台机器。当我们需要衡量系统的端到端延迟时,Catherine Olsson和我构建了一个系统来将时间戳嵌入图像中。有时挑战不是技术上的:当研究因为训练数据有限而受阻时,Tom Brown在24小时内就组建了一个外包团队来玩游戏。有时候挑战也可能很难以理解,比如当Jonathan Gray注意到由于外包人员的笔记本电脑CPU较低端,游戏动态可能会与AI有所不同。一天,当我正在努力重组一些JSON基准规范时,我意识到:我们需要重新构建这些规范,因为没有人从未尝试过在数千个游戏中对单个Agent进行基准测试。
在OpenAI,做艰苦的工作也是最基本的。在接下来几个月里,由Dario Amodei和Rafał Józefowicz负责Universe研究工作。他们都是夜猫子,我也和他们一起熬过很多个夜晚,解决研究中遇到的问题。有时我也想躺在床上睡觉,但每修复一个Bug都会使研究加速几个小时。每个人的工作中都有一些非常有用的东西,能让研究人员提出人类此前从未有过的问题。

到发布时,Universe团队已经有约20人。Universe现在是一个旗舰项目,也是我们研究战略的核心部分。Universe的例子,恰好说明工程是如何成为当今ML研究的瓶颈,这也让我知道为什么有那么几天只想读Ian的书。
下一步发展方向
我们现在是拥有40人的公司,需要有人全力来优化团队。自OpenAI成立以来,我们一直在寻找合适的首任技术经理。几个月前,Sam向我介绍了一位特别出色的工程执行人Erika Reinhardt。Erika曾在Planet Labs担任产品工程总监,现在和Sam一起运营http://voteplz.org。在Planet Labs时,Erika是对端到端卫星成像系统了解最深的人之一。她工作努力,自驱力强,总能把事情做好,前同事都说她是所能遇到的最聪明的人。Sam和我就准备邀请她加入公司。

但在选举会和Universe发布会上,与我们合作时,才是她最具魅力的时刻,她发现她的领导技能在这种环境中非常适用。她告诉我:在看到OpenAI在参议院举办的首次AI听证会上发言的那一刻,她就下定决定要加入OpenAI。当时OpenAI说:我们正处于重大技术变革的开端,此时最重要就是要把握时机。
在Stripe时,Marc Hedlund和我常会遇到他在之前的许多公司中都遇到的问题,所以他喜欢开玩笑说所有公司都一样。就这一点而言,确实有现实依据:如果将范围缩小一点,就会发现公司都是围绕一个目标来把人组织起来。但每个公司要解决的问题又不一样,这又决定了公司之间会有所差异。
大多数初创公司都是先创造出一种技术,然后随着时间推移,对其进行运营和扩展。OpenAI是创造新技术的工厂,这意味着我们必须构建公司来创造新事物。我们需要维护基础设施和大型代码库,但它们又满足了我们快速行动、创新和通过结合软件工程和机器学习研究来达到新高度的需求。
在OpenAI当CTO这段时光里,我做的正好是我最喜欢做的事,写代码。但即便如此,人仍然是我关注的焦点,所以我在OpenAI的故事,是与社会的故事,而不是与技术的故事。在未来,我们团队要继续携手并进,共同应对海因莱因短篇小说中“卡车或电话”的挑战,OpenAI才能持续发展。在此,我向Ilya、Sam、Elon,以及为OpenAI付出过的每个人表示衷心的感谢。