zoukankan      html  css  js  c++  java
  • 深度学习——深层神经网络[4]

    目录

    • 神经网络的符号表示
    • 为什么用深度来表示
    • 神经网络模块构建
    • 参数和超参数

    一、神经网络的符号表示

    $L = 4$ 层数为4

    $n^{[l]}=5$ 第$l$层有5个神经元

    $n^{[0]}=n_x=3$ 输入层有3个特征值

    $a^{[l]}$第$l$层的激活函数

    $X=a^{[0]}$     $a^{[L]}=widehat{y}$输出层

    二、为什么用深度来表示

    1)大脑学习:从边缘的细节开始学习,一层层递进到大一点的范围(比如人脸识别,先从学习眼睛、鼻子再到大一点的脸的轮廓)

    2)电路理论:为了达到同样的效果,层数少的可能需要指数增长的单元数量(比如计算一个异或式子)

    三、神经网络模块构建

    前向传播

    Input $a^{[l-1]}$

    Output $a^{[l]}$, cache $z^{[l]}$

    $z^{[l]}=w^{[l]}a^{[l-1]}+b^{[l]}$

    $a^{[l]}=g^{[l]}(z^{[l]})$

    向量化

    $Z^{[l]}=w^{[l]}A^{[l-1]}+b^{[l]}$

    $A^{[l]}=g^{[l]}(Z^{[l]})$

    反向求导传播(第$l$层)

    Input $da^{[l]}$

    Output $da^{[l-1]}$,$dW^{[l]}$,$db^{[l]}$

    $dz^{[l]}=da^{[l]}g^{[l]'}(z^{[l]})$

    $dw^{[l]}=dz^{[l]}a^{[l-1]}$

    $db^{[l]}=dz^{[l]}$

    $da^{[l-1]}=w^{[l]T}dz^{[l]}$

    向量化,使用平均值

    $dZ^{[l]}=dA^{[l]}g^{[l]'}(Z^{[l]})$

    $dW^{[l]}=frac{1}{m}dZ^{[l]}A^{[l-1]T}$

    $db^{[l]}=frac{1}{m}dZ^{[l]}$

    $dA^{[l-1]}=W^{[l]T}dZ^{[l]}$

    四、参数VS超参数

    参数:$W^{[1]}$, $b^{[1]}$等

    超参数:学习率, 隐层数,激活函数,梯度下降的循环次数

    超参数在某种程度上控制了参数的结果值

    超参数的调整(经验性)方法:先尝试一个范围内的结果;勤检验且调整值

  • 相关阅读:
    js 提升
    omnipay支付--支付宝支付
    laravel 配置sql日志
    laravel monlog配置
    php openssl相关加密解密 验签代码
    laravel validator提示信息中文化
    opendevops_codo项目研究
    Python学习笔记
    shell编程总结
    关于JeeSite开源软件
  • 原文地址:https://www.cnblogs.com/coolqiyu/p/8526073.html
Copyright © 2011-2022 走看看