【译】Google's AutoML: Cutting Through the Hype

这是系列文章的第3部分。 第1部分在这里第2部分在这里

为了宣布谷歌的AutoML,谷歌首席执行官桑达皮采写道 :“今天,设计神经网络是非常耗时的,并且需要专业知识限制其用于较小的科学家和工程师社区。 这就是为什么我们创建了一种名为AutoML的方法,表明神经网络可以设计神经网络。 我们希望AutoML能够拥有一些博士今天拥有的能力,并且可以在三到五年内使数十万开发人员能够根据他们的特殊需求设计新的神经网络 。“(强调我的)

谷歌首席执行官桑达皮采表示,我们都需要设计自己的神经网络

谷歌首席执行官桑达皮采表示,我们都需要设计自己的神经网络

当谷歌的人工智能负责人杰夫迪恩建议100倍的计算能力可以取代对机器学习专业知识的需求时 ,计算成本高昂的神经架构搜索是他用来说明这一点的唯一例子。 ( 在他的TensorFlow DevSummit主题演讲中大约23:50左右

这提出了许多问题:成千上万的开发人员需要 “根据他们的特殊需求设计新的神经网络”(引用Pichai的愿景 ),还是神经网络有一种有效的方法可以推广到类似的问题 ? 大量的计算能力真的可以取代机器学习专业知识吗?

在评估谷歌的声明时,记住谷歌有一个既得的经济利益,告诉我们有效使用深度学习的关键是更多的计算能力 ,因为这是一个他们明显击败我们其他人的领域。 如果属实,我们可能都需要购买Google产品。 就其本身而言,这并不意味着谷歌的说法是错误的,但很好地了解他们的陈述可能构成的财务动机。

在我之前的文章中,我分享了AutoML历史的介绍 ,定义了什么是神经架构搜索 ,并指出对于许多机器学习项目,设计/选择架构远不是最困难,最耗时或最多的。痛苦的一部分问题 。 在今天的帖子中,我想特别关注Google的AutoML,这是一个受到很多媒体关注的产品,并解决了以下问题:

什么是Google的AutoML?

尽管AutoML领域已经存在多年(包括开源AutoML库研讨会研究竞赛 ),但在2017年5月,Google为其神经架构搜索选择了AutoML一词。 在谷歌I / O大会上发布的博客文章中,谷歌首席执行官桑达皮采 写道“这就是为什么我们创建了一种名为AutoML的方法 ,表明神经网络可以设计神经网络”和Google AI研究人员Barret Zoph和Quoc Le写道: “在我们的方法( 我们称之为”AutoML“ )中,控制器神经网络可以提出一个”子“模型架构......”

Google的Cloud AutoML于2018年1月宣布为一套机器学习产品。 到目前为止,它包含一个公开可用的产品AutoML Vision ,这是一种识别或分类图片中对象的API。 根据产品页面 ,Cloud AutoML Vision依赖于两种核心技术: 转移学习神经架构搜索 。 既然我们已经解释了神经架构搜索 ,现在让我们看一下转移学习,看看它与神经架构搜索的关系。

关于谷歌的AutoML和神经架构搜索的许多文章中的一小部分的头条新闻

关于谷歌的AutoML和神经架构搜索的许多文章中的一小部分的头条新闻

注意:Google Cloud AutoML还有一个仍然处于alpha状态的拖放式ML产品 我在2个月前申请访问它,但我还没有收到谷歌的回复。 我计划在帖子发布后写一篇文章。

什么是转学?

传递学习是一种强大的技术,通过利用已经训练过类似的大型数据集的预训练模型,可以让拥有较小数据集或较少计算能力的人获得最先进的结果。 因为通过转移学习学习的模型不需要从头学习,所以与不使用转移学习的模型相比,它通常可以以更少的数据和计算时间达到更高的准确度。

转学习是我们在整个免费的实用深度学习编码器课程中使用的核心技术 - 我们的学生一直在申请从他们自己的创业公司到财富500强公司的所有生产。 虽然转移学习似乎被认为比神经结构搜索“不那么性感”,但它被用来实现突破性的学术成果,例如杰里米·霍华德和塞巴斯蒂安·鲁德将转学习应用于NLP ,后者实现了状态。 - 对6个数据集进行分类,并作为OpenAI 该领域进一步研究的基础。

神经架构搜索与转移学习:两种相反的方法

转移学习的基本思想是神经网络架构将针对类似类型的问题进行推广:例如,许多图像具有以各种不同类型显示的基础特征(例如角落,圆形,狗脸或轮子)的图像。 相比之下, 促进神经架构搜索每个问题的基本思想恰恰相反 :每个数据集都有一个独特的,高度专业化的架构,它将表现最佳。

来自Matthew Zeiler和Rob Fergus的4个特征的例子由图像分类器学习:角落,圆圈,狗脸和轮子

来自Matthew Zeiler和Rob Fergus的4个特征的例子由图像分类器学习:角落,圆圈,狗脸和轮子

当神经架构搜索发现新架构时,您必须从头开始学习该架构的权重,而使用传输学习,您可以从预先训练的模型开始使用现有权重。 从这个意义上说,你不能在相同的问题上使用神经架构搜索和转移学习:如果你正在学习一个新的架构,你需要为它训练新的权重; 而如果您在预训练模型上使用转移学习,则无法对架构进行实质性更改。

当然,您可以将转移学习应用于通过神经架构搜索学习的架构(我认为这是一个好主意!)。 这只需要少数研究人员使用神经架构搜索并开源他们找到的模型。 所有机器学习从业者都没有必要使用神经架构在他们可以改为使用转移学习时搜索所有问题 。 然而, Jeff Dean的主题演讲Sundar Pichai的博客文章 ,Google Cloud的宣传材料和媒体报道都表明了相反的观点:每个人都需要能够直接使用神经架构搜索。

神经架构搜索有什么用处

神经架构搜索有助于寻找新的架构! 谷歌的AmoebaNet是通过神经架构搜索学习的,并且(包括fast.ai的进步 ,如积极的学习计划和随着训练的进展改变图像大小)现在是在一台机器上训练ImageNet最便宜的方式

AmoebaNet没有设计具有扩展能力的奖励功能,因此它不能像ResNet一样扩展到多台机器,但是可以在将来学习可扩展的神经网络,针对不同的质量进行优化。

需要更多证据

我们还没有看到证据表明每个数据集最好使用自己的自定义模型建模,而不是微调现有模型。 由于神经结构搜索需要更大的训练集,因此对于较小的数据集尤其如此。 甚至谷歌自己的一些研究也使用可转移技术,而不是为每个数据集寻找新的架构,例如NASNet博客文章 ),它在Cifar10上学习了一个架构构建块,然后使用该构建块为ImageNet创建架构。 我不知道有任何广泛进入的机器学习比赛已经使用神经架构搜索获得了。

