zoukankan      html  css  js  c++  java
  • 【吴恩达机器学习】第10章 神经网络参数的反向传播算法

    代价函数

    像大部分机器学习一样,从代价函数开始讲起。

    重点讲解,神经网络在分类问题中的应用。

    神经网络层数
    LL来表示神经网络结果的总层数。

    每层单元数
    sls_l表示第ll层的单元数,但不包括偏置。

    Binary classification
    一个输出单元

    Multi-class classification
    k分类,含有k个输出单元

    Cost function

    • Logistic regression:
      在这里插入图片描述
    • Neural network
      不再只有一个输出单元,而是K个。
      在这里插入图片描述

      Θ(l)Theta^{(l)}表示第ll层T对应的参数,最后一层没有参数。

    反向传播算法

    在这里插入图片描述
    需要优化的参数
    ΘijlTheta^{l}_{ij}

    如何计算参数的偏导
    在这里插入图片描述
    每个单元的激活误差
    在这里插入图片描述
    第4层的激活误差
    在这里插入图片描述
    其它层的激活误差
    在这里插入图片描述
    参数的偏导
    在这里插入图片描述
    Backpropagation algorithm
    在这里插入图片描述

    理解反向传播

    中间偏导
    如果cost函数为:g(z)=yloghΘ(z)+(1y)log(1hΘ(z))g(z)= ylog h_Theta(z) + (1 - y) log( 1 - h_Theta(z))
    则对zz求导后:
    zg(z)=yhΘ(z)frac partial z {g(z)} = y - h_Theta(z)
    在这里插入图片描述

    梯度检测

    将计算的导师值与DVecDVec比较
    在这里插入图片描述

    随机初始化

    对称权重问题
    当两个参数初始化为0时,之后用梯度下降法,它们的更新保持一致。
    在这里插入图片描述
    随机初始化思想
    初始化时,对参数进行随机化。

    组合到一起

    输入特征的维数
    输出特征的维数

    隐藏层数量
    默认一层

    每一层的隐藏层单元相同,效果会更好。
    一般单元数也与输出层单元数相同,或者大几倍。

    训练一个神经网络的过程
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    java实现九九乘法表
    for循环的阶乘
    Struts2 表单提交与execute()方法的结合使用
    Struts2 第三个程序 namespacce的用法
    java 字符串的比较compareTo
    java中的位预算
    java调用C++ DLL库方法
    Socket编程模式理解与对比
    c 高级函数的简单用法
    TCP粘包分析与处理
  • 原文地址:https://www.cnblogs.com/bitbitbyte/p/12536587.html
Copyright © 2011-2022 走看看