【AutoML】进化算法如何用于自动模型搜索(NAS)

进化算法框架的介绍及Matlab实现(遗传算法) 系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例 阅读详情

大家好,欢迎来到专栏《AutoML》,在这个专栏中我们会讲述AutoML技术在深度学习中的应用,这一期讲述进化算法用于模型搜索的基本概念和流程。

作者&编辑 | 言有三

一直以来,网络结构的设计是一个非常需要经验且具有挑战性的工作,研究人员从设计功能更加强大和更加高效的模型两个方向进行研究,随着各类经典网络设计思想的完善,如今要手工设计出更优秀的模型已经很难,而以AutoML为代表的自动化机器学习技术就成为了大家关注的热点,本期我们介绍基于进化算法的方法。

1 进化算法简介

进化算法是一类算法的统称,是模拟自然选择和遗传等生物进化机制的一种搜索算法,其中最为我们熟悉的一类就是遗传算法。

各类进化算法本质上都是迭代算法,其中涉及到几个最基本的概念和流程,首先作出解释:

(1) 种群。所谓种群,其实就是解空间中的一个子集,即若干个模型。

(2) 个体。所谓个体,就是其中一个解,即某一个模型。

(3) 编码。所谓编码,就是将搜索对象用计算机语言描述,比如将网络结构用固定长度的二进制字符串表示。

基于进化算法搜索的迭代过程如下:

在以上搜索过程中,每一次迭代操作就是从一组解到更好的一组解,它要解决的最核心的问题是如何产生新一代。

每一次产生下一代需要3个步骤,即选择,交叉,变异:

(1) 选择过程,要实现的就是从群体中选择更优的对象,比如精度更高的模型。

(2) 交叉过程,它就是要实现不同优秀对象的信息交换,比如两个好模型的模块交换。

(3) 变异过程,它是对个体的微小改变,相对于交叉过程,能引入更多的随机性,有助于跳出局部最优解。

关于进化算法的具体细节和种类,已经超出了本文的内容,读者可以单独阅读资料来学习进化算法。

2 基于进化算法的网络搜索

使用进化算法来进行网络搜索,要完成的步骤就是:

下面我们以Genetic CNN[1]算法作为案例来解读如何实现前两个步骤,该网络关心的是block级别的搜索。

2.1 网络编码

首先我们来看网络编码方式,它要完成的是将模型结构用二进制进行编码,其中最简单的方式就是用固定长度的字符串进行表示。

下面我们只考虑卷积拓扑结构本身,一个层称之为一个Stage,它们使用池化方式进行连接,Stage本身不改变特征图大小,并且内部卷积操作具有相同的卷积核和通道数。

假如一个网络包括S个Stage,其中每一个Stage包括Ks个节点,总共有1+2+...+(Ks −1)个连接,因此也需要这么多位进行表示。

如下图中Stage 1,有4个节点,则总共有6位进行表示,其中1表示A2与A1之间有连接,00表示A3与A1,A2之间没有连接,111表示A4与A1,A2,A3都有连接。下图中的Stage 2,有5个节点,则总共有10位进行表示。

下图则展示了K=4时,VGGNet,ResNet,DenseNet网络结构的示意及其编码向量。

2.2 种群迭代

有了编码过程后,接下来就可以进行种群迭代, 具体来说就是实现3个步骤,选择,交叉与变异,其中整个流程的伪代码如下。

T表示要迭代次数,N就是产生的个体数,初始时每一个bit都从伯努利分布中采样进行随机初始化,并计算初始识别精度。

每一次的迭代中,首先使用俄罗斯转盘选择法选择其中精度较高的模型,然后两两配对进行交叉(为了保证拓扑结构,交叉的最小单元是Stage),最后对没有交叉的个体进行变异,评估精度,再进行下一次的迭代。

最终的输出结果就是一系列个体和识别精度。

由于以上训练过程中计算量非常大,因此训练时首先在较小的数据集(如MNIST,CIFAR10)上训练,然后再迁移到更大的数据集(如ImageNet)。

下图展示了学习到的两个网络结构,它的特点是,在网络浅层,类似于AlexNet和VGGNet,在网络中间层,类似于GoogleNet,在网络深层,类似于ResNet。