此外,我们不知道超级计算昂贵的神经架构搜索方法,谷歌的推广是一种优越的方法。 例如,最近的论文,如高效神经架构搜索(ENAS)
可区分架构搜索(DARTS)提出了更有效的算法。 DARTS只用了4个GPU天 ,相比之下,NASNet1800 GPU天,AmoebaNet为 3150 GPU天 (所有人都在Cifar-10上学到了相同的精度)。 杰夫迪恩是ENAS论文的作者,该论文提出了一种计算成本 1000倍的技术,这似乎与他在一个月后在TF DevSummit上强调使用计算成本高100倍的方法不一致。

那为什么所有关于Google的AutoML的炒作?

鉴于上述限制,为什么Google AutoML的炒作与其经过验证的有用性(至少到目前为止)如此不成比例? 我想有几个解释:

  1. 谷歌的AutoML强调了将一个学术研究实验室嵌入营利性公司的一些危险 。 试图围绕有趣的学术研究构建产品是一种诱惑,而不评估它们是否满足实际需求。 这也是许多人工智能初创企业的故事,例如MetaMind或几何智能,最终在没有生产产品的情况下最终成为收购者。 我对创业公司创始人的建议是避免制作博士论文,避免只招聘学术研究人员。

  2. 谷歌擅长营销 。 许多局外人认为人工智能是一个难以接近和令人生畏的领域,他们并不认为他们有办法评估索赔,特别是像谷歌这样的狮子公司。 许多记者也成了这个问题的牺牲品,并且不加批判地将谷歌的炒作引入了炙手可热的文章。 我会定期与不参与机器学习的人交谈,但他们对从未使用过的各种Google ML产品感到兴奋,也无法解释任何问题。

    歌人工智能研究人员发布了 “深度学习技术来重建真正的人类基因组”,将自己的工作与诺贝尔奖获奖发现(狂妄自大!)相比较,谷歌对其自身成就的误导性报道的一个例子就出现了,故事被选中连线 然而,约翰斯·霍普金斯大学生物医学工程,计算机科学和生物统计学的杰出教授史蒂文·萨尔茨伯格(Steven Salzberg) 驳斥了谷歌的帖子 。 萨尔茨伯格指出 ,这项研究实际上并没有重建人类基因组,而是“仅仅是对现有软件的渐进改进,甚至可能还不如此。”许多其他基因组学研究人员都赞同同意 Salzberg。

    谷歌正在进行一些伟大的工作,但如果我们不必筛选如此多的误导性炒作来弄清楚什么是合法的,那么它会更容易被欣赏。

  3. 谷歌有理由说服我们,有效使用深度学习的关键是更多的计算能力 ,因为这是一个他们明显击败我们其他人的领域。 AutoML的计算成本通常非常高,例如谷歌使用450 K40 GPU 7天(相当于3150 GPU天)来学习AmoebaNet的例子。

    虽然工程师和媒体经常在裸机和其他更大的东西上流口水 ,但历史表明,创新往往是通过约束和创造力而产生的。 Google使用最昂贵的计算机处理最大的数据; 这真的可以归结为我们其他人面对生活在资源有限的有限世界中的问题吗?

    创新来自不同的做事,而不是做大做事。 fast.ai最近在斯坦福大学DAWNBench比赛中取得的成功就是其中的一个例子。

