2.2 宏观搜索空间


文档摘要

2.2 宏观搜索空间 本节摘要:宏观搜索空间关注网络整体结构——深度、宽度、连接方式、宏观模块、拓扑结构。本节拆解这五个设计维度及各自的策略与代表网络,再对比链式、多分支、基于 Cell、基于模块、基于图五种空间类型,最后讨论"空间过大、表达力与效率失衡"等挑战与自动化空间设计的趋势。 读完这一节你会得到 阅读完本节,你应当能够: 说出宏观搜索空间的五个设计维度,每个维度配一个代表网络 对比五种宏观空间类型(链式/多分支/Cell/模块/图)的优缺点 解释"模块化设计"如何压缩宏观搜索空间的复杂度 举例说明哪些方法在用图结构直接搜索网络拓扑 一、问题与直觉:把网络当建筑蓝图来设计 宏观搜索空间关注的不是某个卷积核是 3x3 还是

2.2 宏观搜索空间

本节摘要:宏观搜索空间关注网络整体结构——深度、宽度、连接方式、宏观模块、拓扑结构。本节拆解这五个设计维度及各自的策略与代表网络,再对比链式、多分支、基于 Cell、基于模块、基于图五种空间类型,最后讨论"空间过大、表达力与效率失衡"等挑战与自动化空间设计的趋势。

读完这一节你会得到

阅读完本节,你应当能够:

  1. 说出宏观搜索空间的五个设计维度,每个维度配一个代表网络
  2. 对比五种宏观空间类型(链式/多分支/Cell/模块/图)的优缺点
  3. 解释"模块化设计"如何压缩宏观搜索空间的复杂度
  4. 举例说明哪些方法在用图结构直接搜索网络拓扑

一、问题与直觉:把网络当建筑蓝图来设计

宏观搜索空间关注的不是某个卷积核是 3x3 还是 5x5,而是"整栋楼怎么盖":多少层(深度)、每层多宽(宽度)、楼层之间怎么连通(连接)、用哪几种标准间(宏观模块)、整体是塔楼还是庭院式(拓扑)。SOURCE 给了一个贴切的比喻:宏观搜索空间如同建筑设计的蓝图,决定了建筑的整体框架和功能布局;而微观搜索空间处理的是房间内部的装修细节。

为什么先讲宏观?因为宏观结构决定了网络的"骨架",骨架错了,装修得再精细也白搭。ResNet 之所以能用 152 层而不崩,不是因为它某一层的卷积设计多精巧,而是残差连接这个宏观决策改变了梯度传播的路径。反过来,深度和宽度又互相纠缠:网络加深到一定程度,梯度不稳定,就得靠跳跃连接兜底;网络加宽,参数爆炸,又需要轻量化操作控制成本。宏观设计是这些矛盾的集中爆发点。

二、核心原理:五个维度与五种类型

维度一:网络深度。深度是网络能学到多复杂特征的根本限制。VGG16 与 VGG19 的差别就是深度不同;ResNet50/101/152 靠残差块堆叠撑起深度。设计策略有三种:固定深度范围(比如 [5,20])、深度递增搜索(从浅到深逐步加层)、深度模块化(把层打包成组,搜组的重复次数)。

维度二:网络宽度。宽度决定容量和表达能力,也决定过拟合风险与计算成本。Wide ResNet 通过增加残差块通道数提升性能;MobileNet 用深度可分离卷积加宽度乘数(Width Multiplier)控制宽度实现轻量化。搜索宽度时既可以直接搜每层通道数,也可以用全局缩放因子统一调宽度。

维度三:连接模式。顺序连接是最朴素的;跳跃连接(ResNet/DenseNet 的残差与密集连接)让浅层信息直达深层;并行连接(Inception)在同一层提取多尺度特征;循环连接用于 RNN/LSTM/GRU 这类序列模型;任意拓扑则走向图结构。搜索连接模式就是在问"要不要跳跃、跳到哪里、并行几路"。

