NAS入门(学习笔记)

文章目录

  • AutoML
  • NAS
    • 初期NAS
    • 当前NAS框架
        • One-Shot NAS
        • 权重共享策略
      • Zero-Shot NAS
        • Zen-NAS
        • NASWOT
        • EPENAS
  • 参考资料

AutoML

深度学习使特征学习自动化

AutoML 使深度学习自动化

自动化机器学习 (automated machine learning) 是一种自动化的数据驱动方法, 并做出一系列决策。

按模型类型划分,分为以下两类:

Classical ML:传统机器学习模型的自动化学习,包括基础算法的选择和超参数优化以及机器学习pipeline的自动合成等。

NAS:神经网络架构搜索 (Neural Architecture Search,NAS)是一种自动设计神经网络的技术,可以通过算法根据样本集自动设计出高性能的网络结构,在某些任务上甚至可以媲美人类专家的水准,甚至发现某些人类之前未曾提出的网络结构,这可以有效的降低神经网络的使用和实现成本。

NAS

NAS 是 AutoML子领域,是一种搜索最佳神经网络结构的方法。

2017年 nas 出现

2018 NAS开始流行

2019 2020更加成熟 成为标准技术

根据专家预先定义的搜索空间 (search space), 神经结构搜索算法在一个庞大的神经网络集合中评估 结构性能并寻找到表现最佳的网络结构。

自动化结构搜索的结果往往是专家手工设计过程中未考虑的, 能够取得 更加优异的性能表现, 尤其在一些硬件资源受限的应用场景中, NAS 往往能取得惊人的效果。

神经结构搜索在超 参数选择的过程中扮演着关键角色, 而且具有重要的理论意义和应用价值。

面向一种特殊的神经网络结构超参数, 神经结构搜索联合优化理论和机器学习理论, 有效地解决神经网络模型的调参问题, 降低神经网络的使用成本与 实现成本, 促使模型设计的智能化与神经网络应用的大众化。

初期NAS

NAS 算法通常采用采样 重新训练的策略, 即从预先定义好的搜索空间中采样数量庞大的网络结构, 分别对每个采样

结构重新训练并评估 性能, 以获取表现最佳的神经网络。实验结果优越但十分耗费资源。

对于 Cifar-10 数据集, 这类方法需要应用 800 个GPU, 持续近一个月才能完成 对最佳结构的搜索。

因此, 这种采样重新训练策略对计算资源的需求过大, 不利于 NAS 领域的发展与落地应用

img

当前NAS框架

在这里插入图片描述

为了降低搜索阶段的资源消耗, 神经结构搜索领域内应用最广的一种加速方式:

One-Shot NAS

它训练一个大型超网,然后评估其内部子网的性能,以及在训练过程中预测模型最终性能

One-Shot NAS 有一个很大的特性就是:训练一次 Supernet,便可以针对各种不同的constraint,得到多种不同的 network。

One-Shot NAS可以分成两个阶段,分别是 training stage 和 searching stage:

  • Training stage:在这个阶段,并不会进行搜索,而是单纯训练 Supernet ,使得 Supernet 收敛至一定的程度。
    当 Training stage 结束时, Supernet 中的参数就被训练收敛了,这个时候进入第二阶段。

  • Searching stage:从 Supernet 中不断取出 Sub-network,并使用 Supernet 的 weight 给Sub-network赋权重,这样就可以得到不同的Sub-network 的 validation accuracy,直到取得最好且符合 hardware constraint 的 Sub-network。

    权重共享策略

    权重共享策略(weight-sharing strategy)即尽可能地利用已经训练好的模型, 避免重新训练. 目前这种权重共享的搜索策略已经成为神经网络结 构搜索的主流方向。

    简而言之, 首先将预先设定的搜索空间表示为已经训练好的超级网络 (super-network), 然后在 保留原始权重的同时, 直接对采样的子结构 (sub-architectures) 进行性能评估, 不需要重新进行模型训练。

Zero-Shot NAS

0样本学习

Zen-NAS

一个用于评估架构性能的零点指标。Zen-NAS使用Zen-Score作为评估架构准确性的代理,成功地探索了架构,比现有的NAS方法更快、更准确。Zen-Score是一个用于评估架构性能的Zero-Shot指标,包含两个主要建议

在这里插入图片描述

NASWOT

Paper
Code

EPENAS

受NASWOT启发搜索空间是NAS-Bench-201,数据集是CIFAR-10, CIFAR-100, ImageNet16-120

参考资料

华为学习资料

EPE-NAS

NASWOT

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/239366.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Docker】网络模式➕自定义网络

🥳🥳Welcome 的Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于Docker的相关操作吧 目录 🥳🥳Welcome 的Huihuis Code World ! !🥳🥳 一.Docker网络模式的介绍 二. 网桥模…

Server/PC 稳定性测试(Windows)

Server/PC 稳定性测试 1. CPU - 中央处理器1.1 CPU稳定性1.2 CPU温度 2. Memory - 内存2.1 内存性能 3. DISK - 硬盘3.1 HDD - 机械硬盘机械硬盘转速详解监测工具 3.2 SSD - 固态硬盘监测工具 4. 使用时长cpu能用多久?主板能用多久?内存能用多久&#xf…

博后期间各种计划

