ANN Hopfield网络

本文概述

  • 更新规则
  • Hopfield网络作为动力系统
  • 能量功能评估
  • 神经元相互拉入或推开
  • 训练网络:一种模式(Ki = 0)
Hopfield网络是一种特殊的神经网络, 其响应不同于其他神经网络。它是通过收敛迭代过程来计算的。它只有一层与输入和输出大小有关的神经元, 必须相同。当这样的网络识别出例如数字时, 我们向网络提供正确呈现的数字列表。随后, 网络可以将噪声输入转换为相关的理想输出。
1982年, 约翰·霍普菲尔德(John Hopfield)引入了一个人工神经网络来收集和检索像人脑一样的记忆。在这里, 神经元要么处于打开状态, 要么处于关闭状态。一个神经元的状态(打开+1或关闭0)将依赖于它从其他神经元收到的输入来恢复。首先准备一个Hopfield网络来存储各种模式或内存。之后, 准备通过发现有关该模式的部分或什至一些损坏的数据来识别任何学习到的模式, 即, 它最终稳定下来并恢复最接近的模式。因此, 类似于人脑, Hopfield模型在模式识别方面具有稳定性。
Hopfield网络是神经元完全连接的单层循环网络, 即每个神经元都与其他神经元相关联。如果有两个神经元i和j, 则它们之间存在连接权重wij, 它是对称wij = wji。
自连接性为零时, Wii = 0如下所示。在此, 给定的三个具有i = 1、2, 3且Xi =±1的神经元具有连接权重Wij。
ANN Hopfield网络

文章图片
更新规则 考虑N个神经元= 1, …, N的值Xi = +1, -1。
更新规则适用于节点i, 它由以下给定:
如果hi≥0, 则xi→1, 否则xi→-1
嗨=
ANN Hopfield网络

文章图片
称为i处的场, 其中b R为偏差。
因此, xi→sgn(hi), 如果r≥0, 则sgn(r)的值= 1; 如果r < 0, 则sgn(r)=-1。
我们需要将bi = 0设置为使它在用随机模式训练网络时没有区别。
因此, 我们考虑hi =
ANN Hopfield网络

文章图片
.
我们有两种不同的方法来更新节点:
同步:
在这种方法中, 所有节点的更新每次都同时发生。
异步地:
用这种方法, 在每个时间点, 更新随机选择的或根据某些规则选择的一个节点。异步更新在生物学上更现实。
Hopfield网络作为动力系统 考虑, K = {-1, 1} N, 因此对于1≤I≤N, 每个状态x£X由xi£{-1, 1}给出
在这里, 我们得到2N种可能的网络状态或配置。
我们可以通过使用任意两个状态之间的汉明距离来描述X上的度量:
P(x, y)=#{i:xi≠yi}
N在这里, P是0≤H(x, y)≤N的度量。它显然是对称的和自反的。
使用任何异步或同步更新规则, 我们得到了离散时间动力系统。
更新规则:X→X描述地图。
并向上:X→X是连续的。
例子:
假设我们只有两个神经元:N = 2
连通性有两个非平凡的选择:
w12 = w21 = 1
w12 = w21 = -1
异步更新:
在第一种情况下, 有两个吸引固定点称为[-1, -1]和[-1, -1]。所有轨道都收敛到其中之一。一秒钟, 固定点为[-1, 1]和[1, -1], 所有轨道通过其中之一连接。对于任何固定点, 交换所有符号都会得到另一个固定点。
同步更新:
在第一种和第二种情况下, 尽管有固定点, 但是没有一个点可以吸引到附近的点, 即它们没有吸引固定点。有些轨道会永远振荡。
能量功能评估 Hopfield网络的能量函数随着异步更新而减小或保持不变。
对于网络的给定状态X∈{-1, 1} N以及对于任何具有Wij = wji和wii = 0的关联权重Wij集,
ANN Hopfield网络

文章图片
在这里, 我们需要将Xm更新为X’ m, 并用E’ 表示新能量, 并进行证明。
E’ -E =(Xm-X’ m)∑i≠mWmiXi。
使用上面的公式, 如果Xm = Xm’ , 则我们有E’ = E
如果Xm = -1且Xm’ = 1, 则Xm-Xm’ = 2且hm = ∑iWmiXi? 0
因此, E’ -E≤0
类似地, 如果Xm = 1且Xm’ = -1, 则Xm-Xm’ = 2且hm = ∑iWmiXi < 0
因此, E-E'< 0。
注意:如果Xm翻转, 则E’ -E = 2Xmhm 神经元相互拉入或推开 假设两个神经元I和j之间的连接权重Wij = Wji。
如果Wij> 0, 则更新规则表示:
  • 如果Xj = 1, 则j在加权总和(即WijXj)中的贡献为正。因此, Xi的值被j拉到其值Xj = 1
  • 如果Xj = -1, 则WijXj为负, 并且Xi再次被j拉向其值Xj = -1
因此, 如果Wij> 0, 则i的值将被j的值拉动。通过对称性, j的值也会被i的值拉动。
如果Wij < 0, 则i的值被j的值推开。
由此得出, 对于特定的一组值Xi∈{-1, 1} for;
1≤i≤N, 选择权重为Wij = XiXj;
1≤i≤N与Hebbian规则相关。
训练网络:一种模式(Ki = 0) 假设向量x→=(x1, … , xi, … , xN)∈{-1, 1} N是我们喜欢存储在Hopfield网络中的模式。
要建立一个识别x→的Hopfield网络, 我们需要相应地选择连接权重Wij。
如果我们为1≤i, j≤N(此处, i≠j)选择Wij =?XiXj, 其中?> 0是学习率, 则Xi的值在更新条件下不会改变, 如下所示。
我们有
ANN Hopfield网络

文章图片
这意味着Xi的值(无论是1还是-1)都不会改变, 因此x→是一个固定点。
【ANN Hopfield网络】请注意, 当我们使用x→训练网络时, 验证Hopfield网络是符号盲的, -x→也成为固定点。

    推荐阅读