深度学习--通过正则化regularization防止overfitting

通过正则化regularization防止overfitting

增加训练数据集的量和减小神经网络的规模是减小overfitting的途径之一.但更深层更大的网络潜在有更强的学习能力,即使对于固定的神经网络和固定的训练集仍可以减小overfitting.
常用的正则化形式有
L1 regularization:

 C=Co+λnw|w|

L2 regularization:

 C=Co+λ2nww2

以L2 Regularization为例:

对于二次损失函数加L2正则化项为:

 C=12nyaL2+λ2nww2

对于交叉熵损失函数加L2正则化项为:

 C=12nj[yjlnajL+(1yj))ln(1aLj))]+λ2nww2

以上两种都可表示为:

 C=Co+λ2nww2

可以看出,regularization的cost偏向于让神经网络学习比较小的权重w,除非  Co 明显减少.
λ : 调整两项的相对重要程度,较小的 λ 项倾向于让第一项  Co 最小化,较大的 λ 项倾向于最小化权重之和.

求偏导:

 Cw=Cow+λ2nw

 Cb=Cob

则梯度下降法的更新法则为:

 wwη(Cow+λnw)wηCowηλnw

 bbηCob

即:

 w1ηλnwηCow

 bbηCob

对于随机梯度下降法SGD为:
 w1ηλnwηmxCxw

 bbηmxCxb

 x 即SGD在小批量样本x上进行的)
通过一个因子  1ηλn 重新调整了权重,使权重变小.

实现:code2中函数total_cost()中在cost上加上L2-regularization项.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值