上述算法具有一定局限性,比如每一层内卷积核大小和通道数固定,这是后续可以改进的地方,更多工作请参考[2,3]。

3 关于模型优化

公众号写过很多的模型解读了,如下是一些文章总结和直播链接以及资源下载。

【完结】总结12大CNN主流模型架构设计思想

「总结」言有三&天池深度学习模型设计直播汇总,赠超过200页课件

并且最近也出了一本新书,供对模型设计和优化感兴趣的朋友阅读。

言有三新书来袭!业界首次深入全面讲解深度学习模型设计

知识星球中最重要的板块就是模型结构1000变板块,比公众号的内容更深更广。其中的模型优化部分主要包括紧凑模型的设计,剪枝,量化,知识蒸馏,AutoML等内容的详细解读,感兴趣可以移步。

[1] Xie L, Yuille A L. Genetic CNN[C]. international conference on computer vision, 2017.

[2] Miikkulainen R, Liang J, Meyerson E, et al. Evolving Deep Neural Networks[J]. arXiv: Neural and Evolutionary Computing, 2017: 293-312.

[3] Real E, Moore S, Selle A, et al. Large-scale evolution of image classifiers[C]. international conference on machine learning, 2017: 2902-2911.

总结

本次我们简单介绍了进化算法在模型的设计和优化中的基本流程,介绍了基于block作为最小搜索单元的代表性框架,但并没有对各种粒度的算法进行介绍。更多模型设计和优化,AutoML的内容,请大家移步有三AI知识星球长期学习。

有三AI知识星球

知识星球是有三AI的付费内容社区,里面包括各领域的模型学习,数据集下载,公众号的付费图文原稿,技术总结PPT和视频,知识问答,书籍下载,项目推荐,线下活动等资源,了解详细请阅读以下文章:

【杂谈】有三AI知识星球一周年了!为什么公众号+星球才是完整的?

【杂谈】万万没想到,有三还有个保密的‘朋友圈’,那里面都在弄啥!

转载文章请后台联系

侵权必究

往期精选

Model Search:基于进化算法的开源模型结构搜索框架 模型搜索(Neural Architecture Search, NAS)是自动化机器学习的核心范式之一,旨在从可定义的结构空间中发现高性能、轻量化的定制化模型。其原理依托进化算法(如NSGA-II)、多目标优化与轻量级评估机制,在精度、延迟、参数量等维度间寻求帕累托最优解。相比传统AutoML仅调优超参,Model Search真正实现模型‘构造—变异—评估—进化’的闭环,显著降低对人工架构先验的依赖。技术价值在于将NAS工程化、可审计、低算力门槛化,使中小团队也能高效产出任务适配模型。典型应用场景包括边 阅读详情

相关推荐

神经架构搜索(NAS)自动优化YOLOv11结构-(使用AutoML搜索最优网络配置)

神经架构搜索(Neural Architecture Search, NAS)是自动化机器学习(AutoML)的重要分支,其核心目标是通过算法自动设计最优神经网络结构,而非依赖人类专家的手工设计。NAS的基本框架包含三个关键组件:搜索空间(Search Space)、搜索策略(Search Strategy)和性能评估策略(Performance Estimation Strategy)。 搜索空间定义了可能被搜索的网络结构集合,它决定了NAS算法的探索范围。在YOLOv11的优化场景中,搜索空间可能包括

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 479

进化算法介绍

自然界生物在周而复始的繁衍中,基因的重组、变异等,使其不断具有新的性状, 以适应复杂多变的环境,从而实现进化。进化算法精简了这种复杂的过程而抽象出一套 数学模型,用较为简单的编码方式来表现复杂的现象,并通过简化的遗传过程来实现对 复杂搜索空间的启发式搜索,最终能够在较大的概率下找到全局最优解,同时天然地支 持并行计算。下图展示了常规遗传算法 (左侧) 和在并行计算下的遗传算法 (右侧) 的基本流程。图中COREn 表示计算核心。...

wjz0626的博客 1万+

AutoML与神经架构搜索

