Ian Goodfellow的Quora问答:高歌猛进的机器学习人生

Ian Goodfellow 是机器学习领域备受关注的年轻学者之一,在大学与读博期间分别跟随吴恩达、Yoshua Bengio 学习人工智能与机器学习。近日,他在 Quora 上就机器学习的一些问题进行了回答,机器之心对这些问题进行了整理。文中推荐的论文可点击这里下载。

photo (1).jpg

1.你学习机器学习的历程是什么?在学习机器学习时你最喜欢的书是什么?你遇到过什么死胡同吗?

我学习机器学习的道路是漫长而曲折的。

读高中时,我兴趣广泛,大部分和数学或科学没有太多关系。我用语音字母表编造了我自己的语言,我参加了很多创意写作和文学课程。高中毕业后,我进了大学,尽管我不想去,我父母为我付了学费,此外他们不会给我钱去干别的事情。现代经济体系似乎彻底地操纵了一个青少年,让他无法用自己存的零用钱去干自己想干的事业。我选择了斯坦福,因为它不会在低年级就要求我选择一个主修专业,还因为它不需要你连续四年读完学位。例如,John Steinbeck 几次中断学业,从不完成学位。

在斯坦福的第一年,我选了一些编程入门课,但是很讨厌这些课。几乎都是 C++,而且一旦出现 Bug 它就变成一团麻了,我很烦这个。我对解码大脑如何工作很感兴趣,所以我选了一些心理学和认知科学的课程。这些课没我想的那么扎实,跟我原来想的一样,大学浪费了我很多时间还有我父母的钱。我决定像 John SteinBeck 看齐,暂停斯坦福的学业。我和两个朋友去了苏格兰,尝试写作事业,白天干别的工作。我申请了能想到的所有工作(林业工厂,快餐)但是没有任何收获,部分是因为 G7 峰会当时在附近召开,很多雇主认为我这样的外国学生想必是这个会议的抗议者。花完所有的积蓄后,我又回去依靠父母了,也回到了大学。

在斯坦福的第二年,我想到我能研究的最有趣的学术主题是解码大脑如何工作。大学一年级时我已发现心理学和认知科学课的内容比较软,所以我想神经科学的应该有很多的硬技术知识。 我花了一年和医学预科生学完了所有生物学的需要基础知识,像化学、生物等等。我也开始在一个功能磁共振成像实验室工作,甚至听了一点点神经科学课程。很高兴我能在大学时就开始热衷于这门学科。

在这段时间里,我开始想我应该学一些编程,因为做神经科学研究时会用的上。我上了 Jerry Cain 的更高级的编程课,而且非常喜欢它。大一时我非常讨厌编程入门课,因为一出现错误就会变得让人摸不着头脑,但是 Jerry 把每个问题都讲的非常细致,细致到运行一个 C 代码时,机器指令执行了什么。这就让事情变得很明确,不会让人找不着北。自从参加他的课以来,我从未觉得自己的编程能力或者对计算机的理解被限制。我也开始花很多时间泡在 Jerry 的办公室里学习软件工程 。

在斯坦福读了两年大学后,我拿到了去美国国家卫生研究所( NIH )实习的机会,用经颅磁刺激技术( TMS )做神经科学研究。我对此很兴奋—— TMS 是一项使用磁场影响大脑内部电活动的技术,不需要切开大脑。我阅读了很多这方面的资料,认为 TMS 是最炫酷的事了。在我去 NIH 后,结果发现这其实有些无聊。第一次学会操控一些人的大脑时,确实觉得很兴奋。然后你必须以相同的方式精确操控几十个人的大脑,以便收集足够多的实验数据从而达到统计显著性。我觉得这种常规的数据收集工作太枯燥乏味了。同时, NIH 的医生教了我很多数据分析技术。他们编写过机器学习算法来进行独立成分分析( ICA )等事情,区分收集到的不同 EEG 信号或者识别类似运动皮层规划手臂运动的事件。我花了很多时间从事数据分析,最后我非常喜欢数据分析,远远超过对用 TMS 机器做物理实验的喜爱。

当我在大三回到斯坦福时,几乎就是到了我申请专业的时候。我差不多确定我要选生物医学计算。然后我告诉 Jerry Cain 我的实习经历和我多么喜欢数据分析。他坚持认为我应该选吴恩达的人工智能入门课程。那时的我不知道关于人工智能的任何事物,除了用于视频游戏的伪人工智能(在完成 Jerry Cain 的课程后,我曾经因兴趣加入视频游戏项目)。我非常怀疑人工智能课程的价值,但是我相信 Jerry 的判断,于是选了那门课。在听了吴恩达讲解线性回归的偏差和方差分解后,我才相信人工智能是一门真正的科学,而且我申请了计算机科学专业。在课程结束时,吴恩达邀请我去斯坦福人工智能机器人( Stanford AI Robot )工作,之后我一直参与机器学习研究。

