套餐:卷积+BN+激活,原始的BN0=( X - E(X) ) / std,减去均值除以标准差,改进后的BN=γ*BN0 + β ,其中γ和β是通过模型学习得到的。
原因:
1、每次卷积完成后,数据分布会改变,与原始数据的分布出现偏差,不利于网络学习和收敛。
改进方法:
卷积后,加入BN层,使得数据的分布又回到了原始数据的分布,有利于模型训练。
新的问题:但是加入BN层之后,使得数据区间是[0-1],经过激活函数sigmoid时候,数据区间接近于线性,使得模型很难学到非线性知识。
新的问题的解决方法:将BN乘以γ然后+β,而且这两个参数都是模型可以学习到的,这样一来就解决加入BN后线性问题。
应用:
参考论文:Learning Efficient Convolutional Networks through Network Slimming
原理:1、模型剪枝中,可以通过γ参数判断卷积层的每个通道的权重,将权重高的保存,权重低的去除,之后再进行训练。 2、为了使得通道权重γ之间更具区分度,需要对γ进行L1正则,使得不同通道之间的γ区别较大。备注:L1正则是绝对值,可以进行稀疏与特征选择,L2正则是平方项,可以进行平滑特征。
Learning Efficient Convolutional Networks through Network Slimming
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)