神经架构搜索的综合调查:挑战和解决方案(二)

news2024/11/27 4:18:50

4 PERFORMANCE COMPARISON

NAS 是一项很有前途的研究。在本节中,我们根据主流搜索方法 [27, 28] 对现有 NAS 的性能进行分类和比较,同时还根据第 3 节报告了它们使用的优化策略。这些搜索方法主要包括以下内容:强化学习(RL) ,进化算法(EA),梯度优化(GO),随机搜索(RS)和基于序列模型的优化(SMBO)[162]。我们在图 15 中总结了 NAS 背景下 RL、SMBO 和 EA 的一般框架比较。图 15a 显示了 NAS 上下文中 RL 的一般框架。 agent(控制器)做出相应的动作(采样神经框架)修改系统状态(神经架构),环境给予agent相应的奖励(验证集上的准确率)并相应地更新agent(调整算法参数)。图 15b 显示了 NAS 环境下 SMBO 的总体框架。替代模型 f ^ \hat{f} f^(性能预测器)评估所有候选单元 α ˉ \bar{\alpha} αˉ(神经架构的结构描述)[37] 并选择有希望的候选单元,然后评估由候选单元组成的神经架构在验证集上的性能并得到相应响应函数 f f f的响应值 f ( α ) f(\alpha) f(α)(损失值)[161]。将细胞 α i \alpha_i αi和对应的响应值 f ( α i ) f\left(\alpha_i\right) f(αi)作为新的元实例 ( α i , f ( α i ) ) \left(\alpha_i, f\left(\alpha_i\right)\right) (αi,f(αi))添加到细胞测量性能的历史记录 H H H中,并根据 H H H再次更新代理模型,直至收敛。通过迭代,细胞 α \alpha α的代理模型值 f ^ ( α ) \hat{f}(\alpha) f^(α)不断逼近相应的响应值 f ( α ) f(\alpha) f(α),以避免耗时的训练步骤。图 15c 显示了 EA 在 NAS 环境下的一般框架。该算法首先初始化种群并选择亲本,然后以亲本为基础进行交叉或变异产生新的个体后代(神经架构),并对后代的适应性进行评估(新神经架构的性能评价),选择一个一组具有最强适应性(性能最好的神经结构)的个体来更新种群。 GO在图6中已经详细描述,这里不再赘述。

我们打算从这些总结中获得它们的相同点和不同点。情况并不像看起来那么简单。事实上,比较NAS性能是比较困难的,因为NAS缺乏某些基线。此外,不同类型的NAS在预处理、超参数、搜索空间、trick等方面存在较大差异,增加了NAS性能对比的难度。这些技巧包括学习率衰减、正则化(例如,DropPath [32、136])、增强技术(例如,Cutout [131])等。随机搜索策略被认为是一个强大的基线。例如,在 [24] 中,与其他策略相比,随机搜索识别出最好的 RNN 单元。 [129]、[34] 和 [105] 中的研究结果也证明了这一点。因此,[129]使用随机搜索策略的平均架构作为比较的基线。

表 2 总结了最先进的 NAS 和主流人工网络在 CIFAR10 数据集上的性能。此外,基于第 3 节,我们同时报告了 NAS 中使用的优化策略。同样,我们在表 3 中对 ImageNet 数据集进行了性能比较。由于在同一 NAS 方法中使用的优化策略是相同的,因此我们在表 3 中省略了相应优化策略的报告。

通过观察表2和表3,我们可以清楚地看到,在流行的NAS中,模块化搜索策略的使用非常广泛。这主要是因为与全局搜索相比,模块化搜索大大降低了搜索空间的复杂性。然而,正如 3.1 节中总结的那样,这并不一定意味着模块化搜索空间优于全局搜索。此外,我们可以肯定地得出结论,不完全训练也被广泛使用;这可以有效地加速候选神经架构的排序,从而减少搜索时间。此外,在考虑的众多优化策略中,基于连续搜索策略的梯度优化最能显著降低搜索成本,并有非常丰富的研究支持。我们还观察到基于随机搜索策略的 NAS 也取得了极具竞争力的性能。然而,很明显,现有的 NAS 对随机搜索策略的研究相对不足。架构回收的优化策略也表现出较为优异的性能,但相关研究相对较少。另一方面,迁移学习是 NAS 任务中广泛使用的技术;也就是说,在小数据集 (CIFAR-10) 上搜索的架构将转移到大数据集 (ImageNet) 上。因此,表2和表3所示的两个数据集所涉及的搜索时间成本是相同的[17、32、39、46]。这些预先在小数据集上进行的搜索任务通常称为代理任务。 ProxylessNAS [104] 还考虑了在没有代理的情况下直接搜索大型目标任务的问题。