我仍然用了一些时间才从神经科学转向机器学习。当我到了该读博的时候,我很难在 Bruno Olshausen 的神经科学和 Yoshua Bengio 的机器学习之间做出选择。我那时仍然对两个学科都感兴趣,并与两个领域内的人士共同工作,我最后做出选择研究机器学习的决定确实变得好像是历史上一个重大时刻。那是一个没有回头路的关键点,而且自从我做出那个决定后就一直热情地专注于机器学习。

我意识到写完了我的故事而没有回答关于书的问题。在学习机器学习时,我最喜欢的两本书是 Chris Bishop 的书和 Daphne Koller 的书。当我听吴恩达的机器学习课程时,我不是很清楚线性代数或矢量分析( vector calculus ),所以这门课烧死了我的很多脑细胞。在夏季缓慢地翻阅 Chris Bishop 的书给了我再次温习我所需的知识片段并理解我之前在课堂上没掌握的知识的机会。 Daphne Koller 的书真正打开了我看向概率世界的视野,尤其是对我准备在研究院花大量时间学习玻尔兹曼机大有裨益。

2.除了计算机视觉是自然语言处理之外,作为一个博士生还能在深度学习的哪个方面做出成就?

机器人是一个大方向。Pieter Abbeel 已经把伯克利变成一个真正的机器人/深度学习动力工场。

3.对于您即将推出的《深度学习》一书,什么会是最好的预习书目?

那很大程度上取决于你的知识背景和你使用深度学习的目的。实际上,我们在文中推荐了一些书目。

你应该读一些书来弥补你在基础知识上的空缺。微积分、复杂度理论、图论是我们会用到的主要知识,并且不要沉溺于书本。如果你还没学过线性代数、概率论、数值计算,那么你应该读一些关于这些知识的书,文中会指明你应该在哪些地方深挖下去。

在此我随意推荐一本我很喜欢的书:初等微积分。

这本书讲述了如何用超实数进行微积分。大致来说,是关于运用基本代数法则处理无穷大或无穷小。这使得微积分及其衍生变得更加容易理解,因为你不必花费大量时间在学习极限和收敛性等方面上。

这感觉就像欺骗,因为我们只是创造了一种新的可以达到我们预期的数,但当且仅当实数的公理是成立的,超实数公理就是成立的。

如果你对微积分感到生疏或者还没有学微积分,我认为这本书是入门深度学习的好选择。

我也十分喜欢《函数理论基础和泛函分析》,但在这我只是列出我喜欢的书目,而不是为深度学习而准备的书目。

你需要读的书目也取决于你想用深度学习去解决什么样的问题,我们在正文中也提供了一些推荐书目作为深入研究下去的参考。

4.考虑到神经网络的升温,概率图模型的未来是什么?

这两者不是相互排斥的。神经网络的大多数应用可以看作是使用神经网络提供一些条件概率分布的图模型。你可能反驳说,图模型观点越来越没用,因为如此多的新近的神经网络拥有简单的图结构( GANs, VAEs 和 NICE 都是二分图( bipartite graph ),让每个潜变量与每个观察变量联系起来;PixelRNNs/MADE/NADE  都是完整的图,没有潜变量)。这些图与几年前流行起来的神经模型(比如 DBMs )相比还不是非常结构化。但是最近有一些模型不怎么使用图结构,比如具有辅助变量的 VAEs 。

5.OpenAI正在解决的问题中,最有意思的问题是什么?

每个人的兴趣都是不同的。我的兴趣在于,设计可以在高维、非凸连续博弈中实现纳什均衡(Nash equilibria)的算法。

6.在处理自然图像方面,相比于普通卷积神经网络(ordinary convolutional neural networks),是什么让生成式对抗网络(generative adversarial networks)更优越?

我并不完全明白普通卷积神经网络(ordinary convolutional neural networks)的意思,因为没有标准的用来生成图像的卷积神经网络。如果你想用卷积神经网络生成一些图像,那么它需要被包含于一些图像生成框架,如 GANs/VAEs/PixelCNNs/NICE 中。所以,比较 GANs 和 NICE 是有意义的,但比较 GANs 和卷积神经网络是没有意义的, GANs 只是训练卷积神经网络的一种方式,但并没有一个默认的训练卷积神经网络生成图像的方式。

7.在将来,2-5 人的小团队可以通过深度学习应用走向商业化?还是说巨头会在各个方面占据主导地位?

2-5 人的小团队可以做出一些成功的深度学习应用,「如果他们有数据可用」。巨头们会占据主导地位是因为他们有数据,从一无所有开始建立大数据流是很困难的。

