最近在逛arxiv的时候,突然发现很多CNN领域的新秀,这里给大家分享一个卷积过程的小鲜肉——CosineConv2D,虽然距离论文发表已经一年多了,但是这绝对是个好东西,并且在将来在某些方面应该是慢慢把常规卷积模块给替代掉的。
先放论文地址:https://arxiv.org/pdf/1702.05870.pdf
这篇论文讲个什么呢?咱们先画重点。
我们常规的卷积过程,就是x矩阵跟w矩阵的一个卷积过程,说白了就是相应位置的点乘,然后求和。
在他看来,点乘的结果是“无界”的,会造成非常大的“协变量跃迁”,而cosine norm能够很大程度减小这种现象。
常规的卷积输出就是等于WX,而论文作者提出的新卷积方式是output = w·x / (|W|*|X|) = cosθ,w是权重参数的矩阵形式(向量形式),x是计算数据的矩阵形式(向量形式),|W|指的是权重矩阵的模,|X|就是X矩阵的模,这个其实跟二维坐标系求余弦值的原理是一样的。
这样最大的好处有两点:1、炸不了了!梯度爆炸直接被消灭!2、输出结果范围收缩到0-1,方差变小了,数据因为输入的原因造成的敏感性就小了,这点其实跟BN的用途异曲同工,但不绝对。
然