《AutoML与神经架构搜索》 作者:禅与计算机程序设计艺术 1. 背景介绍 随着机器学习和深度学习在各个领域广泛应用,模型架构设计已经成为机器学习从业者面临的一个关键挑战。传统的模型架构设计过程是一个高度依赖人工经验的过程,需要领域专家耗费大量时间和精力进行反复试错。这种方式不仅效率低下,而且很难探索到最优的模型架构。

AI天才研究院 998

机器学习之进化算法

学习目标: 遗传算法基础 基因重组与基因突变 遗传算法实现技术 遗传算法实例 一、遗传算法 进化计算(Evolutionary Computation)包括遗传算法(Genetic Algorithm,GA)、进化策略(Evolutionary Strategies,ES)和基因编程(Genetic Programming)。进化进算是受进化生物学启发而发展起来的计算模型,其实现过程基于达尔文的物竞天择、适者生存的生物进化原理,通过将现实问题转化为基因染色体表示,并不断进行选择、交换、变异、复

a789253的博客 1万+

昇腾AI处理器Ascend C编程:从C/C++基础到高性能算子开发实战

异构计算是提升AI算力效率的核心技术,通过在CPU之外引入专用处理器(如GPU、NPU)协同工作,实现大规模并行计算。其原理在于将计算密集型任务卸载到专用硬件,利用其高并行架构加速处理。技术价值在于突破传统CPU的算力瓶颈,为深度学习训练与推理提供强大动力,广泛应用于模型部署、科学计算和高性能计算场景。本文聚焦昇腾AI处理器的原生编程语言Ascend C,它基于C/C++标准扩展,通过显式内存管理和任务并行模型,充分发挥达芬奇架构中Cube与Vector单元的性能。针对CANN算子开发,文章详解了从环境搭建

weixin_34411563的博客 368

PS2硬盘启动终极指南:从FMCB到OPL,告别光驱打造游戏博物馆

