自动机器学习(AutoML)

devtools/2024/10/20 15:55:21/

utoML是PAI的提供的自动寻找超参组合的机器学习增强型服务。您在训练模型时,如果超参组合复杂度过高,需大量训练资源和手工调试工作,可以使用AutoML来节省模型调参时间,提升模型调优效率和模型质量。

基础概念

  • 超参数:是训练机器学习模型时用到的外部配置参数,在模型训练开始前设置。超参数不同于模型内部参数,模型内部参数在学习过程中被不断地更新和优化,超参数在学习过程开始前就设置,在模型训练过程中保持不变。

  • 超参调优:Hyper Parameter Optimization简称HPO,是指手动或者自动进行超参数调优,而本文中特指是AutoML提供的对模型参数、训练参数等进行自动搜索调优的服务。它能帮您获取较优参数,提升模型效果,节省算法工程师调参的时间,让算法开发人员聚焦在建模和业务上。

  • 搜索空间:定义了超参组合的范围,AutoML会在此范围内,搜索最佳的超参组合。

  • 实验:在PAI的AutoML服务里,一个实验的目的是在搜索空间里,寻找模型的最佳超参组合。

  • Trial:在PAI的AutoML服务里,每一个trial会用一组特定的超参数值组合生成和评估模型。一个实验通过调度运行多个trial,并比较这些trial的结果,达到找到最佳超参组合的目标。更多说明请参见AutoML工作原理。

  • 任务类型Trial使用哪种资源和环境进行训练,当前可以支持使用DLC的计算资源与MaxCompute计算资源。

背景

机器学习模型中,超参数(Hyper Parameter,简称超参)是用来控制模型训练的一组参数,是训练机器学习模型时用到的外部配置参数。超参数在模型训练开始之前应设置好。超参数不同于模型内部参数,模型内部参数在学习过程中被不断地更新和优化。而超参数在学习过程开始前设置,在模型训练过程中保持不变。

可以把一个模型的n个超参理解成一个n维向量。在模型训练的实践中,我们需要从这个模型的所有超参向量值域里,找到一个特定的向量值,使得该模型在给定的数据集上获得最佳效果(比如最小化损失函数loss function的结果)。寻找这个最优超参向量值的过程我们称之为超参调优(Hyper Parameter Optimization,简称HPO)。

举个简单的例子,模型有2个超参A和B,A可能的取值有(a,b,c),B可能的取值有(d,e),那么这个超参调优过程就是从A、B值的6种排列组合里,选出一种,使得模型训练有最佳效果。为了选出最优组合,最简单的方式是在同一个训练数据集上,把A,B的6种值的组合分别用于模型训练,然后比较模型在同一组测试数据集上的效果,选出效果最好的模型所用的超参组合。

AutoML HPO介绍

受模型超参数量、每个超参的数据类型和值域范围影响,超参调优问题很容易达到很高的复杂度。比如模型有多个超参,有些超参是整型,有些是浮点型,此时超参调优无法通过手工来完成,通过暴力搜索需要消耗非常大的计算资源,这需要引入自动化的系统来完成这项工作。AutoML服务中的HPO功能,正是帮助用户实现自动超参调优的目标。

AutoML HPO是AutoML提供的对模型参数、训练超参数(opt、lr)等进行自动搜索调优的服务,为您提供了易用、有效、准确的自动超参调优服务:

  • 简化调优工作:通过自动化工具大幅简化算法工程师调参工作,节省算法工程师的调参时间。

  • 训练更优模型:集成了PAI的多种算法,能够有效查找到最优组合以及对应的模型,帮助您训练出精度更高、效率更高的模型。

  • 节省计算资源:超参调优工具会通过持续的评估,决定是否有必要使用下一组超参组合。这个机制下,可能不需要评估所有组合就已经得到了最优解,能帮助您节省计算资源的使用量。

  • 方便应用算力:与DLC、MaxCompute计算资源无缝衔接,方便您灵活配置并使用澎湃算力。

AutoML HPO应用场景

机器学习训练过程中,需要进行模型参数调优的,都可以使用AutoML HPO,来获得更好模型。常见的应用场景有下面几种。

  • 机器学习二分类任务,例如判断用户是否是付费用户。

  • 机器学习回归类任务,例如判断用户7日预计付费金额。

  • 机器学习聚类任务,例如确定某化妆品牌在某城市划分几个买卖点。

  • 推荐场景:排序召回模型调优,提升AUC等指标。

  • 深度学习:提升图像多分类/视频多分类等任务的精度。

