L2 normalization 为什么能够降低过拟合
2017-10-07 16:43
267 查看
L2 normalization 为什么能够降低过拟合?
假设 cost function 为:
J(w,b)=1m∑ni=0(yi^−yi)2+λ2m∑Ll=1||w[l]||2F
其中:
||w[l]||2F=∑n[l−1]i=1∑n[l]j=1||wij||2
假定激活函数使用:g(z)=tanh(z)
若使成本函数最小化,若λ 变大,则,w[l]变小,那么,z[l]=w[l]a[l−1]+b[l]变小
对于tanh(z)函数,当z很小时,z≈tanh(z) ,所以,activation function 就可以看作linear function
若每层的激活函数都是线性函数,那么整个神经网络学习到的依然是线性函数。
这也就解释了,为什么正则化能够降低过拟合。
相关文章推荐
- regularization 规范化(L1,L2等等):加惩罚函数降低过拟合
- 请问SC-FDMA为什么能够降低…
- L2正则为什么能保证控制过拟合
- drop out为什么能够防止过拟合
- 去掉#include 《stdio.h》这个程序在许多系统中仍然能够运行,但是在某些系统中运行起来却慢很多是为什么
- 为什么rsync能够快速删除400000文件?
- 为什么我的工作效率降低了?
- 参数化查询为什么能够防止SQL注入
- 单进程单线程的Redis如何能够高并发,redis是个单线程的程序,为什么会这么快呢?
- 为什么operator>>(istream&, string&)能够安全地读入长度未知的字符串?
- 为什么产品经理的工资不能够比程序员高?
- 为什么谱聚类方法能够起作用?
- 为什么“浏览器劫持”能够如此猖狂呢?
- 参数化查询为什么能够防止SQL注入
- 深度丨解密Python为什么能够风靡全宇宙
- 为什么operator>>(istream&, string&)能够安全地读入长度未知的字符串?
- 为什么正则化可以减小过拟合
- 中断为什么能够被cpu立即响应?
- SQL Server 为什么事务日志自动增长会降低你的性能
- 为什么django+mongo在windows上session能够获取到,同样的程序在linux上就会报session的变量错误,keyerror?