在这一部分中,我们从性能和参数量两个方面对流行的 NAS 方法与主流的、人工设计的网络进行了多维度的比较和总结。然而值得注意的是,与使用手动设计的网络相比,使用 NAS 获得的性能提升是有限的。

5 FUTURE DIRECTIONS

NAS 的出现令人兴奋,因为它有望结束人工神经架构设计的繁琐试错过程。而且,也希望它能够设计出一种完全不同于人工网络的网络结构,从而突破人类现有的思维定式。人工设计的网络在许多领域取得了突破,包括图像识别 [4, 7, 113],机器翻译 [1, 3, 143, 151],语义分割 [144, 145, 150],目标检测 [8, 148, 149],以及视频理解 [146、147] 等。虽然NAS的相关研究已经相当丰富,但与人工神经架构设计在各个领域的快速发展相比,NAS还处于初级研究阶段。目前的NAS主要着眼于提高图像分类准确率,压缩搜索神经结构所需的时间,尽可能做到轻便易推广。在此过程中,适当的基线至关重要,因为这有助于避免 NAS 搜索策略研究被各种强大的增强技术、正则化和搜索空间设计技巧所掩盖。另外,目前NAS使用的搜索策略比较集中,尤其是基于超网的GO,相关研究存在很多理论不足。因此,提高相关研究背景对NAS的发展大有裨益。

更具体地说,从NAS设计的初衷来看,早期的NAS非常接近人们对自动神经架构设计的预期。例如,Large-scale Evolution [15] 使用 EA 作为 NAS 搜索策略,并强调一旦网络演化开始就不需要人工参与。在尽可能减少人为干扰的情况下,让算法自主决定网络的演进方向。这是一个好的开始,虽然当时的搜索性能不足。这主要是因为Large-scale Evolution强调尽可能减少人为限制,也是从最简单的单层网络进化而来(如图3所示)。这意味着种群必须包含足够数量的个体才能演化出令人满意的结果。此外,由于进化效率和巨大搜索空间的限制,很难进化出能够取得优异性能的网络结构。因此,后续的NAS工作开始探讨如何在尽可能减少搜索空间的同时,还能提升网络性能。 NASNet [32] 受益于人工神经架构设计 [4, 30, 31] 的思想,提出了后来被广泛采用的模块化搜索空间。然而,这是以牺牲神经架构设计的自由度为代价的。尽管这种模块化搜索空间确实显著降低了搜索成本,但在将全局搜索转变为模块化搜索的过程中是否忽略了更好的神经架构在现实中并不清楚。这也是目前还不清楚模块化搜索是否优于全局搜索的主要原因(相关研究也很缺乏)。此外,神经架构设计的自由度与搜索成本存在矛盾。如何平衡两者并获得良好的性能仍然是未来重要的研究方向。

此外,还有两个问题值得警惕。从基线的角度来看,正如第 4 节所分析的,NAS 的一个广受批评的问题是缺乏相应的基线和可共享的实验协议,这使得 NAS 搜索算法之间的比较变得困难。虽然 RS 已被证明是一个强大的基线 [24、34、105、129],但对该主题的研究仍然不足。 [24] 指出当前最优 NAS 算法的性能与随机策略相似,应该引起研究者的关注。因此,需要更多的消融实验,研究人员应该更多地关注 NAS 设计的哪一部分导致了性能提升。盲目地堆叠某些技术来提高性能也应该受到批评。因此,相关的理论分析和反思对NAS未来的发展至关重要。

另一个需要警惕的问题是广泛使用的参数共享策略[19];尽管它有效地提高了 NAS 搜索效率,但越来越多的证据表明,参数共享策略可能会导致次优的不准确候选架构排名 [21、24、25、100]。这将使 NAS 几乎不可能在搜索空间中找到最优的神经架构。因此,相关的理论研究和改进值得期待。此外,目前NAS的工作主要集中在提高图像分类的准确性和降低搜索成本上。未来,NAS 将在需要复杂神经架构设计的领域发挥更大的作用,例如多目标架构搜索、基于现有模型利用 NAS 的网络改造、模型压缩、目标检测和分割等。

