四种 Norm 对比

BN:垂直于C维度归一化LN:垂直于N维度归一化IN:垂直于N, C维度归一化GN:,g表示每个group覆盖的channel数
四种 Norm 的 Affine 参数 Shape
1 | import torch |

BN:垂直于 C 维度归一化LN:垂直于 N 维度归一化IN:垂直于 N, C 维度归一化GN:GN={LN, g=1IN, g=c,g 表示每个 group 覆盖的 channel 数1 | import torch |
https://arxiv.org/pdf/2109.09310.pdf

空间方向就是指 H、W 方向
图中用一个极端例子演示,实际上二值 mask 不是由人手工设计的,而是神经网络自动学习得到
普通卷积计算过程:
多功能卷积计算过程(在空间方向上):
“[]” means concat,bi means bias
$ s.t.\ s = \lceil \frac{d}{2} \lceil,\ { M_i }s_{i=1}\in{0, 1}{d\times d\times c}\ $

在卷积神经网络中 C >> H、W,所以在 Channel 方向设计多功能卷积非常必要
数学表示:
$ s.t.\ \ \forall i, \hat{f}_i \in \mathbb{R}^{d\times d\times c},\ \ n = (c - \hat{c})/g+1$

极端情况:如果一个主卷积核对应的所有二值 mask 都相同,那理论上模型效果与只是用主卷积核运算表现基本相同
所以需要加入一种使得 同一个主卷积核对应的多个每个二值 mask 更倾向不同 的损失函数
损失函数数学表示:
$ \mathcal{L}_{ortho} = \frac{1}{2} \lVert \frac{1}{d2c}MTM-I\rVert_F^2$

https://arxiv.org/pdf/2110.07641.pdf
ParNet,12层深度可以在 ImageNet 上达到 80.72% 准确率的效果Branch 可以并行计算,而纵向深度只能顺序计算RepVGG 和 SENet 的结构合并成了 RepVGG-SSE 结构ParNet 表示 parallel substructure network
SENet 结构的原因:网络深度过浅,下采样次数太少,只能通过 SE 结构获得全局信息RepVGG 结构的原因:结构重参数化白给的涨点,不要白不要feature,最终 fusiontradeoffmodel scale:
ResNet)做 model scale 的方法:
H、W:减少下采样次数C:增加卷积核数量blockParNet 做 model scale 的方法:
H、W:减少下采样次数C:增加卷积核数量Stream:增加横向 Branch 数量SSE 是指 Skip-Squeeze-and-Excitation:为降低网络层数,将 SE 结构中 GAP 后的 feature 做一层 Conv 而不是两层 MLPSSE 结构之外,没有跳边连接
这个图有点不公平,因为横坐标表示层数而不是参数量
ResNet 对比

https://arxiv.org/pdf/2103.16788.pdf

eval 模式)已有的表征器;为新的增量数据训练一个表征器;两个表征器结果 concat 作为新的表征结果concat 即为新的表征结果 uChannel-level MasksSparsity Loss 
https://arxiv.org/pdf/2108.13341.pdf
MLP 网络结构用于图像分类,效果优于 MLP-mixer
inner-region rearrange 过程为:
cross-region rearrange 过程为:

https://arxiv.org/pdf/1901.05555.pdf
Class-Balanced Loss重复,有 1-p 的概率不重复,n 越大,冲突可能越大,所以 p 越大
理论模型只提供一个权重,实际使用时还需要结合其他的分类损失函数,例如 [Softmax Loss(交叉熵), Sigmoid Loss, Focal Loss]
CB(p,y)=Eny1L(p,y)=1−βny1−βL(p,y)
其中,p∈[0,1] 表示输入样本 x 后模型输出的各类的概率分布,y 表示样本 x 的 label,β 是一个超参数,L(p,y) 是分类常用损失函数
class-balanced softmax cross-entropy loss
CBsoftmax(z,y)=−1−βny1−βlog(∑j=1Cexp(zj)exp(zy))
class-balanced sigmoid cross-entropy loss
CBsigmoid(z,y)=−1−βny1−β∑i=1Clog(1+exp(−zit)1)
class-balanced focal loss
CBfocal(z,y)=−1−βny1−β∑i=1C(1−pit)γlog(pit)
γ∈{0.5,1,2}




