前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >谷歌AutoML鼻祖Quoc Le新作AutoML-Zero:从零开始构建机器学习算法

谷歌AutoML鼻祖Quoc Le新作AutoML-Zero:从零开始构建机器学习算法

作者头像
新智元
发布于 2020-03-16 08:19:53
发布于 2020-03-16 08:19:53
80400
代码可运行
举报
文章被收录于专栏:新智元新智元
运行总次数:0
代码可运行

新智元报道

来源:google

编辑:白峰

【新智元导读】市面上的自动机器学习算法多如牛毛,但并没有得到很好的普及,因为这些算法限制了搜索的空间,很多研究者还是需要自己设计机器学习模型的结构,而谷歌此次发布的AutoML-Zero搜索空间完全没有限制,可以从最基础的数学公式开始。「新智元急聘主笔、编辑、运营经理、客户经理,添加HR微信(Dr-wly)了解详情。」

AutoML 试图将特征工程、模型选择、参数调节这些与特征、模型、优化、评价有关的重要步骤进行自动化地学习,使得机器学习模型无需人工干预即可生成。谷歌这次提出的方法跟以往的有何不同呢?

新方法可自动搜索新算法,仅利用基本的数学公式

Automl-Zero 旨在自动发现机器学习算法,从空的或随机的程序开始,只使用基本的数学运算。它可以同时无偏好地搜索机器学习算法的所有方面,包括模型结构和学习策略

尽管 Automl-Zero 的搜索域很广,但进化搜索看起来表现不错,通过搜索发现了线性回归、带有反向传播的双层神经网络,甚至是超过手工设计的复杂度相当的基线算法。

上面的图显示了我们实验中的一个例子,可以看到演化算法是如何来一步步解决二分类任务的。首先是个线性模型,没有任何优化方法,然后逐步发现了 SGD 来进行优化,接着开始加入随机的学习率,再往后发现了ReLU激活函数,随机权重初始化,梯度归一化等等,越来越接近我们手工设计的网络结构和优化方法。

如果想了解更多的细节可以去论文中查找。原文链接:https://arxiv.org/abs/2003.03384

几乎从零开始,跟传统的组装型自动机器学习区别很大

我们手工构建一个典型的机器学习模型,要经过以下几个步骤,数据预处理、模型构建、学习、预测,而 AutoML-Zero 的工作原理,可以简单理解为将各个步骤涉及的基本数学方法放在一个篮子里,然后随机从篮子取出放在对应的步骤,利用进化搜索,不断得到最优的组合

AutoML-Zero 跟之前的自动机器学习有什么异同呢?之前的自动学习主要集中在体系结构上,它依赖于专家设计的复杂层作为构建块——或类似的限制性搜索空间。我们的目标是证明 AutoML 可以走得更远: 只需使用基本的数学运算作为构建块,来发现一个完整的机器学习方法, 我们通过引入一个新的框架来证明这一点,在这个搜索空间中可以显著减少人类经验的偏见,发现一些有趣的东西。

我们用 auto-sklearn 来解释下传统的自动机器学习所使用的方法,对细节感兴趣的同学可以看下这篇论文。

原文链接:http://papers.nips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf

作者开发了一个基于 scikit-learn 的强大的新 AutoML 系统(使用 15 个分类器,14 个特征预处理方法和 4 种数据预处理方法,从而产生具有 110 个超参数的结构化搜索空间)。这个系统是在有限的参数空间中,通过自动对比在类似数据集上的性能,以及评估这些自动构造的模型性能,来实现自动搜索最优的机器学习方法。

如何用Python实现传统的AutoML

到这里你应该理解了,AutoML-Zero 的普适性更强一些,可以发现未知的机器学习方法,而 auto-sklearn 只是在现有的结构和参数中自动找到最优的。

我们用 Python 来举个简单的例子:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import autosklearn.classification
import sklearn.model_selection
import sklearn.datasets
import sklearn.metrics
X, y = sklearn.datasets.load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = \
sklearn.model_selection.train_test_split(X, y, random_state=1)
AutoML = autosklearn.classification.AutoSklearnClassifier()
AutoML.fit(X_train, y_train)
y_hat = AutoML.predict(X_test)
print("Accuracy score", sklearn.metrics.accuracy_score(y_test, y_hat))

