Loading

【WeightNet】2020-ECCV-WeightNet: Revisiting the Design Space of Weight Networks-论文阅读

WeightNet

2020-ECCV-WeightNet: Revisiting the Design Space of Weight Networks

来源:ChenBong 博客园


Prepare

CondConv

条件参数生成

image-20210202171609075 image-20210202172117329

image-20210202172443315

\(\alpha\) 如何得到?

  • \(α=r(x)=sigmoid(fc(avg pool(x)))\)

SENet

channel attention 的模块,对卷积层的不同输出通道学习不同的权重 \(α\)

image-20210209161119063

具体细节:GAP ==> FC+relu ==> FC+sigmoid

image-20210209161146153

Introduction

卷积核的参数生成网络,对CondConv和SENet的重新思考,将两种看起来不同的方法统一到一个通用的框架下。

image-20210209173706485

Motivation

Contribution

Method

Group FC

image-20210209172101428

统一两种方法

input feature map: \(X ∈ \mathbb{R}^{C×h×w}\)

output feature map: \(Y ∈ \mathbb{R}^{C×h'×w'}\)

real kernel: \(W' ∈ \mathbb{R}^{C×C×k^h×k^w}\)

\((h,w), (h', w'), (k^h, k^w)\) denote the input, output, and kernel size

第一步:SENet 和 CondConv 的第一步都是使用卷积层的输入x,学习一个attention vector \(α\)

  • CondConv
    • \(\boldsymbol{\alpha}=\sigma\left(\mathbf{W}_{f c 1} \times \frac{1}{h w} \sum_{i \in h, j \in w} \mathbf{X}_{c, i, j}\right)\)
    • 其中,\(W_{fc1} ∈R^{m×c}, X_c∈R^{c×1}\) ,所以 \(\alpha∈R^{m×1}\),m为 expert 的数量
  • SENet
    • \(\boldsymbol{\alpha}=\sigma\left(\mathbf{W}_{f c_{2}} \times \delta\left(\mathbf{W}_{f c 1} \times \frac{1}{h w} \sum_{i \in h, j \in w} \mathbf{X}_{c, i, j}\right)\right)\)
    • 其中 \(\mathbf{W}_{f c 1} \in \mathbb{R}^{C / r \times C}\) \(\mathbf{W}_{f c 2} \in \mathbb{R}^{C \times C / r}\)\(\mathbf{W}_{f c 2} \in \mathbb{R}^{C \times C / r}\)

第二步:

  • CondConv
    • \(\mathbf{W}^{\prime}=\alpha_{1} \cdot \mathbf{W}_{1}+\alpha_{2} \cdot \mathbf{W}_{2}+\ldots+\alpha_{m} \cdot \mathbf{W}_{m}\)
    • 可以改写为: \(\begin{aligned} \mathbf{W}^{\prime} &=\mathbf{W}^{T} \times \boldsymbol{\alpha} , \text { where } \mathbf{W} =\left[\mathbf{W}_{1} \mathbf{W}_{2} \ldots \mathbf{W}_{m}\right] \end{aligned}\)
    • 其中 \(\mathbf{W} \in \mathbb{R}^{m \times C C k_{h} k_{w}}\) , $\alpha \in \mathbb{R}^{m \times 1} $ ,所以 \(\mathbf{W}' \in \mathbb{R}^{C C k_{h} k_{w}}\)
    • 可以看成一个全连接层,输入是 \(\alpha\) ,输出新的卷积层权重
    • 左边的矩阵为一个稠密矩阵,gruop=1
  • SENet
    • \(\begin{aligned} \mathbf{Y}_{c} &=\left(\mathbf{W}_{c}^{\prime} * \mathbf{X}\right) \cdot \boldsymbol{\alpha}_{c} \\ &=\left(\mathbf{W}_{c}^{\prime} \cdot \boldsymbol{\alpha}_{c}\right) * \mathbf{X} \end{aligned}\)
    • \(\mathbf{W}_c''=\mathbf{W}_{c}^{\prime} \cdot \boldsymbol{\alpha}_{c}\)
    • 其中,\(\mathbf{W}_{c}' \in \mathbb{R}^{C \times C \times k_h \times k_w},\ \alpha \in \mathbb{R}^{C \times 1}\)
    • 可以看成一个分组全连接层,gruop=C, 输入是 \(\alpha\) ,输出新的卷积层权重
    • 左边的矩阵为一个稀疏矩阵,gruop=C

两种方法都可以看成是先使用 input 计算α,再利用α计算当前卷积核的实际推理权重

image-20210209190101356

(a) CondConv

  • input: m
  • output:\(C ×C × k_h × k_w\)
  • gruop:1

(b) SENet

  • input: \(C\)
  • output:\(C ×C × k_h × k_w\)
  • gruop:C

(c) WeightNet

  • input:\(M × C\)
  • output:\(C ×C × k_h × k_w\)
  • gruop:\(G×C\)

引入M和G,2个超参数

image-20210209190732176

WeightNet

第一步:计算attention vector α

  • \(\boldsymbol{\alpha}=\sigma\left(\mathbf{W}_{f c_{2}} \times \mathbf{W}_{f c 1} \times \frac{1}{h w} \sum_{i \in h, j \in w} \mathbf{X}_{c, i, j}\right)\)
  • 其中, \(\mathbf{W}_{f c 1} \in \mathbb{R}^{C / r \times C}, \mathbf{W}_{f c 2} \in \mathbb{R}^{M C \times C / r}\) ,r取16

第二步:gruop fc layer,输入α,输出当前卷积层的实际推理权重

  • input:\(M × C\)
  • output:\(C ×C × k_h × k_w\)
  • gruop:\(G×C\)

将实际卷积核的参数 实际上可以看成存储在第二步中分组全连接层的参数当中

复杂度

计算复杂度

每一层的实际推理有2个步骤,1)权重生成,2)卷积计算

1)权重生成:\(O(MCCk_hk_w/G)\) ,和2比起来很小,可以忽略

2)卷积计算:\(O(hwCCk_hk_w)\)

参数复杂度

1)权重生成:\(O(M/G×C×C×k_h×k_w)\) ,这里应该忽略了第一步中计算α的2个fc的参数

2)卷积计算:0

\(M/G\) 记为 \(λ\) (参数倍数)

Experiments

ImageNet

image-20210209192241572

G=2,λ=1/2/4/8

在计算量不变的情况下,提升模型性能,模型越小提升效果越明显

attention modules

image-20210209193839886

小网络上,CondConv性能更好

Ablation

λ

image-20210209193935178

λ越大,模型参数量越大

G

image-20210209194012217

分组数G越大,性能越好

kernel相似性

image-20210209194547630

本文的方法生成的卷积核的kernel之间的相似性更低

Conclusion

Summary

To Read

Reference

SENet:

https://zhuanlan.zhihu.com/p/32702350

https://www.cnblogs.com/bonelee/p/9030092.html

WeightNet:

https://mp.weixin.qq.com/s/uI1oEXqlqeyJ4NfyT0f40Q

https://mp.weixin.qq.com/s/EhdrYfM25xGiVKWXhh8reQ

https://www.cnblogs.com/gaopursuit/p/13497401.html

https://zhuanlan.zhihu.com/p/164624688

posted @ 2021-02-21 17:46  ChenBong  阅读(247)  评论(0编辑  收藏  举报