High-Capacity Expert Binary Networks
2021/3/17
来源:ICLR2021
 resource:github上备份的包括ipad标注的pdf版本。
作者又是Adrian Bulat、Brais Martinez和Georgios Tzimiropoulos,这仨哥们还真能水文章啊(呜呜,还能中顶会,数据还好看就是不知道数据保不保真)。
Summary:文章挺有用的,感觉 rating 4/5 的样子?主要的思路是一种类似ensemble的expert/conditional conv,用input通过gate func选一个expert出来,然后扩大width,通过group conv抵消掉增大的op num,还有就是半自动地设计了binary network的结构?但是没有看实现细节(我也不实现是吧)。
文章的贡献有:
- 增加 model capacity ,提出Expert Binary Convolution,实际上是一种Conditional Computing的方法(又非常像ensemble,但总之非常有道理);
- 增加 representation capacity,增加width(accu ++)的同时,引入group conv(accu -)来平衡地提点;
- Network design,似乎是做了很多对比实验,没见到有什么启发。
2.2 Conditional Computations
有点打开新世界的窗户的感觉,这种方法总体很有道理,背景review的时候说了四种(后两种有点意义不明)现有的工作,1)skip-connect: bypass some part of a model 2)split dataset & seperately train different part.
3 Background & 4 Method
训练的时候也是2-Stage进行的。每个expert也是通过正交的数据训练的。训练的时候先训一个expert,再用这个expert作为初始化。在4.2里讲了group conv,这里是用width expansion涨点,然后用group conv把op num拉回来,非常聪明。
4.3 Designing binary networks
讲得有点意义不明的感觉…就是很多东西堆砌在一起?小标题有Effect of block arrangement(就是N~0~N~1~N~2~N~3~保持complexity不变,具体分布排列组合测点数据,就这?)、Depth vs Width(preference, known)、Effect of aggregation over groups(说在grouped conv layer后接 1x1 conv layer without group可以涨点)、Effect of groups(用group conv会降点)。
5 Comparsion with SOTA
说用4x experts只占了2x storage。
Appendix
A.2.1 Real-valued Downsample decomposition
说width ↑ 也会影响downsample里的op num(合理),解决方法是把一个strided conv拆成两个小conv(似乎没说在哪层里用stride?)
A.2.3 Data augmentation
more aggressive augmentation leads to consistently better results.
A.5 Improved training scheme with stronger teacher
对狙,说老师↑学生跟着↑。