zoukankan      html  css  js  c++  java
  • BP算法

    sigmoid函数

    神经网络激活函数是sigmoid函数。

    定义为:

    sigmoid函数是一个非线性函数,值域是(0,1)。函数图像如下图所示:

    sigmoid导数:

    可以看得出sigmoid导数计算很方便。

    神经网络

    神经网络其实就是按照一定规则连接起来的多个神经元。

    神经网络实际上就是一个输入向量到输出向量的函数:

    神经网络的矩阵表示

    反向传播算法(Back Propagation)

    我们可以说神经网络是一个模型,那么这些权值就是模型的参数,也就是模型要学习的东西。

    然而,一个神经网络的连接方式、网络的层数、每层的节点数这些参数,则不是学习出来的,而是人为事先设置的。对于这些人为设置的参数,我们称之为超参数(Hyper-Parameters)

    推导

    1、目标函数

    2、使用随机梯度下降法进行优化

    3、以某一个节点的权值优化过程来举例

    前一层的输入向量:

    前一层和下一层之间的权值矩阵:

    其中mxn,意味着下一层的神经元格式(即维度是m),上一层的输入维度是n。

    其中:

    输出层:

    其中:

    综合得到:

     

    隐藏层权值训练

    例如,对于节点4来说,它的直接下游节点是节点8、节点9。

    节点 j 的加权输入只能通过影响节点 j 的所有下游节点再影响目标函数。

     

  • 相关阅读:
    luoguP2016 战略游戏
    [Usaco2006 Nov]Corn Fields牧场的安排
    [Ahoi2009]self 同类分布
    POJ3208:Apocalypse Someday
    [usaco2010 Oct]Soda Machine
    [Usaco2005 Dec]Scales 天平
    PTA的Python练习题(十九)
    堆叠注入
    PHP序列化与反序列化(三)总结实战
    攻防世界web进阶1-12总结篇
  • 原文地址:https://www.cnblogs.com/pacino12134/p/11097997.html
Copyright © 2011-2022 走看看