• 深度学习-初始化权重矩阵


    1.初始化权重矩阵为0

    对于每个隐含层节点,输出的结果都是一样的。另外,进行梯度下降时,由于偏导一样,因此不断迭代,不断一样,不断迭代,不断一样..多层神经网络表现的跟线性模型一样,不可取!

    2.随机初始化权重矩阵

    (1)标准正态分布

       np.random.rand(size_l,size_l-1)

       可能导致梯度下降或者梯度爆炸的问题

    (2)启发式来根据非线性激活函数初始化权重

       ---梯度下降

        对于深度网络来说,对于任何激活函数,梯度将随着反向传播期间每层向后移动变得越来越小。梯度变小,权重更新缓慢,网络收敛速度变慢。甚至可能阻止网络进一步训练!

      ---梯度爆炸

        与梯度下降相反,对于任何激活函数,梯度变化越来越大,可能导致网络跳过最优值或者在附近波动,而永远无法收敛。

           解决方法:启发式方法

      对于激活函数ReLu:

        W[l] = np.random.rand(size_l,size_l-1)*np.sqrt(2/size_l-1)

      对于激活函数tanh(又称为Xavier初始化):

        W[l] = np.random.rand(size_l,size_l-1)*np.sqrt(1/size_l-1)

      其他形式的启发式方法:

        W[l] = np.random.rand(size_l,size_l-1)*np.sqrt(1/(size_l-1+size_l))

      

    非学无以广才,非志无以成学! 【Magic_chao

  • 相关阅读:
    分页插件加MVC
    在ASP.NET MVC中,有使用angularjs
    EF比较权威的一篇
    WEBFORM中添加bootstrap套件
    MVC统一设置命名空间
    重新生成索引及重新组织索引
    Dapper.Contrib.Extensions问题
    API Test WebApiTestClient工具安装及使用
    API Test Postman接口测试之高级篇2
    API Test Postman接口测试之高级篇1
  • 原文地址:https://www.cnblogs.com/logo-88/p/8951333.html
Copyright © 2020-2023  润新知