# 深度学习 — 反向传播(BP)理论推导"BP" Math Principle前向传播反向传播应用实例Reference

【知识预备】： UFLDL教程 - 反向传导算法

# "BP" Math Principle

====================================================================== Example：下面看一个简单的三层神经网络模型，一层输入层，一层隐藏层，一层输出层。

![][40] [40]:http://latex.codecogs.com/png.latex?y%20=%20f(x)=sigmoid(x)%20=\frac{1}{1%20+%20e^{-x}}

# 前向传播

![][01] [01]:http://latex.codecogs.com/png.latex?input_{(h1)}%20=%20w1%20%20x1%20+%20w2%20%20x2%20+%20b1

![][02] [02]:http://latex.codecogs.com/png.latex?output_{(h1)}%20=%20f(input_{(h1)})%20=%20\frac{1}{1%20+%20e^{-(w1x1+w2x2+b1)}}

![][04] [04]:http://latex.codecogs.com/png.latex?output_{(h2)}%20=%20f(input_{(h2)})%20=%20\frac{1}{1%20+%20e^{-(w3x1+w4x2+b1)}}

![][06] [06]:http://latex.codecogs.com/png.latex?output_{(o1)}%20=%20f(input_{(o1)})

![][07] [07]:http://latex.codecogs.com/png.latex?input_{(o2)}%20=%20w7%20%20output_{(h1)}%20+%20w8%20%20output_{(h2)}%20+%20b2

![][08] [08]:http://latex.codecogs.com/png.latex?output_{(o2)}%20=%20f(input_{(o2)})

![][10] [10]:http://latex.codecogs.com/png.latex?J_{o1}%20=%20\frac{1}{2}(output(o1)-y1)^2

![][11] [11]:http://latex.codecogs.com/png.latex?J_{o2}%20=%20\frac{1}{2}(output(o2)-y2)^2

# 反向传播

## 【输出层】

![][14] [14]:http://latex.codecogs.com/png.latex?\frac{\partial%20output_{(o1)}}{\partial%20input_{(o1)}}%20=%20f%27(input_{(o1)})=output_{(o1)}*(1%20-%20output_{(o1)})

![][15] [15]:http://latex.codecogs.com/png.latex?\frac{\partial%20input_{(o1)}}{\partial%20w5}=\frac{\partial%20(w5%20%20output_{(h1)}%20+%20w6%20%20output_{(h2)}%20+%20b2)}{\partial%20w5}=output_{(h1)}

## 【隐藏层】

![][19] [19]:http://latex.codecogs.com/png.latex?\frac{\partial%20J_{total}}{\partial%20output_{(h1)}}=\frac{\partial%20J_{o1}}{\partial%20output_{(h1)}}+\frac{\partial%20J_{o2}}{\partial%20output_{(h1)}}

![][20] [20]:http://latex.codecogs.com/png.latex?\frac{\partial%20J_{o1}}{\partial%20output_{(h1)}}=\frac{\partial%20J_{o1}}{\partial%20output_{(o1)}}\frac{\partial%20output_{(o1)}}{\partial%20input_{(o1)}}\frac{\partial%20input_{(o1)}}{\partial%20output_{(h1)}}

![][21] [21]:http://latex.codecogs.com/png.latex?=(output_{(o1)}-y1)[output_{(o1)}(1%20-%20output_{(o1)})]*w5

![][22] [22]:http://latex.codecogs.com/png.latex?\frac{\partial%20J_{o2}}{\partial%20output_{(h1)}}=\frac{\partial%20J_{o2}}{\partial%20output_{(o2)}}\frac{\partial%20output_{(o2)}}{\partial%20input_{(o2)}}\frac{\partial%20input_{(o2)}}{\partial%20output_{(h1)}}

![][23] [23]:http://latex.codecogs.com/png.latex?=(output_{(o2)}-y2)[output_{(o2)}(1%20-%20output_{(o2)})]*w7

![][24] [24]:http://latex.codecogs.com/png.latex?\frac{\partial%20output_{(h1)}}{\partial%20input_{(h1)}}%20=%20f%27(input_{(h1)})=output_{(h1)}*(1%20-%20output_{(h1)})

![][25] [25]:http://latex.codecogs.com/png.latex?\frac{\partial%20input_{(h1)}}{\partial%20w1}=\frac{\partial%20(w1%20%20x1%20+%20w2%20%20x2%20+%20b1)}{\partial%20w1}=x1

![][26] [26]:http://latex.codecogs.com/png.latex?\frac{\partial%20J_{total}}{\partial%20w1}={(output_{(o1)}-y1)[output_{(o1)}(1%20-%20output_{(o1)})]*w5

![][27] [27]:http://latex.codecogs.com/png.latex?+%20(output_{(o2)}-y2)[output_{(o2)}(1%20-%20output_{(o2)})]w7}

![][28] [28]:http://latex.codecogs.com/png.latex?[output_{(h1)}(1%20-%20output_{(h1)})]x1

![][29] [29]:http://latex.codecogs.com/png.latex?w1^+%20=%20w1%20-%20\eta*\frac{\partial%20J_{total}}{\partial%20w1}

======================================================================

# 应用实例

![][01]

tmp1 = (0.75136507 - 0.01) * [0.75136507 * (1 - 0.75136507)] * 0.40 = 0.74136507 * 0.186815602 * 0.40 = 0.055399425 tmp2 = -0.019049119 tmp3 = 0.593269992 * (1 - 0.593269992) * 0.05 = 0.012065035

# Reference

(注：感谢您的阅读，希望本文对您有所帮助。如果觉得不错欢迎分享转载，但请先点击 这里 获取授权。本文由 版权印 提供保护，禁止任何形式的未授权违规转载，谢谢！)

0 条评论

## 相关文章

### 机器学习算法KNN简介及实现

KNN(K近邻算法)是一种不需要学习任何参数同时也非常简单的机器学习算法，既可以用来解决分类问题也可以用来解决回归问题。直观解释这个算法就是'近朱者赤，近墨者黑...

1312

1114

3817

5114

### 机器学习算法KNN简介及实现

KNN(K近邻算法)是一种不需要学习任何参数同时也非常简单的机器学习算法，既可以用来解决分类问题也可以用来解决回归问题。直观解释这个算法就是'近朱者赤，近墨者黑...

1280

3993

### 动手训练模型系列：过拟合与训练集规模

loss值采用Cross_entropy计算，表征训练/测试样本与实际训练/测试分类结果的总误差。

1522

4096

5125

1121