RobNet [152] 使用 NAS 方法通过分析性能强和性能差的架构之间的差异来生成大量神经架构;这将能够识别哪些网络结构有助于获得稳健的神经架构。受此启发,曾经可行的想法是在自由度更高的搜索空间中使用与RobNet相似的概念,分析有前途的架构共有的结构特征,增加其在搜索空间中的结构比例。此外,它还可以减少搜索空间中表现不佳的架构的共同结构特征的比例,从而逐步缩小搜索空间。应该允许算法自主决定应该删除或添加哪些网络结构,而不是人为地施加约束。

另一方面,在深度神经网络的设计中,除了耗费研究者大量精力的神经架构设计之外,另一个令人头疼的是非架构超参数(例如优化器类型、初始学习率等)的设置、权重衰减、混淆率 [159]、丢弃率和随机深度下降率 [160] 等)。因为这些超参数对网络性能的影响也是至关重要的。而且,可能相关的非架构超参数组和架构组合的数量往往非常庞大,手动设计所有可能的组合是困难且低效的。因此,考虑如何将神经架构中的超参数整合到搜索空间中,并让算法自动调整超参数的设置,也是一个非常有前途的研究方向。虽然一些早期的方法也探索了超参数和架构的联合搜索,但它们主要关注小数据集和小搜索空间。幸运的是,FBNetV3 [157] 和 AutoHAS [158] 的实验表明这个方向有很大的潜力,有望找到更高精度的架构-配方组合。

简而言之,NAS 的出现是一个令人兴奋的发展。目前NAS还处于起步阶段,需要额外的理论指导和实验分析。确定哪些 NAS 设计可以提高性能是改进 NAS 的关键因素。如果NAS要完全取代人工神经架构的设计,还需要更多的研究,更扎实的理论基础。还有很长的路要走。

6 REVIEW THREATS

以上是我们基于open NAS相关工作所做的总结和讨论。我们客观地陈述了一些需要进一步证实的未发表论文中的观点。由于时间和精力有限,我们直接套用了参考文献中的结果,没有复现他们的结果。

7 SUMMARY AND CONCLUSIONS

这项调查提供了对早期 NAS 工作的深刻观察,并总结了早期 NAS 共有的四个特征。针对这些挑战,我们依次对现有工作进行了全面系统的分析比较。我们第一次从挑战和相应解决方案的角度回顾了所有与 NAS 相关的工作。并对现有 NAS 工作的性能进行了全面的比较和讨论。最后,我们对NAS未来可能的发展方向进行了全面的探讨,并提出了两个值得警惕的问题。这对以后的NAS研究很有用。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统学习笔记(Ⅲ):内存

目录 1 内存管理 1.1 内存基础知识 1.内存 2.进程运行 1.2 内存管理的概念 1.3 覆盖与交换 1.覆盖 2.交换 3.区别 1.4 连续分配管理方式 1.单一连续分配 2.固定分区分配 3.动态分区分配 1.5 动态分区分配算法 1.首次适应算法 2.最佳适应算法 3.最坏适应算法 …

网络安全与IP安全

网络安全 是指网络系统的硬件,软件以及系统中的数据收到的保护。 保护的基本属性为:机密性,身份认证,完整性和可用性; 基本特征:相对性,时效性,相关性,不确定性&#xf…

React项目实战之租房app项目(六)渲染房源列表axios优化封装顶部搜索栏列表找房模块之条件筛选