8.深度残差网络(Deep Residual Networks ,DRNs)的重要性是什么?

DRNs 使得训练真正的深度模型变得更容易。DRNs 也确实是一种容易执行的在 ImageNet 和其他对象识别数据集上得到优异表现的方法。

9.您预期人工智能安全性什么时候会成为一个很严重的问题?

我认为人类恶意使用人工智能是人工智能安全方面最重要的问题。许多关于人工智能安全的讨论围绕的焦点都是某天人工智能会变得超级智能,并追求一些违背我们意愿的目标。这样的讨论似乎暗示着正确对抗邪恶人工智能的方式是确保人工智能永远不会偏离我们的预期。我认为这个观点有着很危险的局限。当然会有与人类,至少部分人的目标向违背的人工智能产生,因为不同的人会有不同的目标,而不同的人建立并操控着人工智能。我们已经发现了一些恶意的人工智能,例如破解验证码。相比于使用人工智能做特定目标的暗杀,这些问题都是次要的。但这是程度上的区别,而不是类型上的区别。随着人工智能渐渐变得实用,人们利用它制造更严重的伤害,同时也会用它做更好的事情。我认为不会有人们说「滥用人工智能是今天的一个大问题而不是以前有的问题」。

10.计算机视觉系统会不会有一天产生和人一样的视觉错觉?

我认为我们最终会消除目前非常简单的愚弄机器程序的视错觉。同样的,我认为我们也有能力避免那些使人迷惑的视错觉。人类的进化尚未移除这些视错觉是因为它们并不影响我们的生存。我们可以设计训练算法来消除它们。它们中的大部分,比如长度错觉,在计算机程序中是很容易避免的,这只需要数一数线上的像素数目。

11.使用批量规范化(Batch Normalization)会不会削弱深度神经网络的性能?

表征能力并不会被影响,因为深度神经网络的规模和偏移量参数可以学习抵消规范化的影响,所以每一层都具有精确学会和以前一样的功能集的能力。

有效容量(effective capacity)更为复杂。由批量规范化(Batch Normalization)引入的噪声具有一种正则化影响,但这可以通过优化工作得到极大的改善。

12.为什么 OpenAI 没有变得更加开放?比如使他们的想法或库开源?

我们最终一定会公开我们的想法和库。我们至少和大多数的学术实验室一样开放。要记得学术实验室有时会为资金做研究,他们不发表这些研究,或者收费发表这些研究。

我们将这些想法和代码保密,直到它们可以公开的主要原因在于,这对于像我这样的研究者个人的职业生涯有利。如果我的主要的想法都已付诸论文与实践,那将对我来说获得贷款开发 GANs 会更容易。如果我将用于制作 GANs 的所有个人想法公开,其他人可能在我完成之前已经实现,这会让申请贷款之类的事情变得困难。

13.我们怎样才能保证与社会共享人工智能的好处,而不仅仅是进一步把财富和权力集中起来?

通过开源人工智能资源,OpenAI 正帮助减轻这种现状,但这并不够。 YCombinator Research 在基本正在收入方面做实验,我认为像这样的事情是必要的。

14.在批规范化(batch normalization)中,为什么我们要标准化 XW 而不是 X?


如果标准化 X 或者 XW+b,批规范化也是可行的。

批规范化的作者建议标准化 XW,因为它更可能是高斯分布的。

X:通常 X 是 ReLU 层的输出,所以来自于一个有一些 0 的非高斯分布( non-Gaussian distribution),如果你对其标准化,仍然会有作用,它只是不会像标准化高斯分布那样的有效。此外,如果 X 是输入层,或者 X 是一个具有一定的高斯激活输出的层,比如 maxout ,那么它可以完美地标准化 X。

XW+b:如果你标准化它,批规范化还是会起作用,但这是在浪费精力。相同的 b 会被加进 minibatch 的每个样本,因此平均增加了 b。而 minibatch 去除了这种平均,所以 b 没有作用。

15.深度学习仅仅是炒作吗?

不,起码它在计算机视觉方面的工作是真正革命性的。

16.Sam Altman 和 Elon Musk 在 OpenAI 是如何参与工作的?

他们参与地相当积极,每周都在办公室里。我的角色大多数时间并不直接和他们接触,所以我不知道他们主要做了什么。他们都参与了招聘我的过程,在一些每周例会上我能看见 Elon Musk。

17.你为写深度学习著作投入了多少时间?

我不确定,个人觉得投入了大约 1500 小时。我们将它写在 Github 上的一个私人资料库,所以,为了回答这个问题,我写了一个脚本来列出我所有的提交记录,并去掉那些在一个小时内就提交的记录。

