deep learning 编程作业总结4----调节神经网络之初始化,正则化,梯度校验

一、初始化参数

神经网络中一个小单元的运算可由 z=wx+b,和 a=g(z)这两个式子来概括,在刚开始的时候需要对参数w和b赋初始值,如果赋值为0那么是没有意义的,如果赋值为一个简单随机数,那么会产生梯度爆炸和梯度消失。因此应采用抑梯度异常初始化,关键代码如下所示:parameters['W' + str(l)] = np.random.randn(layers_dims[l], layers_dims[l - 1]) * np.sqrt(2 / layers_dims[l - 1])。

二、正则化

如果神经网络中出现过拟合的情况,那么就需要采用正则化。接下来将介绍正则化的方法,第一种是使用范式,它的原理是通过在成本函数中加入一个正则项来调节W的大小,当W趋于0的时候,复杂的神经网络会变得相对简单,从而尽可能地改善过拟合。第二种是使用Droupout算法,它的原理是通过概率判断来善于网络中的某些节点,从而缓解过拟合,其他避免过拟合的方法还有数据增强和Early stopping。

三、梯度校验

梯度校验主要用于检验在梯度下降过程中是否出现误差过大的情况。

参考资料:https://blog.csdn.net/u013733326/article/details/79847918

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值