zoukankan      html  css  js  c++  java
  • Andrew Ng

     =================第3周 浅层神经网络===============

    ===3..1  神经网络概览===
    ===3.2  神经网络表示===
    ===3.3  计算神经网络的输出===
      方括号代表层数。
     
    ===3.4  多个例子中的向量化===
    ===3.5  向量化实现的解释===
       方括号值的是层数,括号代表样本编号。ppt中显示的,不同row代表某一层的hidden unit,不同列代表各个样本,挺形象的呀,有趣。
     
    ===3.6  激活函数===
      tanh几乎各方面都比sigmoid好,此时激活函数的平均值就更接近0,这实际上让下一层的学习更方便一点,我们会在下一周详细讨论原因。我几乎不用 σ 激活函数了,一个例外是在输出层。这两个激活函数都有一个缺点,就是z太大或太小时梯度会变很接近0,这将导致学习速度很慢。今天大多数人用的都是Relu,虽然有时人们也会用tanh。Relu的一个缺点是负数部分导数0,但实际证明这并没有什么大问题。Relu is increasingly the default choice of activation function so if you're not sure what to use for your hidden layer,我就用ReLU作为激活函数。Leaky Relu中负轴部分的斜率通常是0.01,也可以把它设成学习算法的另一个参数,有人说这样效果更好,但我很少见到有人这么做。通常比 Relu更好,不过实际中使用的频率没那么高,随便选一个 is ok,如果只能选一个我会选Relu。 
     
     
     
    ===3.7  为什么需要非线性激活函数?===
      如果你使用线性激活函数,或者如果没有使用激活函数,那么无论你的神经网络有多少层,那么无论你的神经网络有多少层 ,always doing is just computing a linear activation function。下面ppt左上角,你要是在第一个隐层不加非线性激活,在第2层用sigmod函数,那么这就相当于简单的Logisti回归,我懒得证明了。要点在于,线性隐层一点用都没有,因为两个线性函数的组合本身就是线性函数。除非你做回归问题,那么输出层可以线性,其他隐层几乎都不会使用。
     
    ===3.8  激活函数的导数====

      sigmoid/tanh求导公式的优点在于,如果你已经计算出a值了,那么用这个式子就可以很快算出g(z)的斜率。

     
     
      Relu和Leaky Relu的零点的导数无论归到哪部分都是可以的。

     

    ===3.9  神经网络的梯度下降法==
      单隐层神经网络的反向传播,假设二分类任务,损失函数使用Log损失。加上开关keepdims 就是防止python直接输出这些古怪的rank 1 arrays。运算符 *  代表逐元素相乘。
      好好体会呗,尤其向量化之后求导 dZ,dW时要注意维度匹配、逐项乘还是矩阵乘、1/m等。
      
     
    ===3.10  (选修)直观理解反向传播===
      这是我在机器学习领域中看到的最难的推导之一(哈哈哈)。
        
     
     
    ===3.11  随机初始化===
      对于logistic回归 可以将权重初始化为零,但如果将神经网络的各参数数组全部初始化为0,再使用梯度下降算法,那会完全无效。全部同样的初始值对权重进行初始化,会造成隐藏单元的效果完全一样,意味着节点计算完全一样的函数。我们可以通过归纳法证明每次训练迭代之后,两个隐藏单元仍然在计算完全相同的函数。
      随机初始化时通常将权重初始化小一点,以免梯度很小,如果你的神经网络中没有任何sigmoid或者tanh激活函数,那问题可能没那么大 但如果你在做二元分类,你的输出单元是Sigmoid函数,那么你就不希望初始参数太大,所以用0.01是比较合理的,或者任意其他小数字。 
     
     
     
     
     
  • 相关阅读:
    asp.net mvc简单分页实例
    aspnetpager使用介绍
    sql server 横向转丛向及FOR XML PATH使用
    js apply使用
    js call使用
    C# JavaScriptSerializer 序列化集合
    【BZOJ4103】[Thu Summer Camp 2015]异或运算 可持久化Trie树
    【BZOJ4177】Mike的农场 最小割
    【BZOJ4205】卡牌配对 最大流
    【BZOJ4358】permu kd-tree
  • 原文地址:https://www.cnblogs.com/JesusAlone/p/8793237.html
Copyright © 2011-2022 走看看