在计算机存储与数据读取领域,硬盘启动技术通过将操作系统或应用程序从本地硬盘直接加载,绕过了传统光驱等外部介质,实现了速度与可靠性的双重提升。其核心原理在于利用引导程序接管系统初始化流程,直接访问硬盘上的特定分区与文件镜像。这项技术的价值在于极大提升了数据读取效率、降低了物理介质损耗,并扩展了存储容量与管理的灵活性。在怀旧游戏硬件改造、嵌入式系统定制等场景中,硬盘启动技术被广泛应用,以实现老旧设备的功能焕新与性能优化。本文聚焦于索尼PS2游戏主机的硬盘启动方案,深入探讨了如何利用FMCB(Free MCBoo

weixin_34295316的博客 1778

(2023,NAS & 进化算法 & 解释)用于少样本学习的神经微调搜索

少样本域自适应的一个重要方法是对精心设计的自适应架构进行微调。那么,如何设计最优的自适应策略?本文提出 “神经微调搜索”,这是一种新颖的 NAS 算法,它可以找到基于梯度的小样本学习的最佳适应架构。

qq_44681809的博客 1242

【Python 实战基础】如何绘制热力图来模拟绘制北京景区热度图

Python如何绘制热力图来模拟绘制北京景区热度图 文件读写 基础语法 字符串处理 文件生成 数据构建

菜鸟实战的博客 3403

基于进化算法的网络结构搜索与优化技术研究

近年来,随着深度学习技术的快速发展和应用领域的不断拓展,网络结构的设计与优化成为了深度学习领域中备受关注的研究方向之一。综上所述,基于进化算法的网络结构搜索与优化技术作为一种重要的深度学习方法,在网络结构设计与优化方面具有独特的优势和潜力。相信在未来的研究和实践中,基于进化算法的网络结构搜索与优化技术将发挥越来越重要的作用,为各行业和领域的智能化应用提供强大支持和解决方案。相比传统的人工设计网络结构的方法,基于进化算法的网络结构搜索具有自动化、高效性和灵活性等优势,能够更好地适应不同任务和数据集的需求。

huduokyou的博客 484

0032期基于深度学习的大米识别-含数据集

083基于深度学习的手势识别小程序版本_含10多种模型包括alexnet、DenseNet、DLA、GoogleNet、Mobilenet、ResNet、ResNeXt、ShuffleNet、VGG、EfficientNet和Swin transformer等10多种模型。117nlp自然语言处理-文本情感分类-joy-sadness-anger-fear-love-surprise。运行02深度学习模型训练.py就会将txt文本中记录的训练集和验证集进行读取训练,训练好后会保存模型在本地。

grehtsfrs的博客 1508

不用变压器也能联网?手把手教你PHY芯片直连的3种实用方案

本文详细介绍了PHY芯片直连的3种实用方案,帮助开发者在物联网设备中实现更经济、更精简的网络连接设计。通过分析电压驱动型和电流驱动型PHY的核心原理,提供具体的电路配置和优化建议,确保信号质量的同时节省成本和空间。

smartcontract5的博客 334

从道家的“无为“到 AutoML:自动搜索的哲学与工程边界

从道家"无为"到 AutoML 的工程映射,核心在于用人类先验约束搜索空间(不妄为)、在有限预算内寻求最优(知足)、从搜索轨迹中提取知识(悟道)。工程实现中通过搜索空间定义、贝叶斯优化策略、搜索轨迹分析三层联动,让 AutoML 从"暴力穷举"转变为"约束引导的高效搜索"。核心原则是:搜索空间的定义比搜索算法更重要——人类经验划定的边界,决定了 AutoML 结果的上限。

weixin_43272162的博客 3728

告别信号毛刺!手把手教你用ADS和IBIS-AMI模型搞定PCIe Gen3眼图仿真

本文详细介绍了如何使用Keysight ADS和IBIS-AMI模型进行PCIe Gen3眼图仿真,解决高速信号传输中的信号质量问题。从仿真环境搭建、S参数预处理到眼图优化与故障排除,提供了一套完整的工程实践指南,帮助工程师提升PCIe Gen3接口的信号完整性。

weixin_28366053的博客 371

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

Datawhale作者:瞿晓阳,AutoML书籍作者寄语:让计算机自己去学习和训练规则,是否能达到更好的效果呢?自动机器学习就是答案,也就是所谓“AI的AI”,让AI去学习AI。随着...

Datawhale 6485

【回归预测】GRNN广义回归神经网络-MATLAB

广义回归神经网络(GRNN)是一种基于径向基函数(RBF)的神经网络模型,主要用于非线性回归任务。与传统的回归分析方法相比,GRNN具有更强的非线性映射能力和学习速度,能够快速逼近复杂的非线性关系。输入层、模式层、求和层和输出层。输入层接收输入数据,模式层通过径向基函数将输入映射到高维空间,求和层对模式层的输出进行加权求和,最后输出层生成预测结果。GRNN的核心思想是利用高斯核函数计算输入与训练样本之间的相似度,然后根据相似度加权平均得到预测值。

2303_77200324的博客 1093

【深度学习新浪潮】OpenClaw跟机器人行业有哪些很好的研究结合点?

OpenClaw正通过"AI大脑+机器人肢体"的深度融合,重新定义机器人与人类的交互方式和自主操作能力。近期ROSClaw框架发布、人形机器人集成和空间计算试验等进展,标志着OpenClaw已从概念验证阶段进入实际应用落地期,为机器人行业带来了自然语言控制普及化具身智能平民化和跨平台开发标准化三大变革机遇。

专注:太空算力、AI infra、异构调度、大模型成本工程 229

AutoML

AutoML 什么是AutoML? ​ 目前一个优秀的机器学习和深度学习模型,离不开这几个方面: ​ 一、优秀的数据预处理; ​ 二、合适的模型结构和功能; ​ 三、优秀的训练策略和超参数; ​ 四、合适的后处理操作; ​ 五、严格的结果分析 ​ 这几方面都对最终的结果有着举足轻重的影响,这也是目前的数据工程师和学者们的主要工作。但由于这每一方面都十分繁琐,尤其是在构建模型和训练模型上。而大部分...

无悔王冠的专栏 2万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

神经网络架构搜索(NAS)综述 | 附AutoML资料推荐

本文是一篇神经网络架构搜索综述文章,从 Search Space、Search Strategy、Performance Estimation Strategy 三个方面...

Paper weekly 3172

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

「AutoML」强化学习如何用于自动模型设计(NAS)与优化?

作者&编辑 | 言有三 一直以来,网络结构的设计是一个非常需要经验且具有挑战性的工作,研究人员从设计功能更加强大和更加高效的模型两个方向进行研究,随着各类经典网络设计思想的完善,如今要手工设计出更优秀的模型已经很难,而以AutoML为代表的自动化机器学习技术就成为了大家关注的热点,其中用于搜索的方法包括强化学习,进化算法,贝叶斯优化等,本期我们首先介绍基于强化学习的方法。 1 模型结构搜索 Google在2017年利用强化学习进行最佳模型架构的搜索[1],引爆了自动设计网络模型(Neural

喜欢打酱油的老鸟 864

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

NAS实战:用AutoML自动设计YOLO-NAS目标检测模型(附Colab代码)

本文提供了一份实战指南,详细介绍了如何利用神经架构搜索(NAS)技术,在Google Colab上自动设计和优化YOLO-NAS目标检测模型。通过结合AutoML与YOLO框架,文章指导读者从环境搭建、搜索空间定义到可微分架构搜索(DARTS)的实现,旨在为特定数据集和硬件约束生成更高效、更精准的模型,并附有完整的Colab代码。

echo99的专栏 924

从学习到实战:快速升级Tinyhttpd的4个扩展方案(HEAD支持/Content-Type/连接复用)

Tinyhttpd 是仅约 500 行的超轻量级 HTTP 服务器,由 J. David Blackstone 于 1999 年编写,是学习 Web 服务器原理的经典项目。本文带你从编译运行讲起,给出 4 个可落地的 Tinyhttpd 扩展方案:**HEAD 请求支持、Content-Type 动态识别、Keep-Alive 连接复用**,外加一个安全加固方案,帮你把这个学习神器升级成接近实战的

gitblog_00840的博客 402

神经网络架构搜索(NAS)终极指南:Awesome-AutoML-Papers精选资源解析

神经网络架构搜索(NAS)作为AutoML领域最热门的技术之一,正在彻底改变机器学习模型的开发方式。如果你对自动化深度学习感兴趣,那么Awesome-AutoML-Papers项目就是你不可错过的宝藏资源库!🎯 ## 什么是神经网络架构搜索(NAS)? 神经网络架构搜索(NAS)是一种自动化设计神经网络架构的技术,它通过算法自动搜索最优的网络结构,无需人工干预。NAS技术能够显著提升模型性能

gitblog_00220的博客 1013

计算机科学领域中,基于神经架构搜索(NAS)的自动化机器学习模型设计与优化技术详解

神经架构搜索是指一种通过自动化手段寻找高性能神经网络架构的过程。它通常包括三个主要组成部分:搜索空间定义、搜索策略选择以及性能评估机制。搜索空间指的是所有可能被考虑作为候选解决方案的集合。对于NAS来说,这通常涉及到卷积核大小、激活函数类型、池化层配置等多个维度。

jie_kou的博客 1363

AutoML:自动化AI Agent的模型选择与优化

AutoML(Automated Machine Learning)旨在将机器学习工作流中的重复性任务自动化,特别是模型选择和超参数优化这两个最耗时且需要专业知识的环节。本文聚焦于AutoML在AI Agent开发中的应用,探讨如何通过自动化技术提升模型开发效率和质量。文章首先介绍AutoML的基本概念,然后深入探讨其核心算法和数学原理。接着通过实际代码示例展示实现细节,并讨论应用场景和工具资源。最后总结未来发展趋势和挑战。AutoML:自动化机器学习,指使用算法自动执行机器学习流程中的任务。

大模型应用工坊 1037

一文了解自动机器学习(AutoML)

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达Author:瞿晓阳From:Datawhale寄语:让计算机自己去学习和训练规则,是否能达到更好的效果呢?自动机器学习就是答案,也就是所谓“AI的AI”,让AI去学习AI。随着深度神经网络的不断发展,各种模型和新颖模块的不断发明利用,人们逐渐意识到开发一种新的神经网络结构越来越费时费力,为什么不让机器自己在不断的学习过程中创造...

小白学视觉 1226
上一篇: 【每周CV论文】深度学习文本检测与识别入门必读文章
下一篇: 【星球知识卡片】图像生成都有哪些核心技术,如何对其进行长期深入学习
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值