您好 Ian 感谢您接受采访
您好 Andrew 感谢您的邀请 我很高兴能来到这里
现在你是世界上最炙手可热的深度学习研究者之一 请和我们一起来分享一下你的个人故事 你是怎样决定进入这个领域的呢
好的 我想 我最开始对机器学习感兴趣 是在认识你以前 之前我一直致力于研究神经系统科学 而我斯坦福的本科导师Jerry Cain鼓励我选修你的AI入门课程
哈哈 我现在刚知道这事
所以在此之前我一直都认为AI是一个很好的概念 但谈到在实际生活中的应用 我理解为 主要体现在游戏中 有很多事先编码的规则 让一些非玩家控制的角色 在不同的时间点按脚本说出不同的话 然后在你的AI入门的课程上 你讲解了诸如线性回归和线性回归误差的偏差和方差分解 我才开始意识到这是真正的科学 和神经科学相比,不如在人工智能方面开启一段科学职业生涯
我明白了 很棒 那之后呢
之后我回到学校成为你的课程的助教 噢 是的 想一个助教 其实对我来说 成为这门课的助教 是我生命中一个非常大的转折点 其中的一个学生 我的朋友Ethan Dreifuss 对Geoff Hinton的深度信念网络论文很感兴趣 最后在斯坦福 我们两个利用寒假的课余时间一起搭建了第一台 以GPU CUDA为基础的机器 并用它来运行玻尔兹曼机 在那时 我的直觉告诉我 深度学习是未来的主要发展方向 我也曾使用过许多其它的算法 比如支持向量机 但结果并不理想 训练集越多 算法计算得越慢 或者对于相同数量的训练集 很难在改变其他参数的情况下获得很大的性能提升 从那时开始 我就全力以赴投入深度学习中了
我记得Richard Reyna有一篇很古老的GPU论文 他在论文中的致谢部分 感谢你做了大量的前期工作
是的 那篇论文用到了我们搭建的一些机器 嗯 我搭建的第一台机器 是Ethan和我用我们自己的钱 在他妈妈家里组装的 在那之后 我们拿实验经费为斯坦福搭建了第二和第三台机器 太棒了 我从未听说这个故事 实在是太棒了
如今 基于之前你发明的 生成对抗网络(Gans) 产生了一场席卷深度学习领域的风暴 你是怎么产生这个想法的呢
我研究生成模型有很长一段时间了 生成对抗网络是一种 生成模型 当你有很多训练数据 并且你希望生成更多的虚构数据来加入训练集 在过去并没有出现过这种形式 在我产生生成对抗网络这个想法之前 曾有一些著名的方法用来生成模型 在我攻读博士期间 我尝试过其它所有的方法 比如玻尔兹曼机和稀疏编码 还有其它著名方法 我非常了解这些方法的优势和劣势 同时我也在寻找能避免所有劣势的机制 最后 当我在酒吧和我的朋友争论生成模型的时候 灵光一现 我告诉朋友们 你们需要做这个 这个 这个 和这个 并且我用人格担保这一定成功 但是他们没有相信我 我本来准备写一本关于深度学习的教科书 但是我有强烈的自信 一定能成功 我赶紧回家 写出了算法模型 并且真的成功了
所以你只用了一晚上就完成了生成对抗网络的第一个版本?
我离开朋友在酒吧举办的欢送会回到家后 差不多在凌晨 这个算法模型诞生了 第一版就能完美运行 非常非常幸运 我不用再去查找超参数或者其他东西
我之前在某个地方读到一个故事 你曾有一次濒临死亡 而这让你更为执着地从事人工智能研究 能不能和我们分享一下
好 其实当时我并没有垂死 但以为自己命不久矣 我当时头痛欲裂 感觉要炸了 医生说我可能有脑出血 当我等待MRI结果 想看看情况到底有多糟糕的时候 我突然意识到 当时我主要考虑的是 要确保能够有人能够 接手我的研究方向并继续下去 然而回想起来 那是一些非常可笑的研究方向 但这个经历让我意识到 实际上我人生中最重要的事情之一 是从事机器学习研究的工作
我了解了 非常好 当你以为自己快要死去的时候 你只是关心不要让研究半途而废 嗯 看来你已经找到了生命的真谛 嗯 现在 你仍然活跃在很多 关于生成对抗网络研究的活动中 能不能给我们讲讲你怎么看待生成对抗网络的未来
现在 生成对抗网络被用在很多不同的领域 比如半监督学习 为其它模型生成训练数据 甚至是模拟科学实验 理论上 这些事情都可以用其他的生成模型来完成 因此我认为生成对抗网络正处于一个很重要的抉择关头 现在 它们在很多时候能取得不错的效果 但是如果要真正发挥出它们的性能 更象是一门艺术而非科学 这有点象前人们对深度学习的感受 当时 我们使用 以玻尔兹曼机为基础的深度信念网络 但它们非常非常挑剔 我们逐渐开始使用Relu函数和批标准化 这使深度学习变得更加可靠了 如果我们能够将生成对抗网络变得和深度学习一样可靠 我想我们就能持续发现生成对抗网络在今天这些应用领域 拥有比现在更成功的应用表现 如果无法找出让生成对抗网络更为稳定的方法 那么我想它对深度学习的主要贡献 就是展示给人们 怎样使用生成模型来完成这些任务 最后 我们会用其它形式的生成模型来取代生成对抗模型 所以现在我大约用了40%的时间来让生成对抗网络变得更稳定
我明白了 很赞 那么就像前 有很多人投身于深度学习领域一样 比如你 最终会成为行业先锋 也许如今加入研究或使用生成对抗网络的人 如果能成功的话 最终也会开拓一片新天地
是的 很多人已经成为生成对抗网络的前期领航人 我觉得 假如你想给生成对抗网络勾勒出一些历史故事的话 不得不提到一些团队 比如Indico 和Facebook以及伯克利实验室做出的各种贡献
那么除了你的研究 你还合著了一本关于深度学习的书 能不能和我们分享一下?
是的 和Yoshua Bengio以及Aaron Courville一起写的 他们是我的博导 我们编写了第一本关于现代深度学习的教科书 有英文和中文两个版本 这本书获得了大家的肯定 两个版本加起来一共售出了大约有7万本 很多学生反馈 这本书让他们获益匪浅 在编写这本书时 与其他书有一点不一样的是 我们最开始强调 在涉足深度学习领域时所需要用到的数学基础知识 你在斯坦福的课程中提到 线性代数和概率论 是非常重要的数学基础 这让我记忆深刻 大家听到机器学习的算法 都会非常兴奋 但是如果真的想成为一个杰出的从业者 必须精通这些基础数学 否则无异于建造空中楼阁 所以我们在这本书的开始部分 就集中列出了所需的数学基础知识 这样你就不用去学习所有的线性代数的知识 而是可以迅速了解 那些对于深度学习来说非常重要的 学习算法所需要用到的线性代数方面的基础 因此对于一些数学并不是很好或者很多年都没有接触过数学的人来说 这个部分可以让他们无需其他教材
从这本书中直接学习所需要的知识 再开始深度学习的学习 是这样吗?
所有你需要知道的知识都在那里 这必然也需要花一些精力去学习和实践 嗯 嗯 好很好 如果有的人确实很害怕数学 这可能会有一点痛苦 但是如果你已经下定决心去学一些东西并且坚信可以掌握它 我想所有你需要的东西都在书里了 对于像你这样 在深度学习领域沉浸了很长时间的人来说
我比较好奇 如果你现在回首过去 能不能和我们分享一下 你觉得人工智能和深度学习 这些年都发生了怎样的演变
十年前 我觉得机器学习领域像是一个社区 在机器学习里最大的挑战是如何 利用深度学习来完成人工智能相关的任务 在一些很简单的任务上 其实我们有一些非常好的工具 比如识别提取特征的规律 人类的设计师可以做许多工作 来创造一些特征然后提交给计算机 而现在 这同样适用于很多不同的领域 比如预测某一个用户可能会点击广告 比如做一些基础的科学研究分析 但真正困难的是分析一个图像里上百万的像素 或者一段音频波形文件 这需要系统从无到有建立学习体系 大约5年前 我们解决了这个障碍 现在 我们所处的时代 愿意加入人工智能领域的研究者 可以选择许多不同的方向 或许现在最难的部分是让他们决定该走哪一个方向 你想让强化学习和监督学习一样成功吗? 你想让无监督学习和监督学习一样成功吗? 你想要确保机器学习的算法很均衡 避免我们想要杜绝的偏差吗? 如果能确保人工智能在社会上不会引发问题 例如引起社会动荡和造成大量人类失业 那我们就能保证每个人都可以受惠于人工智能 我想现在 的确有很多非比寻常的事情我们可以做 在预防人工智能带来负面影响的同时 确保我们能利用它带给我们的好处
现在 有很多人想参与AI工作 你能给他们分享下你的建议吗?
我想 很多想从事AI工作的人开始会想 他们绝对需要获得博士学位 或者其它类似的证书 我觉得 这实际上不是一个硬性要求 有一种获得大量关注的方式是写点好代码 然后放到GitHub上 如果你有一个有趣的项目 解决了在顶级水平工作的人员想要解决的问题 一旦他们发现你的GitHub库 他们会去找你 邀请你一起工作 去年我在OpenAI以及 今年我在谷歌招聘的很多人员 都是这种类型 我第一次对与他们共事感兴趣是因为 我看到了他们在互联网上的开源论坛上发布的一些代码 另外 通过写论文 并且把论文发布到也很好 有时候 在反复锤炼某个理念之后 足以真正在学术界做出新的学术贡献 但很多时候 达到这一点比较难 相比之下 通常创造出有用的软件产品 到达这一高度的时间要短的多
所以 认真读书 练习相关材料 把它放到GitHub 或者上
我觉得 如果你通过看书学习 那么同时做项目也真的很重要 或者 选择一种合适的方式 把机器学习的知识应用到你已经感兴趣的领域中 比如 如果你是一个野外生物学家 你希望进入深度学习领域 或许你可以使用深度学习来鉴别鸟类 或者 如果你不知道在你的生活中如何应用机器学习 你可以挑选一些东西来实践 比如创造一个街景门牌号分类器 其中所有的数据集已经有了 对你来说相当简单 采用这种方式 你可以 在阅读课本或 观看Coursera讲解概念的视频时练习所有的基本技能
那么 最近几年 我看到你在对抗样本方面做了许多工作 能跟我们谈一谈吗?
当然可以 我认为对抗样本 开启了一个新的领域 我把它称为机器学习安全 过去 我们见过一些计算机安全问题 其中攻击者可以愚弄计算机 让它执行错误的代码 这被称为应用级安全 还有一种假冒身份的攻击 人们可以愚弄计算机 让它相信 网络中的消息来源于某个人 但实际上并不是它们说的那个人 这被称为网络级安全 现在 我们可以看到 你也可以愚弄 机器学习算法 让它们做它们不应该做的事情 即使运行机器学习算法的程序执行了正确的代码 即使运行机器学习算法 的程序知道 所有这些信息是来自于谁 所以 我觉得 在开发一项新技术的起步阶段 就要把构筑安全性放在重要位置 我们发现 先构建一个可以运行的系统 再添加安全 这是非常困难的 所以 当我听到如果我们现在深入进去 开始预测机器学习面临的安全问题这一理念时 真的非常激动 我们可以确保 这些算法一开始就很安全 而不是若干年后想方设法从头开始打补丁
谢谢 太棒了 我觉得 你的故事里面有很多迷人的地方 虽然我们已经认识了很多年 但是我实际上并没有真正了解你 所以谢谢您今天的分享
偶 不客气 谢谢您邀请我 这是个很好的机会 好 谢谢大家 谢谢
翻译 | 审阅:Cousera Global Translator Community