这可能有些高估,因为有时我可能只工作几分钟然后做一次提交,但我觉得更可能低估了,因为我在正常情况下大概工作 3 小时就做一次提交。同时,有很多工作不需要写到 Git 上,比如视频会议讨论制定计划,阅读和写邮件,检查我的合著者的工作,校对,阅读研究论文以整理到书中等等。总计大约 1800 小时。

18.对抗网络和对抗训练的联系和区别是什么?

下面是时间线:

  • Christian Szegedy 发明了对抗训练( adversarial training ),这种算法包括训练神经网络正确分类正常实例与「对抗实例( adversarial examples )」,对抗实例是指故意设计出来搞乱模型的最糟糕的输入实例。我们发表的论文「神经网络的有趣属性( Intriguing properties of neural networks )」描述了对抗训练。那时,对抗训练表现得还不是很好,实际上我们还没给它取名。

  • 我发明了生成式对抗网络,并写了一篇相关论文。生成式对抗网络是成对的网络:其中一个是生成器网络( generator network ),从由一系列训练范例定义的概率分布中学习创造新的样本;另一个是鉴别器网络( discriminator nerwork ),可以查看样本,辨别它是真的(来自数据集)还是假的(来自生成器网络)。这篇论文没有使用术语「对抗训练」。

  • 我找到了一种更快生成对抗实例的方法。这就在对抗训练的每一步上让制造一小批新的对抗实例变得实际可行,而不是在每个阶段只能制造几个实例。改进之后,对抗训练开始表现优异。在一篇揭示它事实上如何运行的论文「解释和利用对抗实例 ( Explaining and Harnessing Adversarial Examples )」中,我们首次给它命名为「对抗训练」

后来,其他人开始使用「对抗训练」指代生成式对抗网络。这就有点混淆不清了,但它在科技领域仍然有效。我们可以将生成式对抗网络视作执行对抗训练,对抗训练中的生成器网络为鉴别器网络制造对抗实例。或许,我们可以将「对抗训练」视作一个指代训练神经网络赢得游戏的过程的通用术语,而不是 Christian 和我用来指代以对抗实例来训练的术语。没有英语语言学院来确定如何使用词语,看上去「对抗训练」这样的词语表现出了自己的生命力,其含义正在不断扩大,超过了我们最初使用它来指代的范围。这可能在过渡时期引起一些困惑,但是不久我们将有希望达成清晰的共识。

19.你对使用深度学习的创业公司是敬仰还是失望?创业公司成功应用深度学习有多难?

有很多创业公司已经以一种令人敬仰的方式成功地应用了深度学习:

  • Indico 和 DCGANs (与 FAIR 合作)

  • Quest Visual 和 Word Lens

  • Nervana 和他们的 CUDA 核

  • Clarifai 在 2013 年赢得 ImageNet 竞赛

一家创业公司要成功应用深度学习显然没有任何人要做到这点那么困难。困难的是通过应用深度学习获取利益。大多数从使用深度学习中获利的公司能获利是因为他们掌握了有价值的数据,而不是因为他们拥有重要的算法优势。我认为那些主要资本是深度学习人才库的创业公司通常会以被收购告终。

20.你最喜欢的机器学习算法是什么?

我喜欢 dropout ,因为从单一模型构建指数级大规模集合这种观点太美妙了。我也认为二分权重的技巧在近似预测集合方面表现得如此好,简直让人惊讶。我不知道关于它为何在深度非线性模型上表现得如此好的任何理论推理,但它就是表现得这么好。

21.FractalNet 论文有多么重要?

现在做出判断可能为时尚早,因为这篇论文出现在 arxiv 上还不到三个月。而且我也只读了摘要。然而,我猜测它不是特别重要,主要是因为摘要里宣称改进的结果只是来自一个数据集,并且 CITAR-100 这个数据集大概不如 CIFAR-10 和 ImageNet 那么流行和有竞争力。但公平来说,你不应该评断这篇论文,直到你已经读完它或者听别人解读它;我也只是通过摘要猜测它没有取得重大进展。

有一篇相关论文,我认为更加重要,即「带有随机深度的深度网络 ( Deep Networks with Stochastic Depth )」。这篇随机深度论文引起了更广泛的影响,因为它表明未被归类于「深度神经网络在每一层上学习不同的表征」这一范式的深度模型表现得也确实很好。这带来很多证据支持「深度神经网络学习多步骤程序」范式。先前,人们意识到了这两种解释。大多数深度学习模型应该用两种范式同样好地描述,但是我感觉表征学习解释更加流行(考虑到一个叫做学习表征国际会议的重要的深度学习会议)。随机深度论文揭示了你可以有一个被许多步骤的程序更新的单一表征,而且这真的表现得很好。这篇论文还揭示了仅仅让程序运行更长时间就会有所助益,即使它没有被训练来运行那么长时间。这表明相对而言为人忽视的多步骤程序解释可能一直以来是更加重要的。

22.我如何有效学习人工智能和深度学习?

  • 读书:《深度学习》http://www.deeplearningbook.org/

  • 做一个基础项目,以确保你理解透了,比如实现一个 MNIST 分类器。

  • 寻找项目:Requests for Research

23.人工智能有哪些不显眼但发展空间巨大的应用?

基于模型的优化,或者我喜欢称之为「自动发明家」。

目前我们制造的模型接收输入,然后产生输出。我们放进去一张照片,模型输出一个值说明这是一只猫。

将来(从现在到一个有限的时间范围),我们将能够使用优化算法搜索模型的输入,这种模型产生最优化的输出。假设我们有一个可以查看汽车设计图、预测汽车的行驶速度的模型。然后我们在设计图的连续表征上使用梯度下降来针对最快的汽车做出优化。

现在,这种方法表现得还不是很好,因为你不能获得在真实世界中实际最优的输入。相反,你得到的是对抗实例,在模型世界里表现优异而在现实世界中却表现糟糕。例如,如果你开始优化一张飞机图片,然后用梯度下降法搜索一张被归类为猫的图片,梯度下降法将找出一张对我们人类观察者仍然看起来像飞机而被模型归类为猫的图片。

将来,当我们搞定对抗实例问题,我们将能够构建出用于测评医药有效性、基因和其它对人类而言太过复杂而不能有效处理的事情的深度网络。然后通过在设计空间的连续表征上使用梯度下降,我们将能发明新的药品,发现新的有用基因。

24.就研究目标、工作氛围和人才资源方面,你如何比较谷歌研究院、FAIR(Facebook 人工智能研究中心) 和 OpenAI?

谷歌(谷歌研究院是一个特定组织;我假定这个问题问的是一般意义上谷歌的研究):非常庞大的研究机构,在许多领域内有天赋异禀的人才,研究着令人难以置信的各种问题。谷歌的研究有一些是长期的,大多数是中短期的,而且结合了基础和应用研究。谷歌很容易做大规模的项目,但比高等学校更难快速地做小规模研究项目(因为你将同样的工具/过程用于大规模项目)。谷歌能获取你不能在任何其他地方获取的海量数据。

OpenAI :中等规模的研究机构(比大多数学术实验室要大),有专注于实现通用人工智能的深度学习途径的才华横溢的人才。几乎所有研究都聚焦于费力的基础问题,而不太关心短期收益;所有工作都是关于开发新的机器学习技术,而不是应用它们。我们的计算资源肯定足以支撑研究目的——请记住开发出一个机器学习模型后,公司必须针对数百万用户做出部署,所以在很多情况下公司将投入更多到生态布局而非训练模型上。OpenAI 不必将资源倾注到市场布局上,因为我们不制造产品。

FAIR :我没在 FAIR 工作过,所以没有太多发言权。我能说的主要都是猜测,而且可能是不对的,但是 FAIR 似乎是一个纯粹专注于深度学习的小团队,比 OpenAI 的强化学习更少,但是 FAIR 的计算资源和可获得的数据大概与谷歌相似。我 2013 年采访了 FAIR ,但是自那以后 FAIR 改变了很多;那时 Yann 还没有加入。

25.生成式对抗网络( GAN)未来有哪些激动人心的应用?

我乐意看到过去常常用于构建世界模型的 GAN 现在用于强化学习/动作规划。Chelsea Finn、Sergey Levine 和我写过一篇关于生成机器人运动视频的论文「通过视频预测的针对物理交互的无监督式学习( Unsupervised Learning for Physical Interaction through Video Prediction )」。

我希望 GAN 将最终很好地跟进我们在此使用的模型。我们连同论文一起发布的数据集应该能促进这个方向的研究。

26.深度学习如何提升我们对于因果性的理解?为什么?

如果这个问题指的是物理学中的因果性,或是因果模型,那么我不确定也不够资格来回答这个问题(问Pierre Baldi(加州大学尔湾分校计算机科学教授)可能是个更好的主意)。我对于因果模型的回答:我不认为深度学习为因果模型从根本上带来了什么新东西,;它只是为我们提供了一个在因果模型中的新工具。我很乐意回答更多具体的后续问题。

27.在机器学习研究中,有哪些很有意思但却被忽视的开发?

这里追溯到一个:Ronald Williams 1992 年的论文就提出了离散策略梯度/重新参数技巧技术,但它在 2013 年被重新发现之后才变得炙手可热:Simple statistical gradient-following algorithms for connectionist reinforcement learning。

28.OpenAI 现在有没有一些没有使用深度学习的项目?