如果想亲自动手实验的话可以安装 Anaconda ,它集成了所需要的大部分Python科学计算库,然后通过conda安装 auto-sklearn。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
8 条评论
热度
最新
不错不错 跟着操作就行 简单易懂
不错不错 跟着操作就行 简单易懂
回复回复点赞举报
打印中文会乱码,不知道是怎么回事
打印中文会乱码,不知道是怎么回事
回复回复点赞举报
一直想用protobuf这个东西。但是一直没用上。。
一直想用protobuf这个东西。但是一直没用上。。
回复回复点赞举报
感觉这个库缝合了clang和Go的类型
感觉这个库缝合了clang和Go的类型
回复回复点赞举报
学到了,谢谢分享,感谢大佬
学到了,谢谢分享,感谢大佬
回复回复点赞举报
感谢作者又学习到了一个新的知识
感谢作者又学习到了一个新的知识
回复回复点赞举报
牛啊牛啊
牛啊牛啊
11点赞举报
/抱拳
/抱拳
回复回复点赞举报
推荐阅读
微信小程序 获取 手机验证码 短信验证码 后端功能实现解析
本文原创首发CSDN,链接 https://mp.csdn.net/console/editor/html/106041472 ,作者博客https://blog.csdn.net/qq_41464123 ,转载请带上本段内容,尤其是脚本之家、码神岛等平台,谢谢配合。 ----
Designer 小郑
2023/08/01
1.7K0
微信小程序 获取 手机验证码 短信验证码 后端功能实现解析
短信 | 教你使用 JAVA实现 【短信发送】 功能
需求:使用java来实现‘短信发送’功能 发送方:【码神联盟】 接收方:境内手机号 环境:myeclipse、jdk1.8、腾讯云jar包、maven 开发步骤 1:新建maven工程,如下: 2:开
码神联盟
2018/07/30
15.8K0
短信 | 教你使用 JAVA实现 【短信发送】 功能
SpringBoot整合腾讯短信服务发送验证码
我这里的参数为code 和 3 code对应我随机生成的二维码 3是二维码的有效期 参数顺序与个数与你自己创建的模板内容有关 例如我的模板为这样所以这么传递参数
暴躁的程序猿
2022/03/23
2.8K0
SpringBoot整合腾讯短信服务发送验证码
腾讯云短信发送功能API-PHP接入
最近测试了一下短信发送功能,接入了腾讯云的API. 登录腾讯云https://cloud.tencent.com/ 国内短信新购三重礼 直达地址:https://cloud.tencent.com/
用户5907943
2019/07/26
9K0
java实现发短信功能---腾讯云短信
前言 如今发短信功能已经成为互联网公司的标配,本篇文章将一步步实现java发送短信 考察了许多提供短信服务的三方,几乎所有都需要企业认证才可以使用,这对于个人学习非常不方便。多方比较之后,选择了腾讯云(此处并非做广告),原因有两点: 支持微信公众号认证(门槛低) 每月赠送100条免费短信(适合个人学习)(这一点请矿家子弟自行忽略)。超过100条的时候, 可以开通收费短信服务-腾讯云短信服务套餐 [or5qsa3nyy.png] 开发环境 请参照: 基于SpringBoot构建分模块项目 腾讯云 ---短信
聚优云惠
2019/12/26
27.9K0
腾讯云短信 nodejs 接入, 通过验证码修改手机示例
腾讯云短信 nodejs 接入, 通过验证码修改手机示例 参考: 腾讯云短信文档 国内短信快速入门 qcloudsms Node.js SDK 文档中心>短信>错误码 nodejs sdk 使用示例 const QcloudSms = require('qcloudsms_js'); const cfg = { appid: 1400123123, // SDK AppID 以1400开头 appkey: '...', // 短信应用 SDK AppKey templateId: 40279
用户1659066
2019/08/23
12.8K2
腾讯云短信服务的申请和验证使用详细流程
项目中用到短信验证功能,看到腾讯云有短信服务,就直接使用了,当然其它公司也会停工短信服务,百度可以找到很多,使用的情况应该大同小异,这里就以腾讯云的短信服务为例,说明一下短信服务的申请和使用。
React架构设计
2019/12/26
5.1K0
发送手机验证码实现
但是刚才试了,第一次用官方提供的demo发送成功,然后整合到自己项目中,调试时由于参数配置错误导致发送了几次失败后,5次就用完了。按理说成功才能算一次,果断放弃。
我的小碗汤
2018/08/22
13.8K0
发送手机验证码实现
Django使用腾讯云发送短信并存入redis
models.py class UserInfo(models.Model): username = models.CharField(verbose_name='用户名', max_length=32) email = models.CharField(verbose_name='邮箱', max_length=32) mobile_phone = models.CharField(verbose_name='手机号', max_length=32) password =
lyudev
2022/08/04
2.1K0
Python3利用Twilio(国际)以及腾讯云服务(国内)免费发送手机短信
    短信服务验证服务已经不是什么新鲜事了,但是免费的手机短信服务却不多见,本次利用Python3.0基于Twilio和腾讯云服务分别来体验一下国际短信和国内短信接口。
用户9127725
2022/08/08
5.5K0
Python3利用Twilio(国际)以及腾讯云服务(国内)免费发送手机短信
03 . Django之腾讯云短信
简介 由于项目在注册、登录、找回密码 时需要发送短信验证的功能,我们使用腾讯云短信做。 为什么要用腾讯云短信呢? 因为注册就送 100条免费短信 的额度。 实现 注册腾讯云 注册一个腾讯云账
iginkgo18
2020/09/27
13.6K0
03 .  Django之腾讯云短信
用小程序·云开发轻松构建二手书商城小程序(下)丨实战
今天是“世界读书日”,传承知识,手有余香~本文教你用小程序·云开发轻松制作二手书交易商城小程序,让智慧延续,让温暖传递。
腾讯云开发TCB
2020/06/03
1.2K0
短信验证功能实现
创建签名时候看他需要你提供给他什么资料你就提交什么资料,一般弄个公众号截图管理员页面即可通过审核
小小咸鱼YwY
2020/06/19
3.6K0
【玩转腾讯云】Python 操作腾讯云短信(sms)详细教程
腾讯云短信 1. 注册腾讯云 <font color="red">已有腾讯云账号可直接跳到第二步</font> 官网 注册, 微信扫码关注腾讯云助手即可快速注册 [biu6v2it00.png] 选择 注册新账号,注册完成后,实名认证一下。选择 个人认证,填写一下信息就ok了。 [x1ldepiqx3.png][xqyn1acnua.png][kp5t4xp99f.png] <span id="sms"></span> 2. 开通腾讯云短信 通过上一步我们已经注册好了腾讯云账号,接下来去开通 腾讯云短信 功
ruochen
2021/04/11
14.4K0
【玩转腾讯云】Python 操作腾讯云短信(sms)详细教程
验证码服务使用指南
使用idea打开上一步下载的sailing目录,下图是sailing在idea的工程结构。
张哥编程
2024/12/07
2180
验证码服务使用指南
Django实现调用腾讯云短信接口
腾讯云短信接口 注册 登录 具体怎么注册腾讯云接口看下面的文章吧 腾讯云接口注册 1.0 安装SDK pip3 install qcloudsms_py conda install qcloudsms_py 1.1 编写发送短信接口 我的环境是基于django TENCENT_SMS_APP_ID, TENCENT_SMS_APP_KEY, TENCENT_SMS_SIG: 分别都写在了settings.develop配置文件下 # tencent/smsket.py i
Yuou
2022/09/26
13.7K0
支付项目验证码服务使用指南
使用idea打开上一步下载的sailing目录,下图是sailing在idea的工程结构。
张哥编程
2024/12/13
1620
支付项目验证码服务使用指南
qcloudsms_py短信发送和easyquotation股票实时数据获取
有时候我们做股票投资,需要实时盯盘。而盯盘的任务我们完全可以交给计算机,因此当信号出现的时候知会自个是很有必要的,但是前提是获取实时数据并判断是否发送短信提醒,这块作者在网上找了一写资料,算是留个记录,方便日后用到。
写一点笔记
2022/08/11
1.3K0
qcloudsms_py短信发送和easyquotation股票实时数据获取
腾讯云短信服务发送验证码
  由于阿里云需要备案过的域名或者已上线的APP才能申请短信签名,我的域名正在备案,申请还没通过,这里用腾讯云实现短信验证码的发送功能。腾讯云只需要你有个公众号就能申请短信签名,而且免费赠送200条。
别团等shy哥发育
2023/02/25
8.9K0
腾讯云短信服务发送验证码
用小程序·云开发轻松构建二手书商城小程序丨实战
使用组件开发效率会高很多,避免重复工作,同时可以参考部分组件的写法,还是有很多值得学习的地方的。
腾讯云开发TCB
2019/09/29
1.9K0
推荐阅读
相关推荐
微信小程序 获取 手机验证码 短信验证码 后端功能实现解析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档