新起点
Hopfield神经网络
2020-07-09 10:32:46

霍普菲尔德神经网络(Hopfield neural network)是一种循环神经网络,由约翰·霍普菲尔德在1982年发明。Hopfield网络是一种结合存储系统和二元系统的神经网络。它保证了向局部极小的收敛,但收敛到错误的局部极小值(local minimum),而非全局极小(global minimum)的情况也可能发生。Hopfield网络也提供了模拟人类记忆的模型。

Hopfield网络的单元是二元的(binary),即这些单元只能接受两个不同的值,并且值取决于输入的大小是否达到阈值。Hopfield网络通常接受值为-1或1,也可以是0或者1。输入是由sigmoid函数处理得到的。 sigmoid函数定义为:

S ( t ) = 1 1 + e t {\displaystyle S(t)={\frac {1}{1+e^{-t}}}} 和间都有一对以一定权重(weight)的连接 w i j {\displaystyle w_{ij}} 。因此,Hopfiled网络可被描述为一个完整的无向图 G =< V , f > {\displaystyle G=<V,f>} ,其中 V {\displaystyle V} 是人工神经元集合。

Hopfiled网络的连接有以下特征:

权重对称的要求是一个重要特征,因为它保证了能量方程(称向函数某一点收敛的过程为势能转化为能量)在神经元激活时单调递减,而不对称的权重可能导致周期性的递增或者噪声。然而,Hopfiled网络也证明噪声过程会被局限在很小的范围,并且并不影响网络的最终性能。

使用下述公式更新Hoffield中节点的值:

s i { + 1 if  j w j i s j θ i , 1 otherwise. {\displaystyle s_{i}\leftarrow \left\{{\begin{array}{ll}+1&{\mbox{if }}\sum _{j}{w_{ji}s_{j}}\geq \theta _{i},\\-1&{\mbox{otherwise.}}\end{array}}\right.}

公式中:

Hopfied的更新有两种方式:

网站公告: