一文讲解自动机器学习(AutoML)!你已经是个成熟的模型了,该学会自己训练了...

【AI概念】AutoML、迁移学习(Transfer Learning)、元学习(Meta Learning)详解(附Python代码演示)| 本质区别、联系、代表性架构和应用场景、工程选择建议 大家好,我是爱酱。本篇将会系统讲解AutoML、迁移学习(Transfer Learning)、元学习(Meta Learning)三大新兴AI概念的原理、数学表达和实际意义,内容详实、结构清晰,适合AI基础与进阶读者。 注:本文章含大量数学算式、详细例子说明及大量代码演示,大量干货,建议先收藏再慢慢观看理解。新频道发展不易,你们的每个赞、收藏跟转发都是我继续分享的动力! 阅读详情

 Datawhale 

作者:瞿晓阳,AutoML书籍作者

寄语:让计算机自己去学习和训练规则,是否能达到更好的效果呢?自动机器学习就是答案,也就是所谓“AI的AI”,让AI去学习AI。

随着深度神经网络的不断发展,各种模型和新颖模块的不断发明利用,人们逐渐意识到开发一种新的神经网络结构越来越费时费力,为什么不让机器自己在不断的学习过程中创造出新的神经网络呢?

正是出于这个构思,2017年Google推出了AutoML,一个能自主设计深度神经网络的AI网络。

自此,人工智能又有了更进一步的发展,人们开始探索如何利用已有的机器学习知识和神经网络框架来让人工智能自主搭建适合业务场景的网络,人工智能的另一扇大门被打开。

深度学习vs自动化深度学习

随着深度神经网络的广泛应用和不断发展,越来越强大的网络模型被构建,从AlexNet,到VGGNet,GoogleNet以及ResNet。

虽然这些模型足够灵活,但人工神经网络结构仍然需要大量的专业知识并且需要充足的时间,而且调参对于深度模型来说也是一项非常痛苦的事情,众多的超参数和网络结构参数会产生爆炸性的组合。

是否有可能使这一过程自动化,让每一个人,甚至是不了解机器学习的人可以轻松地将机器学习应用于所面临的问题,自动化深度学习(AutoDL)就是答案。

如图1所示,是现在的深度学习方法与自动化深度学习的对比图,自动化深度学习的目标是通过超参数优化的方法让机器学会自动设计网络及调参优化。

图1:传统深度学习与AutoDL比较

什么是神经架构搜索(NAS)

神经架构搜索(NAS)是一种针对特定数据集从头开始自动设计性能良好的模型的技术,NAS技术与超参数优化所解决的问题相同:在搜索空间中找到对目标任务表现良好的网络结构。

NAS主要由三个基本问题组成,分别是搜索空间、优化方法、以及评估方法。

  • 搜索空间针对目标任务定义了一组可能的神经网络结构。

  • 优化方法确定如何探索搜索空间以找到好的架构。

  • 评估方法评估通过优化方法考虑的每种网络结构的性能。

由于神经网络的结构和连接通常可以由可变长度的字符串指定,在实际问题中,根据特定数据集生成指定的“子网络”,通过训练得到验证集的准确性。

图2:NAS组件

搜索空间

如其名,就是可供搜索的一个网络结构集合,它的数字表示为:

  • 网络的结构(如:神经网络的深度,即隐藏层个数,和特定的隐藏层宽度)

  • 配置(如:操作/网络间的链接类型,核的大小,过滤器的数量)

因此,给定搜索空间,可以将其中的神经网络结构编码成该空间下的表示。这种搜索空间被称为marco(宏)搜索空间。

好的搜索空间为好的搜索结果提供可能性,搜索空间的设计不断发展,除了传统的链式结构外,“多分支”结构也开始起着越来越重要的作用,启发于ResNet和DenseNet提出的跳跃连接和密集连接,这些跳跃连接也已经被加入到搜索空间的定义中。

另一个趋势是设计一个只包含一个基本单元(cell)搜索空间,被用作整个网络中的block(如卷积块)的构建。这类搜索空间被称为micro(微)搜索空间,其中搜索成本和复杂性可以被显著的降低。

除了减小搜索复杂度外,仅仅通过改变单元(cell)堆叠的数量,可以很容易地把找到的最好的block的设计推广到其他任务。

搜索算法

搜索算法是一个迭代过程,用于确定以何种规则来探索搜索空间。

在搜索过程的每个步骤或迭代中,一个来自于搜索空间的样本会被生成,即子网络(child network)。所有的子网络在训练集上被训练,在验证集上的准确率作为目标被优化(或者是强化学习中的奖励)。

搜索算法的目的是找到最佳子网络,例如最小化验证集损失或最大化奖励。主流的NAS搜索策略大致可以分为强化学习、进化算法和可微分的梯度下降算法。

1. 基于强化学习的方法

强化学习有三个基本要素:智能体(Agent)、环境(Environment)和奖励(Reward),智能体以 “试错”的方式进行学习,通过与环境交互获得奖励来指导行为。智能体和环境之间的交互可以被视为顺序决策过程:在每个时间t,Agent在动作集合中选择动作与环境交互并接收奖励。

图3: 强化学习中智能体与环境的交互过程

神经架构自动搜索中,强化学习把架构的生成看成一个智能体(agent)在选择动作(action)的过程,通过在测试集上测试网络性能来获取奖励值(reward),从而指导架构的生成。

与传统的强化学习问题略有不同的是构建了一个RNN控制器,通过迭代的方式来更新控制器从而生成合适的架构。

图4:基于强化学习的网络架构搜索示意图

2. 基于进化算法的方法

基于进化算法的神经网络结构搜索,在演化步骤中,把子模型作为种群来进化。群体中的每个模型都是训练过的网络,并被视为个体,模型在验证集上的表现(例如,准确度)作为每个个体的质量好坏。基于进化算法神经架构搜索的通用流程如下:

  • 初始化操作,对现有的各个个体进行编码,把这些个体编码成种群。

  • 选择操作,从种群中根据适应度挑选出优秀的个体。

  • 繁殖操作,分为两种:有性繁殖操作和无性繁殖操作,无性繁殖的操作包括变异操作,有性繁殖包括交叉操作或者组合操作。

  • 网络训练操作,对上一步繁殖操作得到的所有个体神经网络进行训练,训练到收敛为止。

  • 适应度计算操作,使用指定的验证集对每个已训练的网络计算验证准确率,把验证准确率作为适应度。

具体流程如下图所示:

图5:  基于进化算法的神经架构搜索通用流程

3. 基于可微分架构搜索的方法

可微分架构搜索方法很多种,其中比较出名的是卡内基梅隆大学提出的

DARTS(DifferentiableArchitecture Search)。

与传统的在离散的和不可微的搜索空间尚采用进化或强化学习搜索结构的方法不同,该方法是基于将结构表示的松弛化(relaxation),允许使用梯度下降来解决架构搜索的问题,所以效率可以比之前不可微的方法快几个数量级。

简单来说就是给操作(operations)的每个连接都赋一个权值alpha,优化的目的是为了通过梯度下降优化alpha矩阵,根据alpha的大小来确定连接方式。

神经网络原有的权重称为矩阵,在训练集上固定alpha矩阵的值,然后梯度下降矩阵的值,再验证集上固定矩阵的值,然后梯度下降alpha的值,循环往复直到这两个值都比较理想。

图6:DARTS搜索空间

加速方案

无论是基于强化学习还是进化算法的搜索,子网络都要被训练和评估,以指导搜索过程。但是从头开始训练每个自网络需要超大的资源和时间。所以NAS的加速方案被提出,主要代表方案是改进代理模型和权值共享。

1. 改进代理(Improve proxy)

很明显代理模型的引入会带有误差,研究证明子网络的FLOPs(每秒计算的浮点数)和模型大小与最终准确度呈负相关,因此引入了一种应用于奖励计算的校正函数,通过早期停止获得子网络的精度,弥合代理与真实准确性之间的差距。

根据这一想法,研究者们提出了几种通过“预测”神经架构的精度来改进代理度量的方法,预计精确度较差的子网络将被暂停训练或直接放弃。以下是三种预测神经架构搜索的方法:

  • 根据子网络的学习曲线预测神经架构的精度。

  • 回归模型。使用基于网络设置和验证曲线的特征来预测部分训练模型的最终性能。

  • 训练代理模型,基于progressively architectural properties预测子网络的准确性。

2. 权值共享(Weight sharing)

在神经网络的搜索和训练过程中,涉及到很多权值和超参数,权值共享可以实现加速,在这里列举几个权值共享的经典方法:

  • 在进化过程中,允许子网络继承父本的权重,而不是从头训练每个子模型。使用One shot 模型实现共享。

  • 设计带有辅助超网络的“主”模型,以生成以模型架构为条件的主模型的权重。从超网络代表的分布中采样的权重。

  • 使用one-shot模型,主要有两种方法:

    • 第一种是训练表示各种候选结构的one-shot模型,然后使用预训练的one-shot模型权重在验证集上随机评估这些候选结构。

    • 另一种是使用包含整个搜索空间的one-shot模型训练所有权重,同时,使用梯度下降来优化候选结构的分布。

  • 通过网络转换/态射来探索搜索空间,它使用诸如插入层或添加跳过连接之类的操作将训练好的神经网络修改为新的结构。由于网络转换/态射从现有的训练网络开始,因此重用权重并且仅需为数不多的训练迭代来完成新的结构的训练。

图7:one-shot结构图,实现连接无法删除而虚线连接可以删除

神经网络架构搜索的快速实现

使用开源的开源自动机器学习项目例如微软的NNI和亚马逊的AutoGluon可以快速实现常用NAS算法。下面简单介绍使用AutoGluon在10分钟内快速实现ENAS的过程:

1. 定义基础Block结构

2. 定义ENAS单元结构

3. 定义超网络

4. 构造ENAS_Scheduler开始训练

5. 训练结束可以查看搜索到的最佳结构

总结

传统的人工智能旨在使用机器帮助人类完成特定的任务,随着人工智能的发展,在计算机领域衍生出了机器学习,机器学习旨在通过计算机程序完成对数据的分析,从而得到对世界上某件事情的预测并做出决定。当机器学习不断发展,其复杂程度也不断增加,完全依靠人为对计算机进行规定,使其按照人为设定的规则运行时,耗费了大量的人力资源。

如果让计算机自己去学习和训练规则,是否能达到更好的效果呢?自动机器学习就是答案,也就是所谓“AI的AI”,让AI去学习AI,从而减少人工的参与,让机器完成更复杂的工作,掀起下一代人工智能的浪潮。

本文摘编自《深入理解AutoML和AutoDL》,经出版方授权发布。作为国内首本系统介绍AutoML的中文书籍,该书提供了大量AutoML和AutoDL的启发性思路和理解角度,确实是一本AutoML入门的好书。

“为沉迷学习点赞↓

强到不行,智谱发布升级 AutoGML,一句话操作电脑和手机 其实不仅仅是智谱在 Agent 上发了大力,国外的苹果推出的包括苹果的Apple Intelligence,谷歌的Jarvis,Anthropic的Computer Use 都在推进 Agent 的发展,还包括OpenAI即将发布的Operator。就拿软件领域来说,各式各样的工具每年每个月都是层出不穷,一个新的工具出现,总是带着它自己的语言而来,在 go 语言中表达是这样的,在 rust 语言中又是另外的图景,即使都是做的很简单的事情,都会发现它们都有各自的特色表达。那么 AI 的发展路径是怎样的呢? 阅读详情

相关推荐

深度赋智AutoDL正式开源v1.0版本

我们的NeurIPS冠军开源项目AutoDL正式发布1.0版本了!AutoDL无需任何人类干预,即可进行全自动的多标签分类,在图片、视频、语音、文本、表格等模态下都有优异效果,最短10秒就可以跑出效果出色的分类AI。

DeepWisdom的博客 2044

自动化机器学习(AutoML)入门简介

导读近期在学习研究一些关于自动化机器学习方面的论文,本文作为该系列的第一篇文章,就AutoML的一些基本概念和现状进行简单分享,权当抱砖引玉。图片源自《Taking Human out o...

小数志 3569

保姆级教程:用TIA Portal V17给S7-1200 PLC和HMI做个联调仿真(附抢答器完整项目包)

本文提供了一份详细的TIA Portal V17教程,指导如何实现S7-1200 PLC与HMI的联合仿真开发。通过抢答器项目实例,涵盖从环境搭建、PLC编程到HMI设计的全流程,帮助工程师高效完成工业自动化系统的虚拟调试,显著提升开发效率。

weixin_30417487的博客 631

AutoML:自动化机器学习的技术与应用

AutoML(自动化机器学习)是近年来机器学习领域的一个热门研究方向,它的核心目标是通过自动化手段完成机器学习工作流中的各个环节,使得非专业人员也能轻松构建高效的模型。在传统机器学习流程中,模型的选择是一项复杂且耗时的任务。用户需要在多种模型中反复实验,调试性能,而AutoML的目标是通过自动化流程,在多个模型之间快速迭代,并根据数据特点选择最佳模型。AutoKeras的核心在于自动化的神经网络架构搜索(NAS),它能够根据数据的特性自动设计和优化深度神经网络,省去了用户手动调参和设计网络架构的烦恼。

switch616的博客 3779

Hypermesh2021实战:塑料圆盘结构化网格划分全流程(附避坑指南)

本文详细介绍了使用Hypermesh2021进行塑料圆盘结构化网格划分的全流程操作,包括几何预处理、网格生成策略及质量验证。特别针对工程实践中常见的12个典型问题提供解决方案,帮助用户提升CAE仿真分析的精度和效率。

weixin_29294597的博客 320

Mac上VMware Fusion手动安装VMware Tools实现跨系统复制粘贴

本文详细指导了在Mac的VMware Fusion中手动安装VMware Tools的完整流程,以解决虚拟机与宿主机之间无法复制粘贴的常见问题。通过定位安装镜像、挂载、解压并运行安装脚本,最终实现跨系统无缝数据交换,提升工作效率。

orange的博客 701

深度神经网络训练过程中为什么验证集上波动很大_一文讲解自动机器学习(AutoML)!你已经是个成熟的模型了,该学会自己训练了...

Datawhale作者:瞿晓阳,AutoML书籍作者寄语:让计算机自己去学习和训练规则,是否能达到更好的效果呢?自动机器学习就是答案,也就是所谓“AI的AI”,让AI去学习AI。随着深度神经网络的不断发展,各种模型和新颖模块的不断发明利用,人们逐渐意识到开发一种新的神经网络结构越来越费时费力,为什么不让机器自己在不断的学习过程中创造出新的神经网络呢?正是出于这个构思,2017年Goo...

weixin_39836876的博客 1715

游戏引擎揭秘:大厂为何死磕自研?

游戏引擎本质与商业价值解析 游戏引擎是集成了渲染、物理、动画等核心功能的开发工具包,其价值在于让开发者免于重复编写底层代码,专注于游戏内容创作。商业引擎(如Unity/Unreal)虽降低了开发门槛,但头部厂商仍坚持自研引擎,主要基于以下考量: 经济性:长期项目分摊自研成本后,比商业引擎分成更划算; 可控性:完全掌握底层代码,能针对性优化核心玩法需求; 技术壁垒:专属引擎成为厂商的竞争优势,如米哈游的跨平台渲染技术; 项目适配:超大型游戏(开放世界/MMO)需要深度定制解决方案。 这种"短期高投入

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 264

AutoML-Agent:用于自动机器学习的多智能体框架

文章提出了一种名为AutoML-Agent的多智能体框架,旨在通过整合大型语言模型(LLM)实现全流程的自动化机器学习,从数据获取到模型部署,简化AI开发过程,提高非专业用户的可用性。

2401_84495872的博客 1441

贝叶斯网络 (Bayesian Networks) 原理与代码实例讲解

贝叶斯网络 (Bayesian Networks) 原理与代码实例讲解 1. 背景介绍 1.1 什么是贝叶斯网络? 贝叶斯网络(Bayesian Networks)是一种基于概率论的图形模型,用于表示随机

AI天才研究院 1334

20.Labview使用子vi进行VI间的数据传递详解(模块化)

子VI(模块化)题主在题注中也提到, 子VI的建立只是为了减少程序的负担,那么我们当使用子VI的时候首先就要明确什么是子VI?什么样的程序可以作为子VI?首先我们来看NI官方给的定义,具体说明如下图所示:题主已经将重点画出来了,在官方的解释中将子VI定义为了模块化,大家可以看到创建模块化子VI的特点在于减少代码重复工作优化了程序的框架结构。把一个代码打包,需要的时候就拎出来让他处理处理,不需要的时候就让它躺在我的列表里就行了也不占用运行空间。那么创建子VI需要需要注意以下几点:①任何一个程序。

关注我,更多技术问题欢迎私聊~ 3517

大模型产品经理学习路线,2025最新,非常详细【AI产品经理入门到精通】

随着人工智能技术的发展,尤其是大模型(Large Model)的兴起,越来越多的企业开始重视这一领域的投入。作为大模型产品经理,你需要具备一系列跨学科的知识和技能,以便有效地推动产品的开发、优化和市场化。以下是一份详细的大模型产品经理学习路线,旨在帮助你构建所需的知识体系,从零基础到精通。

2401_85343303的博客 803

Hermes Agent 对阵 OpenClaw:自我改进的 AI 队友

但在 2026 年 2 月,Nous Research 发布了 Hermes Agent,它带来了不同的愿景:一个不仅能够运行,还能学习的代理。在完成复杂的多步骤任务后,它会分析自己的操作并创建一个可复用的技能。对于已在使用 OpenClaw 的澳大利亚企业而言,这意味着您可以试用 Hermes Agent,而无需丢失数月的配置和自定义成果。最重要的区别在于理念:OpenClaw 是一个需要配置的工具,而 Hermes Agent 则是一个会学习的队友。OpenClaw 的技能是静态的。

