离散Hopfield神经网络摘记
离散Hopfield神经网络摘记
- 1. 离散型Hopfield网络结构
- 2. 网络中的状态变化
- 3. 训练网络
- 4. 网络的能量函数
- 5. Hopfield模型的实现
- 5.1 算法步骤
- 5.2 算法仿真——3个神经元模型
\qquad与多层感知机所采用“分层型”神经网络的结构不同,Hopfield神经网络是基于“相互连接型”的、递归式的网络。
- 相互连接型网络不分层,采用全连接结构,单元之间可以互相连接。
- 网络中各单元取值的组合,能够记忆网络的状态,称为“联想记忆”。
- 采用递归式结构,具有从输出到输入的反馈连接,期望的输出等于网络的输入,实际上是“自联想记忆”
1. 离散型Hopfield网络结构
\qquad离散Hopfield网络的基本结构如下图所示,主要具有以下特征:
(1)\qquad(1)(1) 每个单元没有自反馈(没有到自身的连接),即 wii=0w_{ii}=0wii=0
(2)\qquad(2)(2) 单元之间的连接权重是对称的,即 wij=wji,∀i≠jw_{ij}=w_{ji},\forall i\neq jwij=wji,∀i=j
(3)\qquad(3)(3) 每个单元的输出值只有 “−1”“-1”“−1” 或 “1”“1”“1” 两种状态,即 xi∈{−1,1}x_i\in\{-1,1\}xi∈{−1,1}
\qquad考虑一个包含 NNN 个二值单元的网络,每个单元的输出可以取 “−1”“-1”“−1” 或 “1”“1”“1” 两个值,因此整个网络包含了 2N2^N2N 种状态、可以采用“状态矢量”来描述。
\qquad
2. 网络中的状态变化
\qquad假设第 iii 个神经元在 ttt 时刻的输入为 ui(t)u_i(t)ui(t)、输出为 xi(t)x_i(t)xi(t)、连接权重为 wijw_{ij}wij、阈值为 θi(t)\theta_i(t)θi(t),神经网络的状态矢量表示为 X(t)=[x1(t),x2(t),⋯,xN(t)]T\boldsymbol X(t) = [x_1(t),x_2(t),\cdots,x_N(t)]^TX(t)=[x1(t),x2(t),⋯,xN(t)]T。
\qquad由于采用了递归结构,存在输出到输入的反馈。在 ttt 时刻,第 iii 个神经元接收来自于其他单元的输入 xj(t),j≠ix_j(t),\ j\neq ixj(t), j=i,就有:
ui(t)=∑j=1Nwijxj(t)−θi(t)\qquad\qquad u_i(t)=\displaystyle\sum_{j=1}^N w_{ij}x_j(t)-\theta_i(t)ui(t)=j=1∑Nwijxj(t)−θi(t)
\qquad若记权值矩阵为W=[wij]N×N\boldsymbol W=[w_{ij}]_{N\times N}W=[wij]N×N,记 ttt 时刻的状态矢量为 X\boldsymbol XX,那么:ui(t)=WX−θi(t)u_i(t)=\boldsymbol W\boldsymbol X -\theta_i(t)ui(t)=WX−θi(t)
\qquad于是就可以得到第 iii 个神经元在第 t+1t+1t+1 时刻的输出 xi(t+1)x_i(t+1)xi(t+1),表示为:
xi(t+1)=f(ui(t))={1,ui(t)>0xi(t),ui(t)=0−1,ui(t)<0\qquad\qquad x_i(t+1)=f(u_i(t))=\left\{\begin{matrix}1&,u_i(t)>0\\ \\x_i(t)&,u_i(t)=0 \\ \\ -1 &,u_i(t)<0 \end{matrix}\right.xi(t+1)=f(ui(t))=⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧1xi(t)−1,ui(t)>0,ui(t)=0,ui(t)<0
\qquadHopfield神经网络中的状态变化采用“异步模式”,每个时刻随机选择一个神经元的状态发生变化。比如 ttt 时刻的状态 X(t)=[x1(t),⋯,xk(t),⋯,xN(t)]T\boldsymbol X(t) = [x_1(t),\cdots,x_k(t),\cdots,x_N(t)]^TX(t)=[x1(t),⋯,xk(t),⋯,xN(t)]T 到了 t+1t+1t+1 时刻,只有 xk(t)x_k(t)xk(t) 变成了 xk(t+1)x_k(t+1)xk(t+1),而其他的状态均保持不变,即:xi(t+1)=xi(t),∀i≠kx_i(t+1)=x_i(t),\ \forall i\neq kxi(t+1)=xi(t), ∀i=k 。
\qquad
3. 训练网络
\qquadHopfield网络的训练采用Hebb规则:如果一条突触两侧的两个神经元同时被激活,那么突触的强度将会增大。
\qquad在Hopfield网络中,突触表示权值 wijw_{ij}wij,如果神经元 iii 和神经元 jjj 同时活跃,那么权值 wijw_{ij}wij 的值会增大。这里的“活跃”指的是:若神经元 iii 的输出 xix_ixi 和神经元 jjj 的输出 xjx_jxj 同时为正 (xi=+1,xj=+1)(x_i=+1,x_j=+1)(xi=+1,xj=+1)、或者同时为负 (xi=−1,xj=−1)(x_i=-1,x_j=-1)(xi=−1,xj=−1),权值会增大;若 xix_ixi 和 xjx_jxj 的符号相反,则会被抑制,权值就会减小。
\qquad因此,针对权值 wijw_{ij}wij 的调整方式可以设定为:
{wij=xixjwijnew=wijold+wij\qquad\qquad\left\{ \begin{aligned} w_{ij}&=x_i x_j \\ \\w_{ij}^{new}&=w_{ij}^{old}+w_{ij}\end{aligned}\right.⎩⎪⎨⎪⎧wijwijnew=xixj=wijold+wij
\qquad显然,这符合对于“活跃”的解释。
\qquad
\qquad考虑状态矢量 X=[x1,x2,⋯,xN]T,xi∈{+1,−1}\boldsymbol X = [x_1,x_2,\cdots,x_N]^T,x_i\in\{+1,-1\}X=[x1,x2,⋯,xN]T,xi∈{+1,−1} 作为网络的输入,则对权值的调整可以表示为:
W=XXT=[x1x2⋮xN][x1,x2,⋯,xN]=[x1x1x1x2⋯x1xNx2x1x2x2⋯x2xN⋮⋮⋮xNx1xNx2⋯xNxN]\qquad\qquad \boldsymbol W=\boldsymbol X \boldsymbol X^T= \left[\begin{matrix} x_1 \\ x_2 \\ \vdots \\x_N \\ \end{matrix}\right] [x_1,x_2,\cdots,x_N]= \left[\begin{matrix} x_1x_1&x_1x_2&\cdots &x_1x_N \\ x_2x_1&x_2x_2&\cdots &x_2x_N \\ \vdots&\vdots& &\vdots \\x_Nx_1&x_Nx_2&\cdots &x_Nx_N \\ \end{matrix}\right]W=XXT=⎣⎢⎢⎢⎡x1x2⋮xN⎦⎥⎥⎥⎤[x1,x2,⋯,xN]=⎣⎢⎢⎢⎡x1x1x2x1⋮xNx1x1x2x2x2⋮xNx2⋯⋯⋯x1xNx2xN⋮xNxN⎦⎥⎥⎥⎤
\qquad由于网络中的神经元“没有到自身的连接”,即 wii=xixi=0w_{ii}=x_i x_i=0wii=xixi=0 ,若假设权值矩阵的初始值为全0阵,那么输入一个训练模式后的权值矩阵为:
W=XXT−I=[0x1x2⋯x1xNx2x10⋯x2xN⋮⋮⋮xNx1xNx2⋯0]\qquad\qquad \boldsymbol W=\boldsymbol X \boldsymbol X^T-\bold I=\left[\begin{matrix} 0&x_1x_2&\cdots &x_1x_N \\ x_2x_1&0&\cdots &x_2x_N \\ \vdots&\vdots& &\vdots \\x_Nx_1&x_Nx_2&\cdots &0 \\ \end{matrix}\right]W=XXT−I=⎣⎢⎢⎢⎡0x2x1⋮xNx1x1x20⋮xNx2⋯⋯⋯x1xNx2xN⋮0⎦⎥⎥⎥⎤
\qquad\qquad即:wij=xixj,i≠jw_{ij}=x_i x_j,\qquad i\neq jwij=xixj,i=j
\qquad从另一个角度来分析:由于Hopfield网络是“自联想网络”,如果向网络那个输入一个模式 X\boldsymbol XX,那么网络的输出的也应该同样是该模式 X\boldsymbol XX,实现了自我联想记忆。
对于第 iii 个神经元,其反馈后的输出为 xi(t+1)=f(∑j=1Nwijxj(t))∈{+1,−1}x_i(t+1)=f\left(\sum_{j=1}^N w_{ij}x_j(t)\right)\in\{+1,-1\}xi(t+1)=f(∑j=1Nwijxj(t))∈{+1,−1},不考虑 f(⋅)f(\cdot)f(⋅) 时就有 X(t+1)=WX(t)\boldsymbol X(t+1)=\boldsymbol W\boldsymbol X(t)X(t+1)=WX(t),因此权值矩阵W\boldsymbol WW反映的规则实际上是一个“线性联想器”。
若只用一个模式 X(1)\boldsymbol X(1)X(1) 进行训练,则有 W=X(1)X(1)T\boldsymbol W=\boldsymbol X(1) \boldsymbol X(1)^TW=X(1)X(1)T,考虑以下情况:
- 考虑理想情况,如果 X(1)\boldsymbol X(1)X(1) 是正交向量,那么 X(2)=WX(1)=X(1)X(1)TX(1)=X(1)\boldsymbol X(2)=\boldsymbol W\boldsymbol X(1)=\boldsymbol X(1) \boldsymbol X(1)^T\boldsymbol X(1)=\boldsymbol X(1)X(2)=WX(1)=X(1)X(1)TX(1)=X(1) ,也就是实现了自我联想记忆
- 对于一般情况,如果 X(1)\boldsymbol X(1)X(1) 不是正交向量,那么 X(2)=WX(1)\boldsymbol X(2)=\boldsymbol W\boldsymbol X(1)X(2)=WX(1) 的结果就需要 f(⋅)=sgn(⋅)f(\cdot)=sgn(\cdot)f(⋅)=sgn(⋅) 之类的激活函数来把每个神经元的输入 ui(1)u_i(1)ui(1) 规范化为输出 xi(2)∈{+1,−1}x_i(2)\in\{+1,-1\}xi(2)∈{+1,−1},经过若干次迭代,X(t)\boldsymbol X(t)X(t) 会接近目标值 X(1)\boldsymbol X(1)X(1)
也就是说,Hebb规则输入模式非正交时,会产生误差。
【详细内容可参考:Hagan《神经网络设计》第七章】
\qquad如果想要在网络中存储 MMM 个模式,为了训练网络的连接权重,也就是要将 MMM 个模式 Xm=[x1m,x2m,⋯,xNm]T,(m=1,2,⋯,M)\boldsymbol X^m=[x_1^m,x_2^m,\cdots,x_N^m]^T,\ (m=1,2,\cdots,M)Xm=[x1m,x2m,⋯,xNm]T, (m=1,2,⋯,M) 输入到网络中,同样能够得到对应的模式 Xm\boldsymbol X^mXm,那么所有模式的连接权重就表示为:
W=X1(X1)T+X2(X2)T+⋯+XM(XM)T−MI=∑m=1MXm(Xm)T−MI\qquad\qquad \begin{aligned} \boldsymbol W&=\boldsymbol X^1 (\boldsymbol X^1)^T+\boldsymbol X^2 (\boldsymbol X^2)^T+\cdots+\boldsymbol X^M (\boldsymbol X^M)^T-M\bold I \\ &=\displaystyle\sum_{m=1}^M\boldsymbol X^m (\boldsymbol X^m)^T-M\bold I\end{aligned}W=X1(X1)T+X2(X2)T+⋯+XM(XM)T−MI=m=1∑MXm(Xm)T−MI
\qquad\qquad即:wij=∑m=1Mximxjm,i≠jw_{ij}=\displaystyle\sum_{m=1}^M x_i^m x_j^m,\qquad i\neq jwij=m=1∑Mximxjm,i=j
\qquad有些资料为了数学表达上的方便,常常增加了一个比例因子:wij=1N∑m=1Mximxjm,i≠jw_{ij}=\dfrac{1}{N}\displaystyle\sum_{m=1}^M x_i^m x_j^m,\ i\neq jwij=N1m=1∑Mximxjm, i=j。
\qquad
4. 网络的能量函数
\qquadHopfield网络的能量函数定义为:
E=−12∑i=1N∑j=1Nwijxixj+∑i=1Nθixi\qquad\qquad E=-\dfrac{1}{2}\displaystyle\sum_{i=1}^N\displaystyle\sum_{j=1}^N w_{ij} x_i x_j+\displaystyle\sum_{i=1}^N\theta_i x_iE=−21i=1∑Nj=1∑Nwijxixj+i=1∑Nθixi
\qquad按照前文中公式 xi(t+1)=f(∑j=1Nwijxj(t))x_i(t+1)=f\left(\sum_{j=1}^N w_{ij}x_j(t)\right)xi(t+1)=f(∑j=1Nwijxj(t)) 所定义的状态变化规则,上式定义的能量函数总是非递增的。
\qquad由于Hopfield网络采用异步模式,假设在 t+1t+1t+1 时刻只有第 kkk 个分量发生了变化,其他的状态均保持不变,也就是 xk(t+1)≠xk(t),xi(t+1)=xi(t),∀i≠kx_k(t+1)\neq x_k(t),\ x_i(t+1)=x_i(t),\ \forall i\neq kxk(t+1)=xk(t), xi(t+1)=xi(t), ∀i=k。因此,可以在能量函数中单独列出第 kkk 个分量 xkx_kxk,此时的能量函数可写为:
E=−12∑i=1N∑j=1Nwijxixj+∑i=1Nθixi=−12∑i=1N(∑j≠kwijxixj+wikxixk)+∑i≠kθixi+θkxk=−12∑i≠k(∑j≠kwijxixj+wikxixk)−12∑j≠kwkjxkxj+∑i≠kθixi+θkxk=−12∑i≠k∑j≠kwijxixj+∑i≠kθixi−12∑i≠kwikxixk−12∑j≠kwkjxkxj+θkxk\qquad\qquad \begin{aligned} E&=-\dfrac{1}{2}\displaystyle\sum_{i=1}^N\displaystyle\sum_{j=1}^N w_{ij} x_i x_j+\displaystyle\sum_{i=1}^N\theta_i x_i \\ &=-\dfrac{1}{2}\displaystyle\sum_{i=1}^N\left(\displaystyle\sum_{j\neq k} w_{ij} x_i x_j+w_{ik} x_i x_k\right)+\displaystyle\sum_{i\neq k}\theta_i x_i + \theta_k x_k\\ &=-\dfrac{1}{2}\displaystyle\sum_{i\neq k}\left(\displaystyle\sum_{j\neq k} w_{ij} x_i x_j+w_{ik} x_i x_k\right) -\dfrac{1}{2} \displaystyle\sum_{j\neq k} w_{kj} x_k x_j +\displaystyle\sum_{i\neq k}\theta_i x_i + \theta_k x_k\\ &=-\dfrac{1}{2}\displaystyle\sum_{i\neq k}\displaystyle\sum_{j\neq k} w_{ij} x_i x_j +\displaystyle\sum_{i\neq k}\theta_i x_i \\ &\ \ \ \ -\dfrac{1}{2}\displaystyle\sum_{i\neq k}w_{ik} x_i x_k -\dfrac{1}{2} \displaystyle\sum_{j\neq k} w_{kj} x_k x_j + \theta_k x_k\\ \end{aligned}E=−21i=1∑Nj=1∑Nwijxixj+i=1∑Nθixi=−21i=1∑N⎝⎛j=k∑wijxixj+wikxixk⎠⎞+i=k∑θixi+θkxk=−21i=k∑⎝⎛j=k∑wijxixj+wikxixk⎠⎞−21j=k∑wkjxkxj+i=k∑θixi+θkxk=−21i=k∑j=k∑wijxixj+i=k∑θixi −21i=k∑wikxixk−21j=k∑wkjxkxj+θkxk
\qquad从 ttt 时刻到 t+1t+1t+1 时刻,xk(t)⟶xk(t+1)x_k(t)\longrightarrow x_k(t+1)xk(t)⟶xk(t+1) 发生了改变,Δxk=xk(t+1)−xk(t)\Delta x_k=x_k(t+1)-x_k(t)Δxk=xk(t+1)−xk(t) 可能的值只可能是 +2+2+2 和 −2-2−2,因此能量函数的变化值为:
ΔEk=−12∑i≠kwikxiΔxk−12∑j≠kwkjxjΔxk+θkΔxk=−(∑j=1Nwkjxj−θk)Δxk,由于wkk=0,wik=wki=−ukΔxk\qquad\qquad \begin{aligned} \Delta E_k &= -\dfrac{1}{2}\displaystyle\sum_{i\neq k}w_{ik} x_i \Delta x_k -\dfrac{1}{2} \displaystyle\sum_{j\neq k} w_{kj}x_j\Delta x_k + \theta_k \Delta x_k \\ &= -\left(\displaystyle\sum_{j=1}^N w_{kj}x_j - \theta_k\right) \Delta x_k,\qquad 由于w_{kk}=0, w_{ik}=w_{ki}\\ &= -u_k \Delta x_k \\ \end{aligned}ΔEk=−21i=k∑wikxiΔxk−21j=k∑wkjxjΔxk+θkΔxk=−(j=1∑Nwkjxj−θk)Δxk,由于wkk=0,wik=wki=−ukΔxk
\qquad显然
{uk>0,Δxk=xk(t+1)−xk(t)=2uk<0,Δxk=xk(t+1)−xk(t)=−2⟹ukΔxk>0⟹ΔEk<0\qquad\qquad\left\{\begin{matrix} u_k>0,\Delta x_k=x_k(t+1)-x_k(t)=2\\ \\ \ \ \ u_k<0,\Delta x_k=x_k(t+1)-x_k(t)=-2\end{matrix}\right.\Longrightarrow u_k \Delta x_k>0\Longrightarrow\Delta E_k<0⎩⎨⎧uk>0,Δxk=xk(t+1)−xk(t)=2 uk<0,Δxk=xk(t+1)−xk(t)=−2⟹ukΔxk>0⟹ΔEk<0
\qquad因此,采用异步模式更新网络状态时,网络的能量函数值总是下降的。随着时间不断推进,网络的能量函数值逐渐减小,直到达到稳定状态。
\qquad
5. Hopfield模型的实现
5.1 算法步骤
\qquad假设有 MMM 个模式 Xm=[x1m,x2m,⋯,xNm]T,(m=1,2,⋯,M)\boldsymbol X^m=[x_1^m,x_2^m,\cdots,x_N^m]^T,\ (m=1,2,\cdots,M)Xm=[x1m,x2m,⋯,xNm]T, (m=1,2,⋯,M)
(1)\qquad(1)(1) 训练网络
W=∑m=1MXm(Xm)T−MI\qquad\qquad\qquad \boldsymbol W=\displaystyle\sum_{m=1}^M\boldsymbol X^m (\boldsymbol X^m)^T-M\bold IW=m=1∑MXm(Xm)T−MI
\qquad 或者:
wij=∑m=1Mximxjm(i≠j),wii=0\qquad\qquad\qquad w_{ij}=\displaystyle\sum_{m=1}^M x_i^m x_j^m \ (i\neq j),\ w_{ii}=0wij=m=1∑Mximxjm (i=j), wii=0
(2)\qquad(2)(2) 异步模式更新状态
\qquad 通过异步模式更新 X(t)=[x1(t),x2(t),⋯,xN(t)]T\boldsymbol X(t) = [x_1(t),x_2(t),\cdots,x_N(t)]^TX(t)=[x1(t),x2(t),⋯,xN(t)]T 中元素的状态,
\qquad 每次迭代时,随机选择其中一个元素进行状态更新:
xi(t+1)=f(∑j=1Nwijxj(t))\qquad\qquad\qquad x_i(t+1)=f\left(\sum_{j=1}^N w_{ij}x_j(t)\right)xi(t+1)=f(∑j=1Nwijxj(t))
\qquad 直到 X\boldsymbol XX 的状态稳定、不再变化时,作为输出
\qquad
5.2 算法仿真——3个神经元模型
\qquad考虑三个神经元的Hopfield网络,如下图所示。
Simon Haykin. Neural Networks and Learning Machines (3rd Edition). Fig.13.14(b)
\qquad这样的3个神经元的二值网络,有2个稳定的状态,分别为 X1=[1,−1,1]T\boldsymbol X^1=[1,-1,1]^TX1=[1,−1,1]T 和 X2=[−1,1,−1]T\boldsymbol X^2=[-1,1,-1]^TX2=[−1,1,−1]T,网络的权值为:
W=X1(X1)T+X2(X2)T−2I=[0−22−20−22−20]\qquad\qquad\boldsymbol W=\boldsymbol X^1 (\boldsymbol X^1)^T+\boldsymbol X^2 (\boldsymbol X^2)^T-2\bold I=\left[\begin{matrix}0&-2&2\\-2&0&-2\\2&-2&0\end{matrix}\right]W=X1(X1)T+X2(X2)T−2I=⎣⎡0−22−20−22−20⎦⎤
\qquad其它的6个状态输入网络中,最终都会收敛到 X1\boldsymbol X^1X1 或 X2\boldsymbol X^2X2。
测试代码:
function hopfieldNNx1 = [1, -1, 1]';x2 = [-1, 1, -1]';w = x1*x1' + x2*x2' - 2*eye(3);w = w/3;x3 = [1,1,1]';x4 = [1,1,-1]';x5 = [-1,1,1]';x6 = [-1,-1,1]';x7 = [1,-1,-1]';x8 = [-1,-1,-1]'; x = [x3,x4,x5,x6,x7,x8]; for i=1:6output = recog(w, x(:,i))';end
endfunction out = enery(w,x)out = -x'*w*x/2;
endfunction out = recog(weight, test)flag = 1;n = 1;while (flag) t0 = enery(weight,test); col = ceil(rand()*numel(test));out = weight(col,:)*test;if out>0test(col) = 1;elseif out<0test(col) = -1;endn = n + 1;if n==10flag = 0;out = test;t0 = enery(weight,test);end end
end
输出结果:
input = [ 1 1 1 ], output = [ 1 -1 1 ]
input = [ 1 1 -1 ], output = [ -1 1 -1 ]
input = [ -1 1 1 ], output = [ -1 1 -1 ]
input = [ -1 -1 1 ], output = [ 1 -1 1 ]
input = [ 1 -1 -1 ], output = [ 1 -1 1 ]
input = [ -1 -1 -1 ], output = [ -1 1 -1 ]
\qquad如果单独考虑某个输入,观察异步模式和网络能量变化,比如某一次运行:
input = [ -1 1 1 ]
E=0.6667, -1 1 1 ,chosed neuron:1
E=0.6667, -1 1 1 ,chosed neuron:1
E=0.6667, -1 1 1 ,chosed neuron:2
E=0.6667, -1 1 1 ,chosed neuron:1
E=0.6667, -1 1 1 ,chosed neuron:2
E=0.6667, -1 1 1 ,chosed neuron:2
E=0.6667, -1 1 1 ,chosed neuron:3 →\rightarrow→ 直到这一步,才随机选对了需要改变状态的神经元
E=-2.0000, -1 1 -1 ,chosed neuron:3
E=-2.0000, -1 1 -1 ,chosed neuron:2
ultimate value = -2.0000
output = [ -1 1 -1 ]
离散Hopfield神经网络摘记相关推荐
- 如何利用离散Hopfield神经网络进行高校科研能力评价(2)
如何利用离散Hopfield神经网络进行高校科研能力评价,应用部分
- 如何利用离散Hopfield神经网络进行高校科研能力评价(1)
如何利用离散Hopfield神经网络进行高校科研能力评价(1)代码部分
- 如何利用离散Hopfield神经网络进行数字识别(2)
如何利用离散Hopfield神经网络进行数字识别
- 如何利用离散Hopfield神经网络进行数字识别(1)
如何利用离散Hopfield神经网络进行数字识别,代码部分.
- MATLAB实战系列(三十六)-MATLAB 离散Hopfield神经网络的分类——高校科研能力评价
前言 离散型Hopfield神经网络不仅具有联想记忆的功能,还可以应用于解决分类问题. 文中涉及代码请参见 matlab神经网络源码集锦- 离散Hopfield神经网络的分类--高校科研能力评价 以下 ...
- 离散Hopfield神经网络的分类——高校科研能力评价
离散Hopfield网络 离散Hopfield网络是一种经典的神经网络模型,它的基本原理是利用离散化的神经元和离散化的权值矩阵来实现模式识别和模式恢复的功能.它最初由美国物理学家John Hopfie ...
- Hopfield神经网络和TSP问题
一.TSP问题 旅行商问题,又叫货郎担问题.它是指如下问题:在完全图中寻找一条最短的哈密尔顿回路. 哈密尔顿回路问题:给定一个图,判断图中是否存在哈密尔顿回路. 哈密尔顿回路:寻找一条回路,经过图中所 ...
- 人工智能之Hopfield神经网络(HNN)
感觉这位大佬说的不错,搬了过来,后面附上原文链接 神经网络在1980年代复兴归功于物理学家约翰·霍普菲尔德(Hopfield).1982年,霍普菲尔德提出了一种新的神经网络,可以解决一大类模式识别问题 ...
- DL之HNN:Hopfield神经网络(HNN之DHNN、CHNN)的相关论文、简介、使用案例之详细攻略
DL之HNN:Hopfield神经网络(HNN之DHNN.CHNN)的相关论文.简介.使用案例之详细攻略 导读:Hopfield神经网络(HNN)是一种具有循环.递归特性,结合存储和二元系统的神经网络 ...
- 如何将snake模型与Hopfield神经网络结合用于提取边缘
Computerized Tumor Boundary Detection Using a Hopfield Neural Network这篇论文给出了结合的思想 此方法在论文中被用于提取人脑多层MR ...
最新文章
- java.util.date的格式_java.util.Date格式将yyyy-mm-dd转换为mm-dd-yyyy
- Linux基础-2.目录文件的浏览、管理及维护
- js方式调用php_js如何调用php函数
- java基础的第二轮快速学习!day03
- Deep Learning 参数--学习率α、批样本数量batch_size
- win7 下安装ubuntu14.04 本人实测撰写
- 计算机样式的ppt,计算机应基础使用样式修饰页面.ppt
- python结巴分词代码_结巴分词Python代码
- matlab qam调制函数,matlab实现16QAM调制解调
- 联想笔记本那些有手写功能_可以在屏幕上自由手写联想Android平板电脑的哪些软件?如何设置联想平板电脑的手写笔迹...
- Windows如何安装mysql
- html5网页制作拓扑,基于HTML5的网络拓扑图设计
- 优化策略5 Label Smoothing Regularization_LSR原理分析
- coreseek note
- 4g硬盘可以装Linux 么,eeepc 900a 4g ssd硬盘予装了linux操作系统是否能改装xp
- 梅姨眼中最爱读英国书籍的人竟然是TA?
- [python 爬虫]Python爬虫抓取马蜂窝游记的照片 基于xpath
- 资讯汇总230212
- 前端图形验证码的实现
- kali2018.3复制粘贴功能失效的处理