AutoML工作原理

AutoML实现自动化调试参数的工作原理,是通过实验、Trial、训练任务进行循环迭代,来找到最优的超参组合。

AutoML的工作机制如下图。

 

您设定好超参数的值域、搜索算法、停止条件配置后,AutoML将其作为一次实验(experiment)传入到后端进行处理。

  1. 一次实验会根据配置的算法来生成超参组合,而每个超参组合会对应一个trial。

    说明

    您可以设置多个trials并发,以提升速度,但是单位时间耗费的资源也会增多。

  2. 每个trial除了对应一组超参组合外,并会对应一个或多个计算任务,这个任务可以是DLC任务,使用通用计算资源和灵骏智算资源;也可以是MaxCompute任务,使用MaxCompute计算资源。两种资源使用分别遵循对应服务逻辑(计费、配置、使用)。

  3. 启动试验后,AutoML会循环查看任务指标。

  4. 当实验触发了停止条件,如最大搜索次数、算法停止条件、所有组合计算完毕等,实验停止。

  5. 返回结果。这个结果可以是超参组合或者每个trial的最佳模型(您需要设置模型存储路径),同时您可以在日志数据看到。

根据上述AutoML工作原理,您启动实验前需要配置几类参数,包括实验基本配置、Trial配置、DLC/MaxCompute任务配置、超参搜索配置。


http://www.ppmy.cn/devtools/127323.html

相关文章

openpnp - 底部相机视觉识别CvPipeLine的参数bug修正

文章目录 openpnp - 底部相机视觉识别的CvPipeLine的参数bug概述笔记openpnp的视觉识别参数的错误原因备注END openpnp - 底部相机视觉识别的CvPipeLine的参数bug 概述 底部相机抓起一个SOD323的元件,进行视觉识别。 识别出的矩形错了,是一个很长的长方…

【网络协议】TCP协议常用机制——延迟应答、捎带应答、面向字节流、异常处理,保姆级详解,建议收藏

💐个人主页:初晴~ 📚相关专栏:计算机网络那些事 前几篇文章,博主带大家梳理了一下TCP协议的几个核心机制,比如保证可靠性的 确认应答、超时重传 机制,和提高传输效率的 滑动窗口及其相关优化机…

观察者模式的思考

观察者模式由来 观察者模式(Observer Pattern)是一种行为型设计模式,它的起源可以追溯到20世纪90年代初,由设计模式四人帮(Erich Gamma, Richard Helm, Ralph Johnson 和 John Vlissides)在其著作《设计模…

rel-例行性工作

1,at命令 /etc/at.allow,写在该文件的人可以使用at命令 /etc/at.deny,黑名单 两个文件如果都不存在,只有root能使用 使用方法 at 命令格式: at [参数] [时间] 实例 建立一个3分钟后给所有用户发送 hahaha 2&#x…

Vue.js 学习总结(10)—— Vue 前端项目性能优化常用技巧

1. 使用路由懒加载 在 Vue.js 应用中,路由懒加载可以延迟加载路由组件直到它们被需要时才加载,从而减少应用的初始加载时间。示例代码: // router/index.js import { createRouter, createWebHistory } from vue-router;const Home () >…

AIGC技术的学习 系列二

文章目录 前言一、AIGC是什么?1.1. 基本概念1.2机器学习分类二、 语言模型2.1. 基于统计的语言模型。2.2. 基于神经网络的语言模型。2.3. 基于预训练机制的的语言模型/大语言模型三、读入数据3.1. 不得不说的Transformer3.2. 影响力3.3. 根据人类反馈的强化学习3.4. 生成式AI3…

flex布局

1、在 flex 容器上&#xff0c;设置align-items , 子项就会保持其自身的高度了 &#xff0c;不会自动高度对齐。 2、 <div class"flexboxborder"><div class"flexbox3"><div class"flexitem flexbox1"><div class"f…

探索社交网络中的情感脉动 | 微博评论舆情分析系统

在大数据时代&#xff0c;信息量爆炸&#xff0c;我们该如何快速理解那些海量的舆情&#xff1f;尤其是在像微博这样的平台上&#xff0c;评论区更是舆论风向的“前哨站”。今天给大家带来的这个微博评论舆情分析系统&#xff0c;就是一款为大家解决这一痛点的工具&#x1f50d…