一、感知机
1.感知机来源
深度学习里的感知机类似于人脑的神经元
2.单层感知机
上图是一个n维输入的单层感知机, x 1 x_{1} x1至 x n x_{n} xn是n维输入向量, w 1 j w_{1j} w1j至 w n j w_{nj} wnj是这n维输入向量连接的感知机权重, f f f为激活函数, O j O_{j} Oj为输出标量。感知机的输出是输入向量 x x x和权重向量 w w w求内积后,经过激活函数 f f f得到的标量。
3.多层感知机
多层感知机(Multi-Layer Perceptron,即MLP)是由单层感知机推广而来,包含多个神经元层。一般将MLP的一层称为输入层,中间层称为隐藏层,最后一层为输出层。隐藏层可根据实际需求选择合适层数,隐藏层、输出层每层神经元个数也没有限制
二、神经网络
1.神经网络的参数更新
- 前向过程
即根据输入的 x x x得到输出 y y y,对于感知机来说前向传播就是 y = w x + b y=wx+b y=wx+b - 损失
即网络输出与标签的差值 - 后向过程
用下面这个图例体会下
由上图设输出为
y
y
y,损失函数为
E
E
E
y
=
h
1
w
h
1
+
h
2
w
h
2
=
x
1
w
11
+
x
2
w
12
+
x
2
w
21
+
x
2
w
22
E
=
1
2
(
y
−
t
)
2
\begin{array}{l} y=h_{1} w_{h 1}+h_{2} w_{h 2}=x_{1} w_{11}+x_{2} w_{12}+x_{2} w_{21}+x_{2} w_{22} \\ E=\frac{1}{2}(y-t)^{2} \end{array}
y=h1wh1+h2wh2=x1w11+x2w12+x2w21+x2w22E=21(y−t)2
那么计算
E
E
E对
W
h
1
W_{h 1}
Wh1的误差传播值为:
∂
E
∂
w
h
1
=
∂
E
∂
y
∂
y
∂
w
h
1
=
(
y
−
t
)
h
1
\frac{\partial \mathrm{E}}{\partial w_{h 1}}=\frac{\partial \mathrm{E}}{\partial \mathrm{y}} \frac{\partial y}{\partial w_{h 1}}=(y-t) h_{1}
∂wh1∂E=∂y∂E∂wh1∂y=(y−t)h1
下次更新
W
h
1
W_{h 1}
Wh1这个参数的时候就可以采用(
η
\eta
η是学习率):
w
h
1
=
w
h
1
−
η
∂
E
∂
w
h
1
w_{h 1}=w_{h 1}-\eta \frac{\partial E}{\partial w_{h 1}}
wh1=wh1−η∂wh1∂E
- 更新
即调整 w , b w, b w,b的值