我们如何解决机器学习专业知识的不足?

回到Jeff Dean在他的TensorFlow DevSummit主题演讲中提出的关于机器学习从业者全球短缺的问题,可以采用不同的方法。 我们可以通过以下几种方式消除使用深度学习的最大障碍:

  1. 使深度学习更容易使用
  2. 揭穿关于深度学习所需要的神话
  3. 增加缺少使用云GPU所需资金或信用卡的人的访问权限

使深度学习更容易使用

使深度学习更容易使用的研究具有巨大的影响,使培训更好的网络更快更简单。 现已成为标准做法的令人兴奋的发现的例子如下:

  • Dropout允许对较小的数据集进行训练而不会过度拟合。
  • 批量标准化允许更快的培训。
  • 整流线性单元有助于避免梯度爆炸。

更新的研究旨在提高易用性,包括:

  • 学习速率查找器使训练过程更加健壮。
  • 超级收敛加速了培训,需要更少的计算资源。
  • 现有体系结构的“自定义头” (例如,修改ResNet,最初设计用于分类,以便可用于查找边界框或执行样式传输),可以在一系列问题中更轻松地重用体系结构。

以上发现均未涉及裸金属电源; 相反,所有这些都是关于以不同方式做事的方式的创意。

解决关于深度学习需要什么的神话

另一个障碍是许多神话让人们相信深度学习不适合他们:错误地认为他们的数据太小,他们没有正确的教育或背景,或他们的计算机不够大。 一个这样的神话说,只有机器学习博士能够使用深度学习,许多公司无法雇用昂贵的专家甚至不打扰尝试。 但是,公司不仅可以培训他们已经拥有的员工成为机器学习专家,甚至更可取,因为您现有的员工已经拥有您所在地区的专业知识!


在我在麻省理工学院技术评审会上的演讲中,我提到了6个神话,这些神话导致人们错误地认为使用深度学习比现在更难。

 

对于与我交谈的绝大多数人来说, 进入深度学习的障碍远远低于他们的预期 :一年的编码经验和访问GPU。

增加访问权限:Google Colab笔记本电脑

虽然云GPU(每小时约50美分)的成本在我们许多人的预算范围内,但我会定期与世界各地的学生联系,这些学生完全无法使用任何GPU 。 在某些国家/地区,有关银行和信用卡的规定可能会使学生难以使用AWS等服务,即使他们有钱。 谷歌Colab笔记本电脑是一个解决方案! Colab笔记本提供了一个Jupyter笔记本环境,无需设置即可使用,完全在云端运行,并允许用户访问免费的GPU(尽管不允许长时间使用GPU)。 它们还可用于创建包含在交互式环境中运行的工作代码示例的文档。 谷歌colab笔记本将比谷歌的AutoML更多地实现深度学习的民主化; 也许这将成为未来谷歌营销机器的更好目标。

http://www.fast.ai/2018/07/23/auto-ml-3/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值