据我所知,没有。但我们不是教条主义者;如果一个非深度的领域表现出对于人工智能的明显作用,那我们也会为之而工作。

记住,深度学习常常借鉴其他类型的机器学习,dropout是深度学习中的一种结合集成方法、创造贝叶斯深度学习模型是可能的、一些有正确的损失函数的神经网络可以被解释为有学习的内核的支持向量机等等。我们的许多项目仍在其他机器学习领域汲取灵感,并将这些想法融入到一个深度学习模型中。

29.对于一个需要决定进入行业或是读博的人,您会提出怎样的建议?

学术界一直要求你在薪酬方面,自由方面(例如搬迁)和生活方式上做出很多牺牲。在过去,它以做你感兴趣的而在行业里做不了的课题为回报。如今,在行业里做深度学习是可能的(而且我认为现在在行业里做会更好)。这意味着,有两条理由(就我所关心的)使你放弃学术界:

1)如果你认为目前的情况只是昙花一现,未来在深度学习领域做有意思的研究是不可能的。我的计划是,如果行业在深度学习领域失去了兴趣,我会转变方向,继续工作在一些前沿的可盈利的领域。

2)如果你还不能在行业中得到一份研究型的工作,那么做一份好的工作作为博士课程的一部分是进入研究世界的一个好方法。

对于这个回答,我将 OpenAI 作为「产业」的一部分,尽管它是非营利的。

30.对于刚开始博士学习生涯的学生,你有什么建议?

最重要的是做好的工作。

做好的工作的最好方式是找到一个可以提供给你大量的时间和自由去做你相信的研究博士课程,并且找到一个和你有相同研究方向的并且重视你的导师。在那些声望较低的大学总是有一些好的教授。而在那些有名的大学,你更可能被分派一些非研究性的工作。

申请很多外部的奖学金,这样你就不用花费时间在你的助学金上,可以专心做研究了。我获得了谷歌的 PhD Fellowship,为我在发明 GAN 时提供津贴。也有许多其他的奖学金,比如这个来自 Facebook 的:https://research.facebook.com/blog/facebook-graduate-fellowship-application-now-open-/

31.人工智能会变得有意识、有知觉吗?

我找不出一个对于「意识(conscious)」和「知觉(sentient)」的好定义。

有一些非常实用的定义,如意识到自己,可以说强化算法已经实现了这点,它可以学习自己的行为对于环境产生的影响。但我不认为这和我们的问题相关。

我通常将这类问题理解为机器是否可以有感受质(Qualia)。

人是否有感受质甚至都还无法确定,我觉得我有感受质,但我真的很难解释我的意思,而且我不能举出一个证明我有感受质的例子;我假设人和许多种动物有感受质,仅仅是因为在其他方面它们和我是相似的,一些喜欢 Daniel Dennett(美国哲学家、认知科学家)的人认为,感受质完全不存在,并且很乐意接受这种可能性。如果他们是正确的,那么「有意识的」「有知觉的」这些词完全不起作用,因为与人的任何东西都不相关联。尽管迄今为止我不参与反感受质辩论,因为他们大多卷入了文字游戏(在一次反感受质的思想实验中,如果颜色科学家玛丽「知道」关于颜色的一切,那么反感受质观点的就声称她也知道颜色带来的感受质……看起来这条理由纠结于「知道」带来的歧义),或是争辩于我们的大脑不善于处理、储存和在之后检索关于感受质的信息,这不同于人完全没有感受质的观点。

总而言之,我甚至不能确定我是「有意识的」,所以我当然不知道人工智能会变成什么样子,除非我们开发了一门更好的语言来确定所谓的感受质是什么意思,那样我们才能决定它是否存在,机器是否可以拥有它们。

我也十分好奇章鱼是否具有意识,因为它们和我们有着不同的进化路线,也有着发达的大脑。

32.与其它生成模型相比,生成对抗式网络的优势是什么?

与其它模型相比我认为有一下几个优势:

  • 根据实际的结果,它们看上去可以比其它模型产生了更好的样本。

  • 生成对抗式网络框架能训练任何一种生成器网络(理论上-实践中,用 REINFORCE 来训练带有离散输出的生成网络非常困难)。大部分其他的框架需要该生成器网络有一些特定的函数形式,比如输出层是高斯的。重要的是所有其他的框架需要生成器网络遍布非零质量(non-zero mass)。生成对抗式网络能学习可以仅在与数据接近的细流形(thin manifold)上生成点。

  • 不需要设计遵循任何种类的因式分解的模型,任何生成器网络和任何鉴别器都会有用。

与 PixelRNN相比,生成一个样本的运行时间更小。GAN 每次能产生一个样本,而 PixelRNN 需要一次产生一个像素来生成样本。

