HopfieId网络是J.J.Hopfield在20世纪80年代提出来的。他指出,如果神经网络的突触联系一是有效对称的,那么系统必将演化到个固定的有序状态。于是他引入能量函数的概念,表明如果突触联系是对称的,则网络的动态演化过程将达到能量最小的稳定状态。 利用这一特一性,Hopfield网络可完成些诸如最优化和联想记忆的功能。
HopfieId网络分为离散型和连续型两种,都是对称互连网络( W i j = W j i W_{ij}=W_{ji} Wij=Wji)根据节点状态的取值来划分是离散型的还是连续型。离散网络节点取{-1, +1}或{0, +1},连续网络节点状态在某个随机区间内连续取值。
神经元网络主要有两种运行方式
Hopfield网络运行规则主要有以下几步:
① 从网络中随机选出一个神经元 i;
② 求出神经元 i 的所有输入的加权总和:
③ 计算神经元 i 在第 t+1 时刻的输出值, 即 U i ( t + 1 ) U_i(t+1) Ui(t+1);
④ U i U_i Ui 以外的其他所有输出值保持不变,
U j ( t + 1 ) = U j ( t ) j = 1 , 2 , 3 , . . . , n j ≠ i \begin{aligned} &U_j(t+1)=U_j(t)\\ &j=1,2,3,...,n\quad j\ne i \end{aligned} Uj(t+1)=Uj(t)j=1,2,3,...,nj=i
⑤ 返回到第一步, 直至网络进入稳定状态。
按以上运行规则, 在满足以下两个条件时, Hopfield学习算法总是收敛的。
a. 网络的连接权矩阵无自连接并且具有对称性:
W i i = 0 i = 1 , 2 , . . . , n W i j = W j i i , j = 1 , 2 , . . . , n \begin{aligned} &W_{ii}=0\quad i=1,2,...,n\\ &W_{ij}=W_{ji}\quad i,j=1,2,...,n \end{aligned} Wii=0i=1,2,...,nWij=Wjii,j=1,2,...,n
b. 网络中各神经元以非同步或串行方式, 根据运行规则改变其状态: 当某个神经元改变状态时, 其他所有神经元保持原状态不变。
Hopfield网络是一种具有反馈性质的网络, 而反馈网络的一个个主要特点就是它应具有稳定状态。当网络结构满足上面所指出的两个条件时, 按上述工作运行规则反复更新状态, 当达到一定程度后, 各输出不再变化, 网络达到稳定状态, 即 U i ( t + 1 ) = U i ( t ) = s g n ( H i ) U_i(t+1)=U_i(t)=sgn(H_i) Ui(t+1)=Ui(t)=sgn(Hi)。 在实际应用中必须运行许多次才能达到稳定状态。 网络运行达到稳定状态的速度, 以及网络的稳定程度主要取决于网络的 “能量函数 ” 。