zoukankan      html  css  js  c++  java
  • 谈谈神经网络权重为什么不能初始化为0

    当我们在训练一个神经网络的时候,参数的随机初始化是非常重要的,对于逻辑回归来说,把参数初始化为0是很ok的。但是对于一个神经网络,如果我们将权重或者是所有参数初始化为0,梯度下降算法将不会起到任何作用。

    1.为什么逻辑回归参数初始化为0是ok的?

    下图所示,是logistic回归的图解:

    假设我们用梯度下降法来更新我们的模型参数。

    logistic回归模型的前向传播:

    logistic回归模型的反向传播:

    参数更新公式:

     

    2.为什么神经网络的权重或所有参数初始化为0,梯度下降不再work?

    为了说明这个问题,我们以一个简单的神经网络为例,该神经网络只有1层隐藏层,包含2个神经元,其具体的神经网络的结构图如下图所示:

    神经网络的前向传播

    其中,

    神经网络的反向传播所能用到的导数公式:

     

     

    根据上述的详细公式,我们分析一下3种情况:

    l  模型所有权重w初始化为0,所有偏置b初始化为0

    l  模型所有权重w初始化为0,所有偏置b随机初始化

    l  模型所有的权重w随机初始化,所有偏置b初始化为0

    2.1 模型所有权重w初始化为0,所有偏置b初始化为0

    2.2 模型所有权重w初始化为0,所有偏置b随机初始化

    2.3 模型所有的权重w随机初始化,所有偏置b初始化为0

    结论:在训练神经网络的时候,权重初始化要谨慎,不能初始化为0

    转载自:https://zhuanlan.zhihu.com/p/75879624

  • 相关阅读:
    将execl转换成pdf文件
    exBSGS模板
    fhqtreap的学习笔记
    bzoj3196: Tyvj 1730 二逼平衡树
    bzoj2226[Spoj 5971] LCMSum
    bzoj2120: 数颜色
    bzoj3236: [Ahoi2013]作业
    bzoj3208: 花神的秒题计划Ⅰ
    bzoj4143: [AMPPZ2014]The Lawyer
    bzoj1968: [Ahoi2005]COMMON 约数研究
  • 原文地址:https://www.cnblogs.com/hejunlin1992/p/13022391.html
Copyright © 2011-2022 走看看