与VAE 相比,它没有变化的下限。如果鉴别器网络能完美适合,那么这个生成器网络会完美地恢复训练分布。换句话说,各种对抗式生成网络会渐进一致(asymptotically consistent),而 VAE 有一定偏置。

与深度玻尔兹曼机相比,既没有一个变化的下限,也没有棘手的分区函数。它的样本可以一次性生成,而不是通过反复应用马尔可夫链运算器(Markov chain operator)。

与 GSN 相比,它的样本可以一次生成,而不是通过反复应用马尔可夫链运算器。

与NICE 和 Real NVE 相比,在 latent code 的大小上没有限制。

明确一下,我认为很多这些其它方法都是很好的,它们相对于 GAN 也有不同的优势。

33.OpenAI 的团队结构是怎样的?

非常扁平,所有的技术人员都向 Ilya 或 Greg 报告。

34.深度无监督学习的未来是什么?

我对完全无监督的学习有些怀疑,因为它会很难知道你要执行什么样的任务。如果你想要训练一个模型识别照片中的人,那么它会需要提取完全不同的特征给不同的程序。一个可以通过看你的面部表情评估你的参与水平的电子游戏,相比于一个需要识别人身上衣服的标签并推荐购买位置的购物应用,需要提取的特征是不同的。因此我认为,深度无监督学习的未来将成为半监督的学习。Takeru Miyato 等人的虚拟对抗训练就是一个很好的例子:

  • Distributional Smoothing with Virtual Adversarial Training

  • Virtual Adversarial Training for Semi-Supervised Text Classification

另外还有 Tim Salimans 的带有特征匹配的 GAN 的半监督学习:

  • Improved Techniques for Training GANs

35.非营利的 OpenAI 的薪酬如何?

OpenAI 的薪酬和行业薪酬差不多。非营利组织不被允许给员工发过高的薪水,但是可以以市场标准,按照能力给予薪资。因为我们更喜欢雇佣对于我们的任务十分热情的员工,如果你寻求的是高薪水,OpenAI 的薪水在市场上不是最高的,你应该去别的地方;如果你对建立安全的人工智能很有激情,那你应该来这。

36.Dropout 和批规范化(Batch Normalization)之间有什么不同?

Dropout 基本上是用于正则化(regularization)。它为神经网络引入噪声以迫使神经网络学会更好的归纳方法以便应付噪声(这种说法过于简化了,Dropout 远不止是在噪声下的稳健性)。

批规范化基本上是用于改善优化(optimization)。其有一个副作用:批规范化碰巧会向网络中引入一些噪声,所以它也可以在模型的正则化上做点贡献。

当你有一个大型数据集时,较好的优化就很重要了,较好的正则化就没有那么重要;所以在大型数据集上,批规范化更重要。你当然也可以同时使用 Dropout 和批规范化——我在我的 GAN 中这么做过:Improved Techniques for Training GANs

37.在改善生成式对抗网络上,你有哪些研究方向?

我基本上是在想办法解决不收敛(non-convergence) 的问题。

我们面临的基本问题是,所有的理论都认为 GAN 应该在纳什均衡(Nash equilibrium)上有卓越的表现,但梯度下降只有在凸函数的情况下才能保证实现纳什均衡。当博弈双方都由神经网络表示时,在没有实际达到均衡的情况下,让它们永远保持对自己策略的调整是可能的。

38.有没有一种理论可以解释为什么批规范化具有正则化效应(regularzing effect)?

Batch 形式(batch norm)在某种意义上类似于 dropout ,它在训练的每一步为每个隐藏单元乘上一个随机值。在这种情况下,该随机值是所有 minibatch 内隐藏单元的标准差。因为不同实例在每一步骤是针对 minibatch 所包含的东西随机选择出来的,标准差也是随机浮动。

Batch norm 也在每一步从隐藏单元减去了一个随机值( minibatch 的均值)。 这两种噪音的来源意味着每一层必须学会稳健处理输入的许多变量,就像 dropout 一样。

39.为成为 OpenAI 的研究科学家,你采取了什么步骤?

在 OpenAI 选择我之前,我经历了和其他人一样的面试过程。我最初回答的问题是「如何让你的应用引起注意?」

OpenAI 雇佣了我。我并没有经历申请流程。我觉得 OpenAI 想招募我,是因为我发明了GAN,我是其深度学习教材的首要作者,并且我之前和 Wojciech 一起共事过。我也和 Ilya 一起工作过,但因为非招揽协议(non-solicit agreement),他不能推荐我。

40.针对当前机器学习系统的对抗性攻击的例子有哪些?

