动态神经网络概述札记。
动态神经网络综述阅读笔记
简而言之,没有条件作用。
Introduction
神经网络结构设计的发展:
2012-2015:快速发展。
2015-2017年成熟发展:
繁荣发展从2017年到:年。多样化(轻量级、自动搜索、动态神经网络.)
一个问题:模型的准确性和效率之间的平衡。
模型的性能往往与深度和宽度有关。
静态神经网络在推理中的局限性:在现实世界中,简单的样本往往占大多数,但如果想要更高的精度,就需要使用高度复杂的网络来识别不太典型的样本。因此,传统网络的一个局限之处就在于,人们设计了越来越高效、表达能力越来越强的卷积运算方式,但这些模型有静态的推理模式,处理不同样本消耗的是相同的计算量。小网络的精度无法保证,在大网络中处理简单样本会导致计算冗余。
一个简单的思路就是选择不同复杂度的网络,动态激活不同的网络模块(不同的网络层,同一层不同的信道)。
动态神经网络:自适应性,能够根据样本调节自身的结构从而提升整体运算效率。.
从网络参数来看,传统的网络训练后,网络参数是固定的,不同的样本用相同的卷积核进行处理,也会限制模型的表达能力。相应地,一些动态网络可以是针对不同样本自适应地调节自身的参数,从而更加灵活,让模型有更强的表达能力。.
动态神经网络的优点:
效率、表征能力、适应性(不同的计算平台有不同的状态,比如手机有不同的能力时可以调整计算复杂度)、兼容性(兼容最先进的技术)、通用性(通用性)、可解释性(可解释性,人脑会根据任务激活不同区域的神经元)。
Instance-wise Dynamic Networks(样本自适应动态神经网络)
对于不同的输入样本,网络可以自适应地调整其结构和参数。
动态结构动态参数
动态结构:动态深度、动态宽度、动态路由。提前退出:提前退出机制。对于困难的样品,整个过程完成,简单的样品在中间取出。当小模型和大模型串联时,当前一个小模型能够以高置信度识别样本时,后一个大模型是不必要的。问题是模型是独立设计的,小网络学习的参数不能被大网络重用。另一种设计思路是在骨干网络中增加中间出口。然而,这并不是最优的。如果增加中间网点,会影响分类性能,因为一般网络会对不同阶段的特征进行下采样,最后得到的信息包含更多的语义信息。在网络浅层学习到的信息都在高分辨率图像中,不利于分类。更好的解决方案是将链式架构变为多尺度架构,通过信心来判断是否提前离开。另一种实现动态深度的方法是跳过层,跳过一些中间层来减少开销。跳跃通道也给出了类似跳跃层的GatingFunction,类似于网络剪枝(永久去除部分卷积核),但省略哪些通道与输入特征有关,适应性更强,表达能力更好。多级也是控制网络宽度(通道数)的更好方法。首先,使用相对较少的频道再次转发。如果不能达到要求的置信度,信道数量将不断增加,直到整个网络被激活。有选择地执行多个并行网络分支的跳转分支是基于混合专家的。
动态参数:在推理阶段不能改变网络的计算图,也不是为了节省计算量而设计的,而是想让参数动态化,提高网络的表达能力。分为参数调整、参数预测和动态特性。参数调整:根据输入生成一组调整量,对原参数进行调整,得到动态参数。参数预测:根据输入直接生成一组动态参数进行运算。动态自适应卷积核的集成和软MoE是等价的。\(\适马_ { n } a _ Nw _ n)\倍x=\适马_ { n } a _ n(W _ n \倍x)\).可变形卷积:动态调整卷积核的形状,获得不同的感受野。
总结:样本自适应动态网络可以通过输入样本调整结构或参数。
Spatial-wise Dynamic Networks(空间自适应动态神经网络)
三类:像素级、区域级、分辨率级。
像素级:生成MASK预测哪些位置重要,然后对选中区域进行稀疏卷积。Level:不去决定是否计算每个像素,而是直接把原始图像中比较重要的小面片裁剪出来,输入网络进行计算。自适应分辨率:并不是所有的样本都需要更高的分辨率进行表示,而较小的子网络处理的是低分辨率的特征,而较大的子网络处理的是高分辨率的特征,也有提前离开的机制。
Temporal-wise Dynamic Networks(时间自适应动态神经网络)
在处理时间序列数据时,还可以针对不同的时间位置进行自适应计算。对于不那么重要的时刻的输入调用比较低的计算量。先对关键帧进行采样,再进行处理。
推理训练
决策:基于分类器softmax输出的置信度,不需要额外计算,但需要人为设置阈值。策略网:决定了哪些层可以跳过,哪些层需要执行,策略网的结构需要根据骨干网来设计。功能测试需要更长的培训过程。
培训方法:培训目标和优化方法。多出口网络的培养目标:后续采用知识蒸馏。对于跳层或跳信道:需要动态调用网络中的不同模块。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/52099.html