文本分类算法之-LMS神经网络算法的介绍

神经网络学习的梯度算法

从感如器的学习算法可知,学习的目的是在于修改网络中的权系数,使到网络对于所输入的模式样本能正确分类。当学习结束时,也即神经网络能正确分类时,显然 权系数就反映了同类输人模式样本的共同特征。换句话讲,权系数就是存储了的输人模式。由于权系数是分散存在的,故神经网络自然而然就有分布存储的特点。

前面的感知器的传递函数是阶跃函数,所以,它可以用作分类器。前面一节所讲的感知器学习算法因其传递函数的简单而存在局限性。

感知器学习算法相当简单,并且当函数线性可分时保证收敛。但它也存在问题:即函数不是线性可分时,则求不出结果;另外,不能推广到一般前馈网络中。

为了克服存在的问题,所以人们提出另一种算法——梯度算法(也即是LMS法)。

为了能实现梯度算法,故把神经元的激发函数改为可微分函数,例如Sigmoid函数,非对称Sigmoid函数为f(X)=1/(1+e-x ),对称Sigmoid函数f(X)=(1-e-x )/(1+e-x );而不采用阶跃函数。

对于给定的样本集Xi (i=1,2,,n),梯度法的目的是寻找权系数W* ,使得f[W*. Xi ]与期望输出Yi尽可能接近。

设误差e采用下式表示:

(1-25)

其中,Yi =f〔W* ·Xi ]是对应第i个样本Xi 的实时输出

Yi 是对应第i个样本Xi 的期望输出。

要使误差e最小,可先求取e的梯度:

(1-26)

其中:

(1-27)

令  Uk =W. Xk ,则有:

(1-28)

 

即有:

(1-29)

 

最后有按负梯度方向修改权系数W的修改规则:

(1-30)

 

也可写成:

(1-31)

 

在上式(1—30),式(1—31)中,μ 是权重变化率,它视情况不同而取值不同,一般取0-1之间的小数。
很明显,梯度法比原来感知器的学习算法进了一大步。其关键在于两点:

1.神经元的传递函数采用连续的s型函数,而不是阶跃函数;

2.对权系数的修改采用误差的梯度去控制,而不是采用误差去控制。故而有更好的动态特能,即加强了收敛进程。

但是梯度法对于实际学习来说,仍然是感觉太慢;所以,这种算法仍然是不理想的。


你可能感兴趣的:(文本挖掘,数据挖掘,梯度下降,LMS)