初始化、正则化、梯度校验

初始化、正则化、梯度校验

初始化

我们都知道在神经网络中一开始是需要初始化 W W W b b b的,那么一开始应该选择什么值来初始化会有利于神经网络更快更好地实现它地效果呢?
一个不恰当的表达是,其初始值不应该过大。最合适的有一个如下名称的初始化方法

He initialization

W [ i ] = n p . r a n d o m . r a n d n ( n i , n i − 1 ) ∗ 2 n i − 1 W^{[i]} = np.random.randn(n^i,n^{i-1})*\sqrt{\frac{2}{n^{i-1}}} W[i]=np.random.randn(ni,ni1)ni12
b [ i ] = n p . z e r o s ( ( n i , 1 ) ) b^{[i]} = np.zeros((n^i, 1)) b[i]=np.zeros((ni,1))

实践出真理,做过吴恩达老师的练习的话,会感受到那种准确率的提升是很大的。

正则化

高偏差:神经网络对训练集的预测准确率不高,如果说人认识一个物体的错误率为0%,而神经网络预测错误率达到十几,就可以说它是高偏差了。

高方差:神经网络预测训练集错误率与预测验证集或测试集错误率相差较远的情况,比如,预测训练集错误率为1%,而预测验证集错误率则达到13%,则可以说其是高方差。

当出现有高偏差时,可以运用增加迭代次数来解决。
高方差时也可以运用增加样本集的方法来解决。

另一个解决高方差的方法就是正则化,比较直观的理解就是通过正则化的调整实现了从高方差向高偏差方向走的现象,而找到在这其中的平衡值就解决了我们的高方差的问题。

常见的正则化方法:
1.就是对 c o s t cost cost加正则项,然后反向传播算出新的 d w dw dw,具体公式如下
J r e g u

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值