神经网络_2

1. 左边蓝色的圆圈叫“输入层”,中间橙色的不管有多少层都叫“隐藏层”,右边绿色的是“输出层”。
2. 每个圆圈,都代表一个神经元,也叫节点(Node)。
3. 输出层可以有多个节点,多节点输出常常用于分类问题。
4. 理论证明,任何多层网络可以用三层网络近似地表示。
(2) 激活函数
1. Sigmoid(S形曲线)
    
    
(3)计算方法
      
1. +1代表偏移值(偏置项, Bias Units)
2. 隐藏层用都是用Sigmoid作激活函数,而输出层用的是Purelin。
3. 起初输入层的数值通过网络计算分别传播到隐藏层,再以相同的方式传播到输出层,最终的输出值和样本值作比较,计算出误差。
  
4. 计算残差:
残差(error term):误差的偏导数。
Purelin的导数=1
Sigmoid导数 = Sigmoid*(1-Sigmoid)
    输出层→隐藏层:残差 = -(输出值-样本值) * 激活函数的导数 
    隐藏层→隐藏层:残差 = (右层每个节点的残差加权求和)* 激活函数的导数
输出层→隐藏层:Purelin作激活函数,残差 = -(输出值-样本值)
Sigmoid作激活函数,残差 = -(Sigmoid输出值-样本值) * Sigmoid*(1-Sigmoid) = -(输出值-样本值)输出值(1-输出值)
隐藏层→隐藏层:残差 = (右层每个节点的残差加权求和)* 当前节点的Sigmoid*(1-当前节点的Sigmoid)
5. 跟新权重:
    输入层:权重增加 = 当前节点的Sigmoid * 右层对应节点的残差 * 学习率 
   隐藏层:权重增加 = 输入值 * 右层对应节点的残差 * 学习率 
   偏移值的权重增加 = 右层对应节点的残差 * 学习率
隐藏层→隐藏层:残差 = (右层每个节点的残差加权求和)* 当前节点的Sigmoid*(1-当前节点的Sigmoid)
(4)优缺点
缺点:计算复杂、计算速度慢、容易陷入局部最优解
posted on 2018-10-26 10:36 happygril3 阅读(199) 评论(0) 收藏 举报
                    
                
                
            
        
浙公网安备 33010602011771号