深度学习为什么这几类参数不进行优化
no_decay = ['bias', 'LayerNorm', 'layer_norm']
no_decay = ['bias', 'LayerNorm', 'layer_norm']
我搜索了下,你这个应该是transformer里面的吧。
个人理解,这段代码的作用是在正则化的时候忽略掉这些参数,而正则化的作用就是防止过拟合,从这个方面上来想,正则化的过程通常要求模型的输出对输入数据的变化非常敏感(往往需要在拟合函数中有很大的斜率,这样才能达到反应灵敏的需求)。而从y=WX+b这种格式的公式上面来看,只有权重决定了斜率,而正则化的过程是减少了权重影响,求导之后与bias就无关了,偏置参数有点类似函数截距,对于斜率没有影响。
所以既然没有影响,那就不需要去浪费资源去计算了。
如果有其他原因,也请大佬们说一说,咱也想知道为啥,应该不只是简单的为了计算速度吧