写点什么

实用机器学习笔记二十六:NAS

作者:打工人!
  • 2022 年 3 月 12 日
  • 本文字数:944 字

    阅读完需:约 3 分钟

实用机器学习笔记二十六:NAS

前言:

本文是个人在 B 站自学李沐老师的实用机器学习课程【斯坦福 2021 秋季中文同步】的学习笔记,感觉沐神讲解的非常棒 yyds。

神经网络架构搜索(NAS):


上一篇文章讲了模型的超参数如何使用算法来进行选取。本文讲解神经网络的结构如何通过算法来选取。


  • 一个神经网络有不同类型的超参数

  • 拓扑结构:层数,层与层之间的连接方式。resnet-ish,mobilenet-ish

  • 独立的层:核大小,卷积层的通道,隐藏层的神经元个数等


  • NAS 即把设计神经网络结构进行自动化

  • 如何明确神经网络的搜索空间

  • 使用哪些算法探索搜索空间

  • 如何性能评估

NAS with Reinforcement:


使用强化学习的架构对网络结构进行设计,但是成本非常高,因此不常用。

The one-shot approach:


  • 既学习网络架构,也学习模型的超参数。

  • 训练一个非常大的模型,这个模型包含了很多子结构,大的模型训练好了,想要的子结构的也就得到了

  • 评估候选架构:

  • 只关心这个架构比另外的结构好就行了,并不关心模型的最终精度是多少,因此并不需要把模型训练到收敛

  • 使用近似的指标:关注一些训练轮之后的精度即可

  • 把最好的模型选择出来之后,从新训练这个模型直到收敛。

可微架构搜索(Differentiable Architecture Search):


  • 通过 softmax 对神经网络结构中的每一层子路进行选择,如下图:

  • 首先神经网络的整体结构是定的,比如 CNN,resnet 等。可微架构搜索做的工作是选择每一层是什么样的,比如:卷积核的大小等。也就是 C1,C2,C3(每一层的候选者)。假设最优通路:C2-->C3。

  • 层的第个候选者的输出为

  • 学习混合权重。第层的输入为,其中

  • 选择候选者根据:

  • 通过学习来解决那条路比较好


可微架构搜索

Scaling CNNs:


  • 比较常用实用,但是只适用于一小部分神经网络,比如:efficientNet

  • 卷积神经网路可以由 3 种办法来调节:

  • 深度:网络层数

  • 宽度:每一个卷积层的输出通道

  • 大的输入:输入图片增大等


  • EfficientNet 提出了一个联动的调参方法:

  • 深度调整因子:, 宽度调整因子:, 输入缩放因子:, 每一次调节都是原始数据*因子

  • 设置。其中。通过调节,则网络的计算复杂度是以 2 倍增加

研究方向:


  • NAS 的结果可解释性

  • 应用于边缘设备

  • 机器学习流程自动化


发布于: 2022 年 03 月 12 日阅读数: 101
用户头像

打工人!

关注

未来自动驾驶领域扫地僧 2019.11.10 加入

2021年InfoQ年度最佳内容获得者。 InfoQ签约作者 自动化和控制专业入坑人士,目前在研究深度强化学习(DRL)技术。学了Java,本来要入坑互联网,现在要入坑车联网了。喜欢了解科技前沿技术,喜欢手机摄影。

评论

发布
暂无评论
实用机器学习笔记二十六:NAS_学习笔记_打工人!_InfoQ写作平台