第五章 神经网络和误差逆传播法算法(BP)的推导

一、神经网络

     神经网络由大量的神经元相互连接而成。神经元接收到来自n个其他神经元传递过来的输入信号,这些输入信号通过带权重进行传递,当某个神经元接收到的总输入值与该神经元的阈值进行比较,然后通过激活函数处理产生 神经元的输出。每个神经元接受线性组合的输入后,最开始只是简单的线性加权,后来给每个神经元加上了非线性的激活函数,从而进行非线性变换后输出。每两个神经元之间的连接代表加权值,称之为权重(weight)。不同的权重和激活函数,则会导致神经网络不同的输出。

如下图为一个神经元的模型:

第五章 神经网络和误差逆传播法算法(BP)的推导_第1张图片

基本wx + b的形式,其中

  • 表示输入向量

  • 为权重,几个输入则意味着有几个权重,即每个输入都被赋予一个权重

  • b为偏置bias

  • g(z) 为激活函数

  • a 为输出

   举个例子,这周末北京有一草莓音乐节,那去不去呢?决定你是否去有二个因素,这二个因素可以对应二个输入,分别用x1、x2表示。此外,这二个因素对做决策的影响程度不一样,各自的影响程度用权重w1、w2表示。一般来说,音乐节的演唱嘉宾会非常影响你去不去,唱得好的前提下 即便没人陪同都可忍受,但如果唱得不好还不如你上台唱呢。所以,我们可以如下表示:

              x1:是否有喜欢的演唱嘉宾。 x1= 1 你喜欢这些嘉宾, x1= 0 你不喜欢这些嘉宾。嘉宾因素的权重 w1= 7
              x2:是否有人陪你同去。 x2= 1 有人陪你同去, x2= 0 没人陪你同去。是否有人陪同的权重 w2= 3。

这样,决策模型便建立起来了:g(z) = g( x1*w1 + x2*w2 + b ),g表示激活函数,这里的b可以理解成 为更好达到目标而做调整的偏置项。

典型的激活函数有:sgn(n)阶跃函数和sigmoid函数

第五章 神经网络和误差逆传播法算法(BP)的推导_第2张图片

二、逆误差传播算法(BP算法)

误差逆传播算法是迄今为止最成功的神经网络学习算法,现实任务中使用神经网络时,大多使用BP算法进行训练。正如其名,误差逆传播算法的原理是:先将输入示例提供给输入层的神经元,然后逐层将信号前传,直到产生输出层的结果;然后计算输出层与真实值的误差,再将误差逆向的传播至隐层神经元,最后根据隐层神经元的误差来对连接权和阈值进行调节。

BP网络中的变量及符号如下图:

第五章 神经网络和误差逆传播法算法(BP)的推导_第3张图片

给定训练集D=(x1,y1),(x2,y2),......(xm,ym),xi∈Rd,yi∈RlD=(x1,y1),(x2,y2),......(xm,ym),xi∈Rd,yi∈Rl,即输入示例由d个属性描述,输出l个结果。如图所示,是一个典型的单隐层前馈网络,它拥有d个输入神经元、l个输出神经元、q个隐层神经元,其中,θj表示第j个神经元的阈值,表示隐层第h个神经元的阈值,输入层第i个神经元与隐层第h个神经元连接的权值是,隐层第h个神经元与输出层第j个神经元连接的权值是

未完待续。。。。。。。。。。

你可能感兴趣的:(机器学习)