维度四:宏观模块。这是把复杂空间"压缩"的关键一招。与其从零搜整个网络,不如从模块库里选模块、定堆叠方式。ResNet 的残差块、Inception 模块、MobileNet 的深度可分离卷积块、NASNet Cell,都是可复用的宏观模块。搜索时只决定"用哪个模块、模块内部怎么改、怎么堆",空间一下子小了一个数量级。

维度五:拓扑结构。链式、树状、图状三档。链式最简单,表达力也最弱;图结构表达力最强,能表达任意拓扑。GraphNAS 用图神经网络表示和搜索拓扑;AmoebaNet 虽然用进化算法,最终演化出的结构也可以看作一种图。拓扑搜索的空间最大,搜索难度也最高。

五种类型。链式结构空间最简单(NASNet 的最终网络就是 Cell 堆成的链,ENAS 也用 RNN 控制器搜链式网络),表达力有限。多分支结构空间能表达 Inception/Xception 这类并行结构,表达力更强但空间更大。基于 Cell 的空间是主流(NASNet/DARTS/ProxylessNAS 都搜 Cell),空间小、可迁移。基于模块的空间粒度更大,MetaQNN 把网络拆成卷积/池化/全连接模块用强化学习搜索。基于图的空间最灵活也最难,GraphNAS 与 AmoebaNet 是代表。

类型 代表方法 优点 缺点
链式 ENAS 简单高效 表达力有限
多分支 Inception/Xception 多尺度特征 空间更大
基于 Cell NASNet/DARTS/ProxylessNAS 空间小可迁移 受限于 Cell 形态
基于模块 MetaQNN 适中、可表达复杂结构 需先验设计模块
基于图 GraphNAS/AmoebaNet 表达力最强 空间最大最难搜

三、工程实践要点:宏观空间设计的四个现实问题

空间过大怎么破。宏观空间天然庞大,直接暴力搜索不可行。三条路:一是模块化——把网络拆成可重复模块,只搜模块与堆叠方式;二是用先验限定深度和宽度的范围,别给算法"无限加深"的自由;三是混合搜索——先固定一个合理骨架,只搜局部维度,跑通了再逐步放开。

表达力与效率的平衡。没有绝对正确的宏观空间,只有"够不够用"的宏观空间。小数据、小任务,链式空间足够;大数据、高要求任务,才值得上多分支或图结构。先小后大、逐步放开,是工程上的稳妥路线。

先验知识怎么用。SOURCE 指出,宏观空间设计依赖关于深度、宽度、连接的经验。别把先验当负担——它同时提升效率和质量。比如知道目标设备是移动端,就优先选深度可分离卷积这类轻量操作,把搜索空间直接设计在"低算力"区域。

别忽视结构同质化。宏观空间搜出的结构容易"一个模子刻出来"——全是不同深度的链式网络,缺乏多样性。这也是为什么后来的方法转向 Cell 空间:微观层面的精细搜索能带来结构异构性,这是下一节的主题。

⚠️ 常见坑:把深度范围设得过大(比如允许 0 到 200 层),大部分算力会浪费在极端深度上。给深度、宽度设合理区间,先验的收敛效果远好于"放开搜"。

💡 关键直觉:宏观空间是 NAS 里"先验浓度"最高的一层——你在这里做的每个范围设定,都在替算法做方向判断。设定越聪明,算法越省力。

四、代表方法深读:GraphNAS 与 AmoebaNet 的图空间实践

GraphNAS:用图神经网络搜索拓扑

GraphNAS 是 SOURCe 在"基于图的搜索空间"里点的两个代表之一。它的思路是:把"生成网络拓扑"本身当作一个图生成任务,用图神经网络(GNN)做控制器——GNN 读入当前已生成的网络结构,输出下一步该加什么节点、连什么边。相比 RNN 控制器(第 3.3 节),GNN 控制器对图结构更敏感,天然适合处理非序列化的拓扑生成。GraphNAS 的价值在于它示范了"搜索空间的表示方式"与"搜索算法的能力"如何互相成就:图空间表达力最强,所以值得配一个懂图的控制器。