博后期间各种计划: (1)国家自然科学基金(青年项目)、(2)博士后创新人才支持计划(23年新改革:28w*2生活补助经费8w科研启动经费;每年资助400多人;…

Ansible-剧本与变量

对于运维小伙伴来讲,Ansible并不陌生,配置简单,上手容易,只要掌握几个基本的模块就可以解决好多运维中重复的事,但是对于处理更为高级的功能和更大、更复杂的项目时,管理和维护Ansible Playbook或高效使用将…

解决MPICH的GPU初始化失败:一次深入探索

今天来分享“MPICH:MPII_Init_thread(222): gpu_init failed”这个问题的解决方式 文章目录 前言问题原因解决方案 前言 如果在安装MPICH的时候没有注意要一些选项,那么当使用mpicxx mpi_send.cpp -o send && mpirun -n 2 ./send进行编译输出的…

C++ 之LeetCode刷题记录(十一)

😄😊😆😃😄😊😆😃 开始cpp刷题之旅。 向耗时0s前进。 67. 二进制求和 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例 1: 输入…

最新AI绘画Midjourney绘画提示词Prompt大全

一、Midjourney绘画工具 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭…

抖音SEO搜索排名优化培训教程课件

【干货资料持续更新,以防走丢】 抖音SEO搜索排名优化培训教程课件 部分资料预览 资料部分是网络整理,仅供学习参考。 抖音运营资料合集 (完整资料包含以下内容) 目录 抖音易爆单的商品特征 抖音作为一款短视频平台,…

基于杂交PSO算法的风光储微网日前优化调度(MATLAB实现)

微网中包含:风电、光伏、储能、微型燃气轮机,以最小化电网购电成本、光伏风机的维护成本、蓄电池充放电维护成本、燃气轮机运行成本及污染气体治理成本为目标,综合考虑:功率平衡约束、燃气轮机爬坡约束、电网交换功率约束、储能装…

C语言数组

文章目录 1:一维数组的创建和初始化1.1 创建方式1.2:一维数组的初始化1.3:一维数组的使用1.3.1:数组下标 1.4:一维数组在内存中的存储 2:二维数组的创建和初始化2.1:二维数组的创建2.2:二维数组的初始化2.3:二维数组的下标2.4:二维数组在内存中的存储 3:数组越界4:数…

request entity too large 解决请求实体过大问题的方法

在网络请求过程中,有时会出现请求实体过大而导致服务器无法处理的情况。本文将介绍两种情况及其解决办法,真实可用! 问题描述 请求实体过大问题主要分为两种情况: 1、带413状态码的请求实体过大 这种情况通常发生在请求文件过…

display布局实现一侧的盒子高度与另一侧盒子的高度等高

实现两边容器的高度等高主要是用 align-items: stretch 这个属性 stretch 拉伸: 子元素没有高度或高度为auto&#xff0c;将占满整个容器的高度 <template><div><h3>我是测试页面</h3><div class"container"><div class"left-…

09、Kafka ------ 通过修改保存时间来删除消息(retention.ms 配置)

目录 通过修改保存时间来删除消息★ 删除指定主题的消息演示1、修改kafka检查过期消息的时间间隔2、修改主题下消息的过期时间3、查看修改是否生效4、先查看下主题下有没有消息5、添加几条消息看效果6、查看消息是否被删除 ★ 恢复主题的retention.ms配置1、先查看没修改前的te…

常见半导体设备厂商介绍

半导体作为全球最重要的一个产业&#xff0c;每年为全球经济贡献数千亿美元产值。在整个产业链上&#xff0c;除我们耳熟能详的英特尔、AMD、高通、台积电等生产商外&#xff0c;还包括了众多著名的材料商和设备商。今天我们将对全球最为出色的半导体设备厂商进行一次盘点和介绍…

学习c语言,奇偶排序

如果左边是奇数右边是偶数就不管他&#xff0c;如果左边找到偶数右边是奇数则互相交换。

【大厂算法面试冲刺班】day0:数据范围反推时间复杂度

常见算法的时间复杂度 规定n是数组的长度/树或图的节点数 二分查找&#xff1a;O(logn) 双指针/滑动窗口&#xff1a;O(n) DFS/BFS&#xff1a;O(n) 构建前缀和&#xff1a;O(n) 查找前缀和&#xff1a;O(1) 一维动态规划&#xff1a;O(n) 二维动态规划&#xff1a;O(n^2) 回溯…

图像表示方法

RGB表示 RGB是使用三基色合成的原理&#xff0c;我们看到的彩色图片&#xff0c;都有三个通道&#xff0c;分别为红、绿、蓝通道&#xff0c;如果需要透明度则还有alpha分量. 通常每个通道用8bit表示&#xff0c;8bit能表示256种颜色&#xff0c;所以可以组成 256256256167772…

云服务器搭建GitLab

经验总结&#xff1a; 1、配置需求&#xff1a;云服务器内存最低4G 2、内存4G的云服务器&#xff0c;在运行容器后&#xff0c;会遇到云服务器操作卡顿问题&#xff0c;这里有解决方案 转载&#xff1a;服务器搭建Gitlab卡顿解决办法-CSDN博客 3、云服务器的操作系统会影响…

游戏开发,中小公司跳槽去大厂容易还是考研应届生校招容易?

游戏开发&#xff0c;中小公司跳槽去大厂容易还是考研应届生校招容易&#xff1f; 在之前的文章中&#xff0c;我们提到过&#xff0c;游戏开发行业首选直接进入游戏大厂。《开发者必读&#xff1a;如何选择适合的游戏开发公司&#xff1f;》因为大厂不仅能提供良好的职业发展…

#AIGC##LLM##RAG# RAG:专补LLMs短板_减少LLM幻觉并多模态/RAG 技术最新进展

RAG技术&#xff0c;即检索增强生成&#xff0c;标志着自然语言处理领域的重大进展。通过整合先前知识&#xff0c;它提升了大型语言模型的性能&#xff0c;广泛应用于多模态领域和垂直行业。本文深入探讨了RAG技术的演进历程、技术发展、LLMs问题及其解决方案&#xff0c;为读…