Part3 神经网络架构搜索 NAS

1. 神经架构搜索(NAS)概述

  1. NAS的目标:在搜索空间中自动寻找最优网络架构,平衡精度与效率(如延迟、内存、能耗)。
  1. 核心三要素
      • 搜索空间:候选架构集合(如层数、通道数、连接方式)。
      • 搜索策略:探索搜索空间的方法(如强化学习、进化算法)。
      • 性能评估策略:快速评估候选架构的性能(如代理模型、零成本预测)。
        • notion image

2. 搜索空间设计

  1. 层级划分
      • 单元级(Cell-Level):设计可复用的基础模块(如NASNet中的RNN生成单元)。
        • notion image
      • 网络级(Network-Level):调整分辨率、宽度、深度、拓扑连接(如AutoDeepLab)。
        • notion image
设计策略:搜索空间需包含高FLOPs但低内存占用的候选架构
notion image

3. 搜索策略

  1. 网格搜索:遍历所有参数组合(计算成本高)。
    1. notion image
  1. 随机搜索:随机采样,效率优于网格搜索。
    1. notion image
  1. 强化学习(RL):用RNN控制器生成架构,通过奖励(如验证精度)优化策略。
  1. 梯度下降(如DARTS):将架构选择参数化为可微分权重,联合优化网络权重和架构。
    1. notion image
  1. 进化算法:模拟生物进化(突变、交叉、选择),优化目标函数(精度+效率)。

六、硬件感知NAS

  • 目标:直接优化硬件指标(如延迟、能耗)。
  • 方法
    • 在损失函数中加入硬件指标(如ProxylessNAS)。
    • 使用硬件性能预测模型(如Once-for-All)。

七、关键总结

  • NAS优势:自动化设计显著超越人工设计(如EfficientNet、MCUNet)。
  • 挑战:搜索空间爆炸、评估成本高、硬件适配复杂。
  • 未来方向:零成本评估、神经-硬件协同设计、多任务泛化。