专栏名称: AI前线
微信号:AI前线,ID:ai-front 运营
目录
相关文章推荐
黄建同学  ·  这个Vegs ... ·  昨天  
爱可可-爱生活  ·  本文揭示了看似信息冗余的 RLHF ... ·  昨天  
机器之心  ·  全球首发:QwQ-32B本地一键部署、309 ... ·  3 天前  
51好读  ›  专栏  ›  AI前线

谷歌AutoML凭什么成为“下一代AI黑科技”?

AI前线  · 掘金  · AI  · 2018-06-04 05:58

正文

谷歌AutoML凭什么成为“下一代AI黑科技”?


策划编辑|Vincent

编辑|Debra

AI 前线导读: 1 月 18 日,因为一条博客,AI 界炸锅了,谷歌云首席科学家李飞飞和谷歌云研发负责人李佳宣告 Cloud AutoML 的问世。什么是 AutoML?简单来说,就是不论你有没有机器学习相关的背景,哪怕你是个小白,都可以通过 AutoML 简单、高效地进行工作所需的模型训练,甚至被称为“下一代”机器学习系统。AI 前线将为你带来最全面的全球 AutoML 系统盘点,作为本系列的第一章,我们会从基础开始,让你全面了解 AutoML 及其功能,同时带来谷歌 AutoML 系统的详尽解析,话不多说,我们开始吧!

更多干货内容请关注微信公众号“AI 前线”,(ID:ai-front)
为什么我们需要 AutoML?

在谈论这个问题之前,我们需要先弄清楚机器学习的一般步骤。

其实,不论是图像识别、语音识别还是其他的机器学习项目,其结构差别是很小的,一个效果好的模型需要大量的经验来调优。实现过程有以下步骤:

  • 数据预处理

  • 特性选择

  • 模型算法选择

  • 调参

  • 上线后模型的再优化

  • 效果评估

在 AI 浪潮再次兴起的背景下,许多企业都对 AI 跃跃欲试,但因为相关人才在全球都呈现稀缺,企业想招人也不见得招得到,要不就是得重金聘请,像是美国顶尖 AI 科学家的年薪已经达到美国国家美式足球联盟(NFL)四分卫的水平(平均 270 万美金 / 年),甚至还有的已经超过 NBA 球星的平均薪水(2017 年数据:平均 800 万美金) 。因此,对有意尝试或导入 AI 的企业来说,“让机器学习得以自动化”具有很大的吸引力。

深度学习技术往往比较复杂,从头开发的难度较大,有一些公司提供了能帮助开发者轻松使用深度学习的自动化深度学习(ADL)平台,比如微软的 CustomVision.AI、谷歌的 Cloud AutoML,国内诸如第四范式、智铀科技等公司也推出了 AutoML 平台。作为 AI 前线 AutoML 专题文章的第一篇,本文将重点介绍谷歌的 Cloud AutoML。

谷歌 Cloud AutoML
概况

AutoML 的概念源自 2012 年学术界提出一个新观念——Programming by Optimization(PbO),字面上的意思是指以最优化程序开发,乍听之下似乎看不出个所以然,这却是一个相当创新的观念,实质上就是要解决编程时人工调校参数的问题。

今年 1 月, 谷歌发布了 Cloud AutoML 。北京时间 1 月 18 日凌晨时分,李飞飞连发三条推特,发布了谷歌最新 AI 产品——Cloud AutoML Vision,“无需精通机器学习,每个人都能用这款 AI 产品定制机器学习模型。”

链接:https://cloud.google.com/automl



AutoML Vision 是 Cloud AutoML 这个大项目推出的第一项服务,提供自定义图像识别系统自动开发服务。根据谷歌介绍, 即使是没有机器学习专业知识的的小白,只需了解模型基本概念,就能借这项服务轻松搭建定制化的图像识别模型。 只需在系统中上传自己的标签数据,就能得到一个训练好的机器学习模型。 整个过程,从导入数据到标记到模型训练,都可以通过拖放式界面完成。

