从感知器到神经网络

感知器算法,可以说属于一种仿生算法。如图,神经元本身可以接受上一层传递过来的信号,传入神经元时,给定以定的权重,并且神经元内部也存在一定的阈值或者说偏置。将这些信号加权求和后,得到信号n,随后输入激活函数里,产生输出信号a。由于偏置属于神经元内部的信号,但是又要和输入信号一起加权求和,为了方便,将其与输入统一在一起。神经元作为加权求和和激活,这样感知器就被简化成图中所示的样子。具体的信号转换公式如图所示。

有了感知器后,通过感知器的组合可以构成神经网络。如图,输入层(p)、隐藏层(h)、输出层(a)构成一个简单的神经网络。

但是一般不会把偏置带上,所以如果考虑上偏置的话,那么神经网络具体应该为右图所示。

神经网络从输入计算输出,叫做正向传播;从输出与理想输出的误差,计算每个输入对输出的影响,叫做反向传播。利用计算图可以很好的理清计算流程,对于上图的神经网络,其对应的计算图如下图所示。

可以看出,所有的权重和偏置,都是我们的输入变量。反复使用感知器的基本计算,最终得到我们的输出预测值。

所谓的反向传播,也就是计算每个偏置和权重对输出误差的影响大小,以此来做进一步的权值调整,使得误差越来越小。如果从计算图来考虑反向传播,则可以从下图看出规律。

参考文献:一文弄懂神经网络中的反向传播法——BackPropagation

猜你喜欢

转载自www.cnblogs.com/gshang/p/10988180.html