https://arxiv.org/pdf/2007.11301.pdf
{<path>}SVG 由 Np 个 path 组成,即 V={P1,...,PNp}path 由一个三元组表示,即 Pi={Si,fi,vi}, Si:shape, fi:fill property, vi:visibilityshape 由 Nc 个 command 组成,即 Si={Ni1,...,NiNc}{<SOS>, <M>, <L>, <C>, <Z>, <EOS>}<C> 的参数长度每个 command Ci 被映射到一个 dE 维的向量 eij , eij=ecmd,ij+ecoord,ij+eind,ij



https://arxiv.org/pdf/1809.02966.pdf
Gauss-Newton (GN)、Levenberg-Marquadt (LM)GN 法获得最优变化量: JiTJiΔxi=−JiTri ,如果 JiTJi 可逆,则最优变化量 Δxi=−(JiTJi)−1JiTriLM 法获得最优变化量(在 GN 的基础上加入超参数—— 阻尼系数 λ): Δxi=−(JiTJi+λ diag(JiTJi))−1JiTriGN 加入了更多的可学习参数,使用梯度下降优化网络结构包含 bootstrap network、iterative network、refinement network
bootstrap network: 生成低分辨率( 4H,4W )的粗糙估计(一个简单的包含下采样的CNN)iterative network:重复迭代与细化,本文使用 LSTM (非线性最小二乘法优化也用于此处)refinement network:上采样(双线性插值法)

- 其中 fθ0 表示
bootstrap network, fθ 表示Convolutional LSTM Cell
J 具体空间局部性,所以这里使用的 LSTM 是 Convolutional LSTMAlgorithm 1 所示, xi 用来产生 Ji 从而产生 Φ(Ji,ri)
Convolutional LSTM 中输入的不是 xi ,而是压缩后的二阶雅各比矩阵,用来拟合 Δxi ,可以通过近似 GN 法,产生超一阶优化的效果GN : Δxi=−(JiTJi)−1JiTri ,本文: Δxi=LSTM(JiTJi,ri) ,即把 [(JiTJi)−1Ji,ri]−−>[JiTJi,ri] 并加入了 LSTM 梯度下降优化https://dl.acm.org/doi/pdf/10.1145/3219819.3220007
Multi-gate Mixture-of-Experts 简称 MMOEMMOE 中的 Multi-gate 本质就是一种 Softmax Attention,针对不同的任务给出不同的专家组合
其中
A和B分别表示两个 任务,Tower表示与任务相关的金字塔头部,Expert表示专家 bottom network,Gate表示任务相关的权重生成网络
A 和 B 之间的相关性较弱,那么共用一个 Backbone 是危险的Expert 做 Backbone 进行不同维度的特征提取,只有一个 Gate network 用于给每个任务生成 Expert 权重Expert 做 Backbone 进行不同维度的特征提取,每个任务有单独的 Gate network 生成唯一的 Expert 权重Bottom Shared
yk=hk(f(x))
其中 k 表示 任务数,f() 表示 shared bottom,hk 表示 第 k 个任务的 Tower
OMOE
yk=hk(∑i=1ng(x)ifi(x)), where ∑i=1ng(x)i=1, g(x)∈Rn
其中 n 表示 专家数,g 表示 Gate network(由于 g(x) 要经过 Softmax,使得 logits -> prob,所以 ∑i=1ng(x)i=1)
MMOE
yk=hk(∑i=1ngk(x)ifi(x)), where ∑i=1ngk(x)i=1
gk(x)=softmax(Wgkx),其中 x∈Rd, Wgk∈Rn×d, so gk(x)∈Rn
与 OMOE 不同之处在于: 每个任务有单独的 Gate network,不共享
Gate 以及 Expert 都是独立的,实际实现过程中只能使用 for loop 依次计算,效率很低,速度很慢


https://arxiv.org/pdf/2009.04759.pdf
Maxout 和基于 Smooth maximumMaxout 的主要是 XXXReLU 家族smooth maximum 的本文命名为 activate or not 家族,著名的 Swish 在 β=1 时就是 ACON-A
ACON 中的 β 从一个 learnable parameter 变成一个 network,ACON -> Meta-ACON,这里的 network 与 SENet 中的 channel-scale 用到的两层 fc 结构相同1 | import torch |

Smooth maximum 机制的作用