除了图像识别,谷歌未来还计划将 AutoML 服务拓展到翻译、视频和自然语言处理等领域。

解析

Google Cloud AutoML 服务使用了三个核心技术,分别是: 神经架构搜索技术(Neural Architecture Search Technology)、 learning2learn 以及迁移学习 (transfer learning) 。

通过这些技术把参数以及结构的调整交给机器。运作的概念是机器利用神经架构搜索技术不断测试,找出一个好的参数+神经网络结构的组合,AI 开发人员觉得这个组合不错,认可了之后,机器就会记住,下一次就会做得更快更精准,这就是 learning2learn;或是可以将此组合转移到另外的应用场景下使用,这就是迁移学习。

AutoML 神经架构

通常来说,机器学习模型是由工程师和科学家小组精心设计的。手动设计机器学习模型的过程是很困难的,因为所有可能的模型的搜索空间可以组合地大,典型的 10 层网络一般具有 10^10 个候选网络。出于这个原因,设计网络的过程往往需要大量的时间和具有重要机器学习专业知识的人进行实验。


GoogleNet 架构。这个网络的设计需要从卷积体系结构的初始版本进行多年的仔细实验和改进。

为了使机器学习模型的设计过程更容易获得,谷歌一直在探索使机器学习模型的设计自动化的方法。在他们研究的许多算法中,演化算法和强化学习算法表现出了很大的希望。

在谷歌内部被称为 Auto ML 的方法中,一个控制器神经网络可以提出一个“子”模型架构,然后可以在特定任务中对其进行训练和评估质量。之后,这种反馈被用来通知控制器如何改进其下一轮提案。经过数千次的重复,新的体系结构生成了。最终,控制器学习为空间区域分配高可能性,以在保持出来的验证数据集上实现更高的准确性,并且对建筑空间区域得分较低的区域的可能性低。以下是这一过程的样子:



这种方法已经被谷歌应用于深度学习中的两个高度基准测试数据集:使用 CIFAR-10 进行图像识别以及使用 Penn Treebank 进行语言建模。在这两个数据集上,该方法可以设计出与机器学习专家设计的最先进模型相媲美的模型。

那么,它会产生什么样的神经网络?举一个例子:经过训练的经常性架构可以预测 Penn Treebank 数据集中的下一个单词。这里左边是由专家设计的神经网络。右边是上述方法创建的经常性架构:



机器选择的体系结构确实与人体设计共享一些共同特征,例如使用加法将输入和以前的隐藏状态组合在一起。但是,有一些值得注意的新元素 :例如,机器选择的体系结构包含乘法组合(右图中最左边的蓝色节点,标记为“ elem_mult ”)。这种类型的组合对于经常性网络并不常见,这可能是因为研究人员没有看到明显的好处。有趣的是,这种方法最简单的形式最近由人类设计师提出,他们也认为这种乘法组合可以实际上减轻梯度消失 / 爆炸问题,这表明机器选择的架构能够发现一种有用的新型神经网络架构。

这种方法也可以证明为什么某些类型的神经网络工作得很好。这里右边的架构有很多通道,所以梯度可以倒退,这可能有助于解释为什么 LSTM RNN 比标准 RNN 更好地工作。

迁移学习

迁移学习 (Transfer learning) 顾名思义就是就是把已学训练好的模型参数迁移到新的模型来帮助新模型训练。

考虑到大部分数据或任务是存在相关性的,所以通过迁移学习可以将已经学到的模型参数(也可理解为模型学到的知识)通过某种方式来分享给新模型从而加快并优化模型的学习效率不用像大多数网络那样从零学习(starting from scratch,tabula rasa)。

Cloud AutoML 通过 迁移学习(Transfer Learning) 将已训练完成的模型,转移到新的模型训练过程。这样,能够用较少量数据训练出机器学习模型。对于医疗领域而言,这点尤为重要,因为在为罕见疾病和一些特殊案例建模时,往往无法取得足够的训练数据。







请到「今天看啥」查看全文