xiaoshun007的专栏 1572

2025年大模型产品经理学习路线图:零基础入门到精通的全面指南,一篇掌握所有关键知识点!

随着人工智能技术的快速发展,尤其是大模型的兴起,企业对这一领域的投入日益增加。作为大模型产品经理,需要掌握跨学科的知识和技能,以推动产品的开发、优化和市场化。本文提供了一份详细的学习路线,涵盖基础知识、大模型技术、产品管理与商业分析、实战经验积累以及持续学习与自我提升五个阶段。从计算机科学基础、人工智能与机器学习基础,到大模型技术概览、训练与优化,再到产品思维、市场分析,以及项目实践和社区建设,帮助从业者从零基础逐步成长为精通大模型的产品经理。持续学习行业趋势和提升软技能也是成功的关键。通过本文的指导,读者

2401_84494441的博客 654

R语言caret拟合模型:train函数构建xgBoost Dart模型、模型调优、自定义设置trainControl函数和tuneLength参数

R语言caret拟合模型:train函数构建xgBoost Dart模型、模型调优、自定义设置trainControl函数和tuneLength参数

statistics+insight+vista+power 530

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

2025年大模型产品经理学习路线全攻略:零基础入门到精通的详细指南,熬夜三天整理,不容错过!

随着人工智能技术的快速发展,大模型(Large Model)成为企业关注的重点。作为大模型产品经理,需掌握跨学科知识与技能,以推动产品开发与市场化。学习路线分为四个阶段:1. 基础知识阶段,涵盖计算机科学基础(数据结构、编程语言、数据库)和人工智能基础(机器学习、深度学习、模型训练与评估);2. 大模型技术阶段,包括大模型技术概览(定义、应用场景)和训练与优化(分布式训练、模型压缩、AutoML);3.

2401_85343303的博客 626

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

数据科学自学路径图:2023年高效YouTube学习指南

数据科学是一门融合编程、统计与业务理解的实践型学科,其核心在于将原始数据转化为可行动的业务洞察。学习本质不是掌握孤立工具,而是构建‘问题识别→代码实现→结果验证→业务表达’的完整闭环。Python、pandas、SQL等是基础载体,而真实调试过程、报错响应能力与跨职能沟通才是区分初学者与从业者的分水岭。在AI工具爆发的2023年,免费YouTube频道因具备临场感、可暂停性与一线工程师实战经验,成为不可替代的学习入口——它不教标准答案,而是展示真实工作流中的决策权衡与失败复盘。本文聚焦如何按能力阶段(筑基→

weixin_30882895的博客 326

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

AutoML详解

部分是从外文文献翻译,参考百度而来 一、Automl是什么 机器学习模型都是由工程师和科学家团队精心设计出来的。这种手动设计的过程是非常困难的,因为模型组件的搜索空间可以非常巨大——一个典型的10层网络模型能有1010种可能的网络。因此,设计网络的过程通常需要花费优秀的机器学习专家大量的时间和经验。 为了让设计机器学习模型的过程变得更加简单,谷歌一直在探索自动设计机器学习模型的方法。研...

shuaikang9864的博客 1万+

不懂就学——什么是autoML?

工作上用到了,不懂学习一下

随手记 2507

机器学习实战 | AutoML自动化机器学习建模 # 1.AutoML与自动化机器学习

对于分类和回归等常见的机器学习任务,FLAML可以在消耗尽量少的资源前提下,快速找到高质量模型。它支持经典机器学习模型和深度神经网络。它很容易定制或扩展。用户可以有很灵活的调整与定制模式:最小定制(设定计算资源限制)中等定制(例如设定scikit-learn学习器、搜索空间和度量标准)完全定制(自定义训练和评估代码)。它支持快速且低消耗的自动调优,能够处理大型搜索空间。FLAML 由 Microsoft Research 发明的新的高效益超参数优化和学习器选择方法支撑。

weixin_42907150的博客 2615

AutoML全面解析@Qing

对Google的AutoML全面解析1.AutoML简介1.1 AutoML自动编程框架简介1.2 AutoML产品定位1.3 AutoML关键技术2.AutoML应用现状2.1 AutoML应用举例2.2 AutoML评价3.AutoML技术实现3.1 AutoML原理说明3.2 AutoML技术细节3.3 AutoML最新技术 1.AutoML简介 1.1 AutoML自动编程框架简介 20...

weixin_41461580的博客 2036
上一篇: 机器学习实战-支持向量机原理、Python实现和可视化(分类)
下一篇: Python 的 __name__ 变量,到底是个什么东西?
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值