Auto ML自动调参

本文介绍Auto ML自动调参的算法介绍及操作流程。

操作步骤

  1. 登录PAI控制台
  2. 单击左侧导航栏的实验并选择某个实验。

本文以雾霾天气预测实验为例。

  1. 在实验画布区,单击左上角的Auto ML > 模型自动调参
  2. 自动调参配置页面,选择需要调参的算法,单击下一步

说明 一个实验中有多个算法时请单选一个算法。

  1. 调参配置模块,选择调参方式,完成后单击下一步

阿里云机器学习提供如下调参方式供选择:

  • EVOLUTIONARY_OPTIMIZER
  1. 随机选定a个参数候选集(探索样本数a)。
  2. 取其中评估指标较高的n个参数候选集,作为下一轮迭代的参数候选集。
  3. 继续在这些参数周边的r倍(收敛系数r)标准差范围探索,以探索出新的参数集,来替代上一轮中评估指标靠后的a-n个参数集。
  4. 根据以上逻辑,迭代m轮(探索次数m),直到找到最优的参数集合。

根据如上原理,最终产生的模型数目为a+(a-n)*m 。

注意 n的第一个值为a/2-1,在迭代过程中默认为n/2-1(小数向上取整)。

  • 数据拆分比例:将输入数据源分为训练集和评估集。0.7表示70%的数据用于训练模型,30%用于评估。
  • 探索样本数:每轮迭代的参数集个数,个数越多越准,计算量越大,取值范围为5~30。
  • 探索次数:迭代次数,次数越多探索越准、计算量越大,取值范围为1~10。
  • 收敛系数:调节探索范围,越小收敛越快,但是可能会错过适合的参数,取值范围为0.1~1。
  • 自定义范围:输入每个参数的调节范围,如果未改变当前参数范围,则此参数按照默认值代入,不参与自动调参。
  • RANDOM_SEARCH

.  每个参数在所在范围内随机选取一个值。

  1. 将这些值组成一组参数进行模型训练。
  2. 如此进行m轮(迭代次数),训练产生m个模型并进行排序。

  • 迭代次数:表示在所配置的区间的搜索次数,取值范围为2~50。
  • 数据拆分比例:将输入数据源分为训练集和评估集,0.7表示70%的数据用于训练模型,30%用于评估。
  • 自定义范围:输入每个参数的调节范围,如果未改变当前参数范围,则此参数按照默认值代入,不参与自动调参。
  • GRID_SEARCH

.  将每个参数的取值区间拆成n段(网格拆分数)。

  1. 在n段里面各随机取出一个随机值。假设有m个参数,就可以组合出n^m组参数。
  2. 根据n^m组参数训练生成n^m个模型并进行排序。

  • 网格拆分数:表示拆分出的grid个数,取值2~10。
  • 数据拆分比例:将输入数据源分为训练集和评估集,0.7表示70%的数据用于训练模型,30%用于评估。
  • 自定义范围:输入每个参数的调节范围,如果未改变当前参数范围,则此参数按照默认值代入,不参与自动调参。
  • UserDefine

自定义范围:系统对枚举的参数取值范围进行全部组合尝试并打分,如果未输入按照默认参数执行。

说明 在2.0版本中调参算法种类从4个增加到7个,各算法详细说明如下:

  1. 调参模型输出选择模块,配置模型输出参数,完成后单击下一步

  • 评估标准:可选择 AUCF1-scorePrecisionRecall四个维度中的一个作为评估标准。
  • 保存模型数量:取值范围为1~5。根据所选择的评估标准,对模型进行排名,最终保存排名靠前的几个模型,数量对应所选择的保存模型数量
  • 模型是否向下传导:默认打开。如果开关关闭,则将当前组件的默认参数生成的模型,向下传导至后续组件节点;如果开关打开,则将自动调参生成的最优模型,向下传导至后续组件节点。
  1. 配置完成后,单击画布左上角的运行

此时画布上的对应算法已打开Auto ML 开关,后续也可以选择打开或关闭此开关。

  1. 可选:鼠标右键单击画布模型组件,选择编辑AutoML参数,修改AutoML配置参数。

执行结果

输出模型:

  1. 在调参过程中,鼠标右键单击目标模型组件,选择调参运行详情。在 AutoML-自动调参详情页面,单击指标数据,查看当前调参的进度、各模型的运行状态等信息。                                                                                                                                                                   
  2. 根据候选模型的指标列表(AUCF1-score准确率召回率)进行排序。
  3. 查看详情列单击日志参数,查看每一个候选模型的日志及参数。

调参效果展示:

可以通过超参迭代效果对比,查看每一轮参数更新后评估指标增长的趋势。

模型存储:

  1. 选择左侧导航栏的模型
  2. 单击实验模型,打开实验模型文件夹。
  3. 单击打开对应实验文件夹,查看Auto ML保存的模型。

