神经网络正向传播

1,202 阅读1分钟

神经网络正向传播

单层神经网络

结构图

神经网络1.png

公式

[z1z2zn]=[w11(i)w12(i)w1m(i)w21(i)w22(i)w2m(i)wn1(i)wn2(i)wnm(i)][x1x2xn]+[b1(i)b2(i)bn(i)]\begin{bmatrix}z_1 \\z_2 \\\vdots \\z_n \\ \end{bmatrix} = \begin{bmatrix}w^{(i)}_{11} & w^{(i)}_{12} & \cdots & w^{(i)}_{1m} \\w^{(i)}_{21} & w^{(i)}_{22} & \cdots & w^{(i)}_{2m} \\\vdots & \vdots & & \vdots \\w^{(i)}_{n1} & w^{(i)}_{n2} & \cdots & w^{(i)}_{nm} \\ \end{bmatrix} \begin{bmatrix}x_1 \\x_2 \\\vdots \\x_n \\ \end{bmatrix} + \begin{bmatrix}b^{(i)}_1 \\b^{(i)}_2 \\\vdots \\b^{(i)}_n \\ \end{bmatrix}
z(i)=W(i)x+b(i)z^{(i)} = W^{(i)}\cdot x + b^{(i)}
[y1y2yn]=a([z1z2zn])\begin{bmatrix}y_1 \\y_2 \\\vdots \\y_n \\ \end{bmatrix} = a\begin{pmatrix}\begin{bmatrix}z_1 \\z_2 \\\vdots \\z_n \\ \end{bmatrix}\end{pmatrix}
y(i)=a(z(i))y^{(i)} = a(z^{(i)})

术语

偏置 bb

控制神经元被激活的容易程度

权重 wijlw^l_{ij}

  • ll 指第 ll
  • ii 指第 ll 层的第 ii 个神经元
  • jj 指第 l1l - 1 层的第 jj 个神经元

z(i)z^{(i)}

ii 层的中间结果

y(i)y^{(i)}

ii 层的输出

三层神经网络

结构图

神经网络2.png

术语

one-hot

正解为 1, 其余为 0

normalize

正规化, 标准化, 归一化

将数据弄到 010\sim1 之间

批处理

一次处理一批数据, 矩阵计算

  • batch 批
  • batch 批数据大小

激活函数

sigmoid

f(x)=11+exf(x) = \frac{1}{1+e^{-x}}

阶跃函数

f(x)={1x>00x0f(x) = \begin{cases} 1 & x > 0 \\ 0 & x \leq 0 \end{cases}

relu

f(x)={xx>00x0f(x) = \begin{cases} x & x > 0 \\ 0 & x \leq 0 \end{cases}

输出层的激活函数

恒等函数(回归)

f(x)=xf(x) = x

softmax(分类)

f(x)=exiex1++exnf(x) = \frac{e^{x_i}}{e^{x_1} + \cdots + e^{x_n}}

处理数据溢出, 防止 exie^{x_i} 很大

f(x)=exicex1c++exncc=max{x1,,xn}\begin{aligned} f(x) = \frac{e^{x_i - c}}{e^{x_1 - c} + \cdots + e^{x_n - c}} & & c = max\{x_1 ,\cdots, x_n\} \end{aligned}