@TOC
Adaline网络与LMS算法
ADALINE网络与感知机网络非常相似,不同之处在于ADALINE的传输函数是线性函数而不是硬限值函数(hard limit)。而且ADALINE网络与感知机网络具有相同的 局限性:只能解决线性可分的问题。但是,ADALINE运用的LMS(最小均方)学习算法,要比感知机学习规则强大。因为感知机学习规则虽然能够保证将网络收敛到正确分类的训练模式的解,但是由于训练模式非常接近网络的决策边界,从而导致训练的决策边界可能会对噪声比较敏感,但是LMS算法可以将网络的决策边界远离训练模式,从而使网络对噪声能够更好、更加准确的处理。
ADALINE与感知机网络的结构基本相同,唯一不同的是传输函数变为线性函数。该网络的输出可以由下式表示:
a = purelin(wp + b) = wp + b
网络输出的第i个向量可表示为:
a(i) = purelin(n(i)) = purelin(w(i)p + b(i)) = w(i)p + b(i)
其中w(i)是第i行元素构成的向量:
w(i) =
[ w ( i , 1 ) w ( i , 2 ) . . . w ( i , R ) ] \left[ \begin{array}{c} w(i,1)\\ w(i,2)\\ .\\ .\\ .\\ w(i,R)\\ \end{array} \right] ⎣⎢⎢⎢⎢⎢⎢⎡w(i,1)w(i,2)...w(i,R)⎦⎥⎥⎥⎥⎥⎥⎤
均方误差(LMS)
首先,LMS是一个有监督的训练算法,学习规则是使用一个表征网络正确行为的样本的样本集合:
{ {p1,t1},{p2,t2},{p3,t3},{p4,t4},,{pn,tn} }
其中pn表示的是网络的一个输入,tn表示的是对于的目标输出。对于每一个网络的输入,网络的实际输出与目标输出之间的差值称为差值*
LMS将会调整网络的权值与偏置值来最小化均方误差。首先考虑单个的神经元。我们将所有的需要调整的参数(包括偏置值)构成一个向量:
x= [ w i b ] \left[ \begin{array}{c} w_i\\ b\\ \end{array} \right] [wib]
我们将偏置值设为1,作为输入向量的一部分,所以输入向量为:
z = [ p 1 ] \left[ \begin{array}{c} p\\ 1\\ \end{array} \right] [p1]
所以网络的实际输出表示为:
a = x t z x^tz xtz
所以ADALINE网络的均方误差表达式可以写为:
F(x) = E[ e 2 e^2 e2] = E[