Auto ML自动调参的更多相关文章

  1. hyperopt自动调参

    hyperopt自动调参 在传统机器学习和深度学习领域经常需要调参,调参有些是通过通过对数据和算法的理解进行的,这当然是上上策,但还有相当一部分属于"黑盒" hyperopt可以帮 ...

  2. 自动调参库hyperopt+lightgbm 调参demo

    在此之前,调参要么网格调参,要么随机调参,要么肉眼调参.虽然调参到一定程度,进步有限,但仍然很耗精力. 自动调参库hyperopt可用tpe算法自动调参,实测强于随机调参. hyperopt 需要自己 ...

  3. sklearn学习8-----GridSearchCV(自动调参)

    一.GridSearchCV介绍: 自动调参,适合小数据集.相当于写一堆循环,自己设定参数列表,一个一个试,找到最合适的参数.数据量大可以使用快速调优的方法-----坐标下降[贪心,拿当前对模型影响最 ...

  4. Auto ML自动特征工程

    Auto ML自动特征工程 特征工程是在做机器学习训练的过程中必不可少的环节,特征工程就是找出对模型结果有益的特征交叉关系,通常特征工程需要耗费算法工程师大量的精力去尝试.针对这样的场景,PAI推出智 ...

  5. 服务器创建tensorflow环境,nni自动调参记录

    一.anaconda安装记录 1.1 下载安装脚本:wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh 1.2 ...

  6. 多轴APM飞控调参

    调参步骤: 遥控器,电动机和电调对应的APM飞控连线——遥控器校准——电调行程校准——加速度计校准——磁罗盘校准——故障保护设定(遥控器和飞控)——飞行模式设定并调整——自动调参设定选项 APM飞控调 ...

  7. [调参]CV炼丹技巧/经验

    转自:https://www.zhihu.com/question/25097993 我和@杨军类似, 也是半路出家. 现在的工作内容主要就是使用CNN做CV任务. 干调参这种活也有两年时间了. 我的 ...

  8. Deep learning网络调参技巧

    参数初始化 下面几种方式,随便选一个,结果基本都差不多.但是一定要做.否则可能会减慢收敛速度,影响收敛结果,甚至造成Nan等一系列问题.n_in为网络的输入大小,n_out为网络的输出大小,n为n_i ...

  9. 机器学习笔记——模型调参利器 GridSearchCV(网格搜索)参数的说明

    GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数.但是这个方法适合于小数据集,一旦数据的量级上去了,很难得出结果.这个时候就是需要动脑筋了.数据量比较大 ...

随机推荐

  1. 功能:@Vaild注解使用及扩展

    @Vaild注解使用及扩展 一.@Vaild注解介绍 使用@Vaild注解可以简化入参的校验,配合统一异常实现简单快捷的入参校验,具体使用参照以下 二.@Vaild具体使用 1.引入jar包 如果你是 ...

  2. hdu4278 小想法

    题意:       有几个计数器,从1开始计数,计数器有问题,没有3,8这两个数字,只要出现3或者8,那么直接跳过,如 12579 下一个数字就是 12590 ,给你一个数字,问他实际计数了多少. 思 ...

  3. Linux启动流程和服务管理(init和systemd)

    目录 一:Linux启动流程 init和Systemd的区别 二:Linux服务管理(service,systemctl) 一:Linux启动流程 Rhel6启动过程: Rhel7启动过程: GRUB ...

  4. hdu4642博弈(矩阵)

    题意:       给一个01矩阵,每次可以选择1的格子,选择之后以他为左上角的矩阵全都取反,两个人轮班取,不能取的人输. 思路:        博弈的题目,结论是右下角是0就输,1就赢,原因可以这么 ...

  5. windows核心编程-第二章 Unicode

    第2章U n i c o d e 随着M i c r o s o f t公司的Wi n d o w s操作系统在全世界日益广泛的流行,对于软件开发人员来说,将目标瞄准国际上的各个不同市场,已经成为一个 ...

  6. iwrite复制攻略

    打开iwrite,一提交作业,发现: 这可咋办啊! 那就跟着步骤来呗: 按F12打开元素审查 点一下左上角 再点一下文本框,就能定位到HTML中的位置 在文本框中写几个字母,康康具体位置: 那就复制进 ...

  7. Day007 递归

    递归 定义 ​ A方法调A方法!就是自己调自己 作用 ​ 利用递归可以用简单的程序来解决一些复杂的问题.它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程 ...

  8. layui处理表单/按钮进行多次提交

    在一个项目中,我们最频繁的操作是CRUD,所以一定有涉及到按钮的操作.比如:确认保存,确认编辑,确认删除等等.所以,为了避免表单进行多次提交就显得特别地重要. 代码实现 知识点 $(':button' ...

  9. GDI编程基础

    窗口和视口 视口是基于设备的采用的是设备坐标(单位:像素),窗口是基于程序的采用的是逻辑坐标(单位:像素/毫米/厘米等). 在默认的映射模式下,视口是与窗口等同的.但是如果改变其映射模式,则其对应的单 ...

  10. JS实现单例模式的多种方案

    JS实现单例模式的多种方案 今天在复习设计模式中的-创建型模式,发现JS实现单例模式的方案有很多种,稍加总结了一下,列出了如下的6种方式与大家分享 大体上将内容分为了ES5(Function)与ES6 ...