BP算法(反向传播算法)
反向传播算法的核心是偏微分表达式$\partial C / \partial w$,也就是计算网络中损失函数C对任意权重$w$(或者是偏移$b$)的偏微分。这个表达式告诉我们当我们改变权重$w$和偏移$b$的时候,损失函数的变化有多快。尽管这个表达式有点复杂,但是它也有优点。其中每个元素都有一个神经元,有直观的解释。它实际上帮助我们洞察了当权重和偏移变化的时候整个网络是如何变化的。因此值得深究。
两个假设 反向传播算法的目标是计算两个偏微分:
\partial C /\partial w
\partial C /\partial b
要使得反向传播算法有效,我们必须对损失函数的形式有两个假设。假设损失函数的形式如下:
C = \frac{1}{2n} \sum_x||y(x)-a^L(x)||^2
其中,$n$是训练集的数量,$y=y(x)$是相应的期望的输出(实际输出),L表示神经网络的层数,$a^L=a^L(x)$是$x$为输入的时候神经网络的输出。
