Google AutoML最新技术解析:AutoML-Zero,从0构建模型

本文探讨Google提出的AutoML-Zero,一种从零开始构建机器学习算法的方法。文章详细介绍了算法生成的Setup、Predict、Learn流程,并讨论了NAS结构搜索中使用RandomSearch和进化式搜索的策略。尽管该方法在理论上构建了一套NAS流程体系,但其实际落地仍面临计算资源和效率等挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AutoML是我一直很关注的领域,也实际设计过相关的很多功能,但是目前AutoML在商业化层面落地的还不多。一个关键因素是AutoML现在在Feature生成或者调参方面有一些应用,但是这些应用更多地是建模的辅助。目前的AutoML技术很难实现从0构建一个算法。如果AutoML希望大规模的应用,一定要在NAS,也就是网络探索上有建树。这也是Google最新发表的这篇文章的原因,他提出AutoML-Zero,从零起步去构建算法。接下来作者会给大家分享下一些看法。

定义算法生成的流程

这篇论文比较有意思的一点是Google很好地定义了AutoML的一个流程。它把机器学习算法生成的流程拆分成了,Setup、Predict、Learn。如下图所示:

屏幕快照 2020-07-17 下午5.08.59.png

 

  1. Setup:算法结构的初始化

  2. Predict:模型的预测和验证

  3. Learn:算法的训练

NAS结构搜索

 

定义好流程之后就要看如何做网络结构的探索。这里面巧妙地运用了RandomSearch和进化式搜索。

在Setup阶段首先要构建一个海量的模型库,通过RandomSearch随机找一个模型作为初始。接着进入Predict阶段,在Predict阶段内置了一个预测数据集,可能是Cifar10之类的。然后用初始模型做预测,看效果。

将其中比较好的效果的模型保留,剩下的删除。接着在比较好的模型基础上增添一些op,比如增加一些正弦因子,如下图所示:

屏幕快照 2020-07-17 下午5.17.23.png

然后在Learn阶段去按照这个NAS结构构建新模型。

这样就构成了一个进化式的搜索体系,不断地生成新的网络结构,然后基于效果好的网络结构向上进化,不断递归这个流程,如下图所示:

屏幕快照 2020-07-17 下午5.20.07.png

整体流程大概是上面介绍的这样。

个人看法

这篇论文还是比较偏学术,其实是给大家构建了一套NAS的流程体系,但是这个流程其实要依赖海量计算能力才可能实现。虽然论文在后面花了十几页的篇幅证明可行性,但是我个人还是觉得这个方案流程是没问题的,但是实际落地可能有很多问题要解决。比如随机增加算子,会不会造成大量的报错,会不会浪费大量计算资源,所以真正的效果还需要观望。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值