AdderNet论文解读
《AdderNet: Do We Really Need Multiplications in Deep Learning?》
这是一篇CVPR2020的论文,并选为oral。北大和华为诺亚实验室等联合提出了一种新的神经网络架构AdderNet,只用加法在ImageNet中达到了91.7%的精度。
https://www.zhihu.com/question/365144981?utm_source=cn.wps.moffice_eng
这里有作者王云鹤的相关解读。
一、相关介绍
- BinaryConnect(BNN)
和dropout类似,是一种正则化的方法。将前向传播和后向传播计算的实数权值二值化(-1,1),将乘法运算变为加减运算。然后将二值化权重与上一层的输出相乘,对乘积进行批量标准化处理,二值化后变成下一层的输入。注意每一层的输出都是二值化之后的。反向传播时,要注意梯度使用的是实值,不是二值化值。求权重梯度时是对二值化后的权重求梯度,但是更新时利用上面求得的梯度对实数值权重进行更新。
2.卷积核
**卷积之前为什么要翻转180度?(未解决)**即先翻转再平移。
二、网络架构
本文采用L1了距离。L1距离是两点坐标差值的绝对值之和,不涉及乘法。在此基础上提出了加法器网络AdderNet,**不同类别的CNN特征按其角度来划分(这个还不是很明白)。**由于AdderNet使用L1范数来区分不同的类,因此AdderNet的特征倾向于聚集到不同的类中心。特征空间分布和CNN也大有不同。