前言 目录前言一、地图找房模块-获取并渲染房源列表1.1 房源列表示例图1.2 实现步骤1.3 代码示例二、axios优化2.1 问题概述2.2 配置生产环境和开发环境2.3 axios优化三、封装顶部搜索导航栏四、列表找房模块-导入顶部导航栏组件五、列表找房模块-条件筛选(上&#…

Python将Excel文件插入Mysql数据库(脚本)

目录前言最近接到一个需求,就是将多个Eccel文件(表头相同;每个都非常大,约60多万行,每个都是!!)先合并在一起,再做一些处理,但是Excel表格一个文件根本存不下…

Python矩阵乘法 二重循环实现 + 列表推式

这是python 矩阵乘法的简单例子 col 2 row 2 a [[1, 2], [3, 4]] b [[5, 6], [7, 8]] c [[0, 0], [0, 0]] “”" a b c 二维矩阵初始化 c [[0 for col in range(col)] for row in range(row)] a [[0 for col in range(col)] for row in range(row)] b [[0 for c…

Android热修复,精简学习

接入热修复 接入热修复流程如下: 配置开发环境在控制台创建应用在客户端创建新工程签名配置加密信息编写代码发布带有热修复功能的客户端版本 配置开发环境 在控制台创建应用 在控制台创建 mPaaS 应用。此时,本地还没有带签名的 APK,因此…

面试:插件化相关---broadcastReceiver

实现原理 1 采用的模型 Android中的广播使用了设计模式中的观察者模式:基于消息的发布 / 订阅事件模型因此,Android将广播的发送者 和 接收者 解耦,使得系统方便集成,更易扩展 2 模型讲解 模型中有3个角色: 消息订阅…

小程序项目结构

pages 用来存放所有小程序的页面utils 用来存放工具性质的模块(例如:格式化时间的自定义模块)app.js 小程序项目的入口文件app.json 小程序项目的全局配置文件app.wxss 小程序项目的全局样式文件project.config.json 项目的配置文件sitemap.json 用来配置小程序及其页面是否允许…

【数据结构-查找】散列表

文章目录1 线性探测法1.1 查找成功时的 ASL1.2 查找失败时的 ASL1.3 散列表的装填因子 α2 拉链法1 线性探测法 1.1 查找成功时的 ASL 查找元素 47(散列函数:3)次数:1查找元素 7(散列函数:11)次…

云上办公便捷、安全,就用华为云桌面

云上办公便捷、安全,就用华为云桌面! 根据IDC提出的“未来工作空间”的概念,未来工作空间意味着将打破时空与地域的限制,让员工随时随地工作。未来工作空间也将成为企业整体数字化转型战略中的必要组成部分。 恰逢其时&#xff0…

kubernetes Pod详解

文章目录Pod生命周期创建和终止pod的创建过程pod的终止过程初始化容器钩子函数容器探测重启策略Pod调度定向调度NodeNameNodeSelector亲和性调度NodeAffinityPodAffinityPodAntiAffinity污点和容忍污点(Taints)容忍(Toleration)Po…

【测试沉思录】19. 如何设置 JMeter 线程组?

作者:宋赟 编辑:毕小烦 最近有不少测试同学问我 JMeter 线程组如何设置并发的问题,发现很多人对线程组里的参数不是很清楚,今天就科普一下 JMeter 线程组的信息,也简单介绍一下不同场景的并发策略。 1. 线程组是什么 …

制作一个简单HTML游戏网页(HTML+CSS)米哈游 1页 带轮播图

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 游戏官网 | 游戏网站 | 电竞游戏 | 游戏介绍 | 等网站的设计与制作 | HTML期末大学生网页设计作业,Web大学生网页 HTML:结构 …

K3S +Helm+NFS最小化测试安装部署只需十分钟

作者:郝建伟 k3s 简介 官方文档:k3s 什么是k3s k3s 是一个轻量级的 Kubernetes 发行版 它针对边缘计算、物联网等场景进行了高度优化。 k3s 有以下增强功能:打包为单个二进制文件。 使用基于 sqlite3 的轻量级存储后端作为默认存储机制。…

【附源码】计算机毕业设计JAVA专利查询与发布系统设计与实现

【附源码】计算机毕业设计JAVA专利查询与发布系统设计与实现 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&#xff1…

BI数据分析

一 前言 数据分析一般需要掌握Excel、SQL,再强大的需要掌握python等。目前市面上的数据BI工具,就是用来优化复杂的数据分析过程,解放相关人员的生产力的,不再为了一个需求而漫长等待和重复多次沟通,从而让人员可以更多…

Echarts柱状图label优化历程

问题1 由于项目数据记录多或者数据值大的时候,会出现label重叠的现象,如下图。 解决方案 针对上述问题,解决思路如下: 1、求Y轴的最大值(我们用Y轴的最大值,去计算每个柱子在整个图中的占比)…

分布式文件系统

0.0 分布式文件系统 一般做法: 传统的模式是我们通过tomcat或者nginx,存放静态资源文件。 存在的问题: 单个节点会出现存不下的情况,需要多个节点。 分布式文件系统 需要一个系统来管理多个计算机节点上的文件数据&#xff…

[附源码]计算机毕业设计JAVA小锅米线点餐管理系统

[附源码]计算机毕业设计JAVA小锅米线点餐管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM my…

Python Faker库造伪数据

pip install Faker -i https://pypi.tuna.tsinghua.edu.cn/simple 在生成数据时,先调用unique,上面例子中的代码则改成下面这样 from faker import Faker def faker_demo(n): f Faker(“zh-CN”) l [] for i in range(n): # 代码更改处,…