【DeepCV】模型正则化 regularization

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/baishuo8/article/details/88826002

Backto DeepCV

regularization 本意就是调整对象(函数等)使其更合乎常态(regular)或平滑,翻译成 正则化 不明所以。我喜欢叫他 抛光。不够雅,但是表意更准确。

regularization 的目的是控制网络的 capacity,以防止 over-fitting.

L2-regularization

最常用的.
为Loss函数引入惩罚项 12λω2\frac 1 2 \lambda \omega^2,前面加入 12\frac 1 2 的目的是为了让导数是 λω\lambda \omega, 而不是 2λω2\lambda \omega.
L2-reg 的作用是错峰平谷,不要太突出的刺头权重,保证整体均匀。

Dropout

最常用的。 随机 drop 掉 α\alpha 个点的网络神经元节点。Drop 来 Drop 去,效果还挺好。很可能是内部相当于多个模型集成了。

L1-regularization

为 Loss 函数引入惩罚项 λω\lambda \vert \omega \vert. 稀疏选择,不重要的权重就push成 0 了。

Max-norm constraints

这个是直接在训练中限定 ωc\Vert \omega\Vert \leq c

展开阅读全文

没有更多推荐了,返回首页