AmoebaNet:进化出来的图结构

AmoebaNet 虽然常被归为"进化算法 + Cell 空间",但 SOURCe 特别指出:它最终演化出的网络结构可以看作一种图结构——进化过程中的变异操作(加边、改连接)本质上在修改图拓扑。这提醒我们:搜索空间的"类型"不是写死的标签,同一个方法可能同时横跨多个空间形态。工程上的启发是:别被"Cell 空间"或"图空间"这类标签框住,重要的是看清你实际在搜什么——节点、边、连接方式这三样,永远是空间设计的三个基本元素。

五、宏观空间的挑战与趋势:从"人设计空间"到"空间设计自动化"

SOURCe 在 2.2 节的展望部分列了四个趋势,这里挑三个值得工程上留意的展开。

趋势一:自动化搜索空间设计。 目前宏观空间设计依赖人工经验,未来方向是让算法自己学搜索空间——用元学习或强化学习从已有搜索经验中学习"什么样的空间值得探索"。这听起来很前沿,但底层逻辑已经在用了:你现在设计空间时的每个"先验直觉"(深度该设多少、要不要放残差块),本质上就是一个"经验版"的空间学习。

趋势二:知识迁移与泛化。 把在一个任务上搜到的架构或搜索经验迁移到新任务,提高 NAS 的泛化能力。工程上已经在做简化版:图像分类搜出的 Cell 直接用于目标检测的骨干网络。趋势三:可解释的 NAS。让搜出来的架构能被理解——这不仅为了论文好看,更是第 5.5 节讲伦理时提到的"发现偏见"的前提。

工程上的行动清单,如果今天就要动手设计一个宏观搜索空间,按这个顺序做:先列"必须包含的结构先验"清单(哪些连接模式、模块类型是底线);再定深度、宽度的合理区间(宁可小一点,别给算法"无限加深"的自由);接着把网络拆成可重复模块,决定搜哪几个模块变量;最后把已知强基线放进空间做合法性检验。四步走完,一个可用的宏观空间就成形了。

一个对比练习:为什么"宽"和"深"不是等价的搜索维度

深度和宽度看似都是"加容量",但搜索它们的方式完全不同。搜深度时,你其实在决定"网络要几个阶段、每阶段多深"——这影响梯度传播路径;搜宽度时,你在决定"每层的通道数"——这影响参数规模和计算密度。Wide ResNet 证明了"加宽"在 CIFAR 上比"加深"更容易训练;MobileNet 用宽度乘数控制计算量。工程上的经验是:宽度和深度应该作为两个独立维度分别设搜索范围,先固定一个搜另一个,比两个同时放开更容易收敛。

收束:宏观空间的"战略层"定位

回到本节开头的比喻——宏观空间是建筑蓝图。蓝图的意义不在于画出每一块砖,而在于定下整体框架:层数决定楼高,宽度决定楼宽,连接模式决定楼内动线,模块决定标准间样式,拓扑决定楼型。一份好的蓝图应该同时满足三条:装得下好设计(表达力)、画得完(可搜索)、每层都能说清用途(可解释)。工程上把这三条当成宏观空间设计的目标,就不会在"空间多大"这个问题上迷失方向。

  • 五个维度:深度、宽度、连接模式、宏观模块、拓扑结构
  • 模块化压缩空间:从零搜整网改为搜模块与堆叠方式,空间降一个数量级
  • 五种类型谱系:链式→多分支→Cell→模块→图,表达力递增、难度也递增
  • 先验是杠杆:深度/宽度范围设定直接影响搜索成本
  • 避免同质化:宏观空间容易产出同构网络,微观空间补充异构性
  • 逐步放开:先小空间跑通流程,再放大空间追求上限

下一节看微观搜索空间——把镜头拉近到 Cell 内部,看节点、边、操作怎么组合。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U