AI 都能开发 AI 软件了,并且做得比人类好

摘要

为了探讨「AI 软件自行开发 AI 软件」的可能,Jeff Dean 和 Google Brain 团队正在进行一项研究:自动机器学习(automated machine learning)。

近几年,深度神经网络在很多领域都取得了成功的应用,比如图像识别、语音识别和机器翻译。但少有人知道,设计一个深度神经网络并不是件容易事,需要优秀的人才和大量专业的知识。

「目前研发 AI,你得有该领域的专业知识、庞大的数据量和计算能力。」近日,Google Brain 负责人 Jeff Dean 在 AI Frontiers 会议上探讨了这个问题,「如果不用人类的机器学习专业知识,我们能否开发出一个 AI 软件呢?」

为了探讨「AI 软件自行开发 AI 软件」的可能,Jeff Dean 和 Google Brain 团队正在进行一项研究:自动机器学习(automated machine learning)。Jeff 认为,这是最有前景的研究方向之一,相关论文在已经于 2016 年 11 月发表在 ArXiv 上。

Google Brain 发现,一个神经网络的结构和连接能够以长度不同的字符串指定。他们利用这种特性打造了神经架构搜索(Neural Architecture Search),希望通过梯度法找到更优的架构。

屏幕快照 2017-01-24 13.19.32.png

具体来说,Google Brain 用一个递归神经网络作为控制器(controller)。控制器以生成字符串的方式构造一个子网络(child network),然后用真实数据去训练子网络,进而在验证集上得到一个准确度。接着,将这个准确度作为反馈信号来计算策略梯度,进而升级控制器。

在下一个迭代中,控制器就会给到架构更大的可能性,以获得更高的准确度。换言之,随着一次又一次迭代,控制器会自我学习去改进它的性能。

Google Brain 称,他们的神经架构搜索可以从零开始设计出一个新颖的神经网络。在利用 CIFAR-10 数据集进行图像识别测试时,其识别错误率为 3.84%,比人类设计的最先进的神经网络模型仅高 0.1%,但速度快了 1.2 倍。

而在用于自然语言处理的 Penn Treebank 数据集上,神经架构搜索构造出来的递归神经单元也超越了被广泛使用的 LSTM 神经单元等最新基准指标,在复杂度方面比后者好 3.6 倍。

简言之,一个深度神经网络,能够通过自己开发新的子网络来提高性能,最终结果甚至比人类设计的最佳神经网络都要好。

这是不是意味着,连开发机器学习软件的程序员都要被 AI 取代了?

至少现在还很难。Google Brain 能够自行设计神经网络的 AI 需要 800 个高性能 GPU 去驱动。与之相比,人类设计的大多数实用深度神经网络只需要几十个 GPU。就连 AlpahGo 所需要得 GPU 也只有一百多个。

但在进行这类研究的机构不止 Google Brain 一支团队,非盈利机构 OpenAI麻省理工学院加州大学伯克利分校DeepMind 都曾发表过相关论文。

MIT 媒体实验室研究员 Otkrist Gupta 相信,需要如此之多 GPU 驱动自动机器学习的情况将会改变。他和 MIT 的同事准备开源一个能够自行设计深度学习网络的 AI 软件,让更多研究员参与进来。

最新文章

极客公园

用极客视角,追踪你最不可错过的科技圈。

极客之选

新鲜、有趣的硬件产品,第一时间为你呈现。

顶楼

关注前沿科技,发表最具科技的商业洞见。