在金融领域,这种情况很常见:对对手的交易算法进行反向工程,欺骗对手做出有利于你的的交易。这就是一种通过操纵市场条件创造出的对抗性样本。由于这种做法的存在,模糊交易订单和时常改变算法就很重要了。由于这些公司是依靠保密性来获取利润的,因此,我们很难获得该领域真相事实方面的可靠数据。

垃圾邮件可被视为一种针对垃圾邮件过滤器的对抗性攻击。

一些 SEO 策略是合法的,但是另一些属于一种针对搜索排名算法的对抗性攻击。

计算机视觉可被用于破解 CAPTCHA 验证码。在解决地址数字转录问题期间,我的 Street View 的同事们和我不小心打造了一个 CAPTCHA  破解器( Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks)真实世界的犯罪肯定也能使用机器学习来让他们的机器人程序被识别为人类。

DARPA 网络挑战赛基本上就是一个自动化攻击竞赛: Cyber Grand Challenge (CGC)。

也有很多攻击可以在可控背景下得以证实,但是在其他背景下,可能发生,也可能不会发生。

Nicholas Papernot 和他的同事也展示了,在无需接入训练集、模型参数、结构描述,甚至得知哪种算法正被使用着的情况下,如何使用对抗性样本来愚弄远程托管的机器学习 API。这些攻击能对 MetaMind、Amazon 以及谷歌托管的 API 起作用:

  • Practical Black-Box Attacks against Deep Learning Systems using Adversarial Examples from Phenomena to Black-Box Attacks using Adversarial Samples

Kathrin Grosse 和合作者们展示了这些想法可被用于让恶意软件通过恶意软件检测器的检测:

  • Adversarial Perturbations Against Deep Neural Networks for Malware Classification

Alexey Kurakin、Samy Bengio 和我的研究也表明,可以制造出能够愚弄通过摄像头观察它们的机器学习系统的物理物体: Adversarial examples in the physical world (我们最近也发现 Dileep George 也注意到,一种不同的恶意输入,当目标识别器通过摄像头进行观察时,它也能愚弄物体识别器: Evolving AI Lab - University of Wyoming 在这种情况下,在一位人类观察者看来,图像看起来不像任何可识别的物体,但是却被机器学习模型视为一种特定物体。我主要研究这种情况:一个物体被伪装为另一种物体)

41.在你的研究经历中,最值得记住的失败是什么?你从中学到了什么?

绝大多数研究思路会失败,但是在机器学习中,尝试新想法的成本不高。我有一个高通量的筛选方法来研究我什么地方并行尝试了多个想法,希望的是丢弃大多数想法,只执行少数有希望的想法。正因为如此,当一个研究的想法得不到解决时,忘了它也不难。(我已经试过并丢弃了并行的几个研究思路,并将它们写进了这个 Quora 问答中。)

做研究,尤其是技术发展中的研究,也都常常会有失败,因为过时是无法避免的。所以即便我花了很长时间在玻尔兹曼机器上后它变得不再流行,或者 Pylearn2 的开发不再活跃后,我也觉得没什么。这是技术的自然属性。

困扰我的主要失败是输掉一场比赛来完成一项壮举。大约在 2007 年到 2012 年之间,我曾和其他很多人尝试过解决对象识别问题,但 Alex、Ilya、Geoff 给了我一个暴击,我花了很多时间试图做出更聪明的可以从较少的有标注数据中学习的算法。Alex、Ilya、Geoff 做到了一点(dropout),但是主要是他们升级了已经存在了几十年的算法,并在更多的数据中训练它们。在这种情况下,我主要误认为大约对于现有的算法来说,每类 1000 个样本就够用了。 和后来其他输掉这场比赛的每个人一起,我认为因为对于卷积网络来说,在 CIFAR-10 上的每类 5000 个样本,不能让它发挥得很好。在 ImageNet 上每类 1000 个样本不能让它们发挥的很好。

42.如何运用 GAN 处理文本?

理论上,如果你使用类似 REINFORCE 的东西,通过离散输出层来估计梯度应该是有效的。实际上,仅仅输出词的 softmax 分布会更容易。如果鉴别器(discriminator)的第一层是一个词嵌入层,那么当用于生成器时这将有利于得到嵌入的加权平均。

43.你最希望深度学习用于哪方面?

我希望将深度学习用于医药领域。

43.有兴趣深度学习通用对抗网络 。除了阅读论文,还有什么好的研究方法? 

请查看我们与论文有关的 GitHub 代码,并试着将之运用到几个不同问题中去。

44.如果我目前不在学术界工作,也不在某个产业研究背景下工作,如何发表人工智能研究成果?

写论文,然后发表在arXiv上,以及递交会议论文。依附一个机构并非发表论文的必要条件。

入门产业Ian GoodfellowGAN生成模型QuoraNLPOpenAI
1