全部笔记的汇总贴:《人工神经网络原理》-读书笔记汇总
Hopfield神经网络丢弃了“层次”概念,创造出无层次的全互联型神经网络。
引入了“能量函数”的概念,阐明了神经网络与动力学之间的关系,使得神经网络的运行稳定性判断有了可靠而简便的依据。
两种形式
- 离散型
- 连续型
连续型Hopfield神经网络与电子电路存在明显对应关系,便于用集成电路实现。
一、离散型Hopfield神经网络
离散型Hopfield神经网络结构
有反馈的单层全互联结构
n n n个神经元之间相互双向连接,神经元 i i i与神经元 j j j之间的连接权 w i j w_{ij} wij与神经元 j j j与神经元 i i i之间的连接权 w j i w_{ji} wji具有相同的值,即 w i j = w j i w_{ij}=w_{ji} wij=wji
每个神经元到自身的连接权值为0,即 w i i = 0 w_{ii}=0 wii=0
每个神经元接受所有神经元反馈的信息,受到所有神经元输出的控制,以保证Hopfield神经网络在没有外部输入时能进入稳定状态。
离散型Hopfield神经网络处理单元模式
x j x_j xj表示神经元 j j j的输出(也称神经元的状态)
w i j w_{ij} wij表示神经元 i i i与神经元 j j j之间的连接权值
θ j \theta_j θj表示神经元 j j j的阈值
神经元 j j j的净输入 s j s_j sj为 s j = ∑ i = 1 n x i w i j − θ j s_j=\sum_{i=1}^nx_iw_{ij}-\theta_j sj=∑i=1nxiwij−θj
神经元 j j j的输出 x j x_j xj为 x j = f ( s j ) = s g n ( s j ) = { 1 s j > 0 − 1 s j ≤ 0 x_j=f(s_j)=sgn(s_j)=\left\{ \begin{array}{l} 1\;\;\;\;s_j>0 \\ \\-1\;s_j\le0 \end{array} \right. xj=f(sj)=sgn(sj)=⎩⎨⎧1sj>0−1sj≤0
离散型Hopfield神经网络状态及运行规则
离散型Hopfield神经网络的能量函数
离散型Hopfield网络的能量函数为 E = − 1 2 ∑ i = 1 n ∑ j = 1 n w i j x i x j + ∑ i = 1 n θ i x i E=-\frac12\sum_{i=1}^n\sum_{j=1}^nw_{ij}x_ix_j+\sum_{i=1}^n\theta_ix_i E=−21i=1∑nj=1∑nwijxixj+i=1∑nθixi
Hopfield网络的能量函数阐明了神经网络与动力学之间的关系,网络状态的变化过程实际上就是一个使能量极小化(包括全局极小和局部极小)的过程。
每次神经元状态改变时,整个网络的能量应单调减小,即能量或者与以前相同或者下降。
离散型Hopfield神经网络的连接权值设计
离散型Hopfield网络可以用于联想记忆。
基本原理
- 利用能量函数的极值点,将记忆的样本信息存储在不同的能量极值点上,在给网络输入某一模式时,网络的稳定状态就对应着已经记忆的存储样本,从而实现联想记忆。
离散型Hopfield网络实现联想记忆的核心是根据能量极值点(也称为学习模式)设计一组适当的网络权值和阈值。
基于Hebb学习规则的外积和法
- 假设网络有 n n n个节点,网络的连接权矩阵为 W W W,若网络共处理 m m m个两两正交的模式样本,即网络的学习任务集合为 X k = ( x 1 k , x 2 k , ⋯ , x n k ) , k = 1 , 2 , ⋯ , m X^k=(x_1^k,x_2^k,\cdots,x_n^k),k=1,2,\cdots,m Xk=(x1k,x2k,⋯,xnk),k=1,2,⋯,m,则有 W = α ∑ k = 1 m [ ( X k ) T ⋅ X k − I ] , α W=\alpha\sum_{k=1}^m[(X^k)^T\cdot X^k-I],\alpha W=α∑k=1m[(Xk)T⋅Xk−I],α为常数,并且 α > 0 \alpha>0 α>0,其中 I I I为 n ∗ n n*n n∗n的单位矩阵
离散型Hopfield神经网络的信息存储容量
网络能够存储的最大样本模式数称为网络的信息存储容量。
理想情况下,当采用外积和法为具有 n n n个神经元的离散型Hopfield网络设计连接权值时,如果记忆模式满足两两正交的条件,那么该离散型Hopfield网络的最大信息存储容量为 n n n,即最大可以记忆 n n n个模式。
一般情况下,对于具有 n n n个神经元的离散型Hopfield网络,如果是非正交的模式样本,网络的信息存储容量一般为 0.13 n ∼ 0.15 n 0.13n\sim0.15n 0.13n∼0.15n
二、连续型Hopfield神经网络
连续型Hopfield神经网络结构
有反馈的单层全互连结构,网络中的 n n n个神经元之间相互连接,为双向对称连接结构,网络连接权值满足 w i j = w j i w_{ij}=w_{ji} wij=wji和 w i i = 0 w_{ii}=0 wii=0。
连续型Hopfield神经网络处理单元模式
每个“神经元”都由反馈放大器组成,模拟神经元的非线性饱和转移特性。
组成
- 连接导线(轴突)
- 电阻(树突)
- 电容(突触)
特点
- 神经元 j j j的阈值 θ j \theta_j θj由外加偏置电流 I j I_j Ij表示
- 神经元 j j j的净输入 s j s_j sj由输入电压 u j u_j uj表示
- 神经元 j j j的输出 x j x_j xj由输出电压 V j V_j Vj表示 V j = f ( u j ) V_j=f(u_j) Vj=f(uj) f ( ⋅ ) f(\cdot) f(⋅)是连续型Hopfield网络的转移函数,它是一条S型曲线 f ( x ) = 1 1 + e − 2 s i s 0 f(x)=\frac1{1+e^{-2\frac{s_i}{s_0}}} f(x)=1+e−2s0si1
- 神经元的输入阻抗 R j R_j Rj由等效电阻 P j P_j Pj和输入电容 C j C_j Cj表示,它们决定了神经元 j j j的时间常数,用于模拟生物神经元的延时特性。
- 两个神经元之间的突触连接由电导 w i j = 1 ∣ R i j ∣ w_{ij}=\frac1{|R_{ij}|} wij=∣Rij∣1决定( R i j R_{ij} Rij为两个神经元之间的连接电阻)。
连续型Hopfield神经网络的状态
根据基尔霍夫定律,在连续型Hopfield网络中,第 j j j个神经元节点的节点方程为 C j d u j d t + u j P j = ∑ i = 1 n 1 R i j ( V i − u j ) + I j C_j\frac{du_j}{dt}+\frac{u_j}{P_j}=\sum_{i=1}^n\frac1{R_{ij}}(V_i-u_j)+I_j Cjdtduj+Pjuj=i=1∑nRij1(Vi−uj)+Ij若定义 1 R j = 1 P j + ∑ i = 1 n 1 R i j \frac1{R_j}=\frac1{P_j}+\sum_{i=1}^n\frac1{R_{ij}} Rj1=Pj1+∑i=1nRij1,并有 w i j = 1 R i j w_{ij}=\frac1{R_{ij}} wij=Rij1,可得 C j d u j d t = ∑ i = 1 n w i j V i − u j R j + I j C_j\frac{du_j}{dt}=\sum_{i=1}^nw_{ij}V_i-\frac{u_j}{R_j}+I_j Cjdtduj=i=1∑nwijVi−Rjuj+Ij
下面两式一起描述了连续型Hopfield网络的状态的动态变化过程 V j = f ( u j ) C j d u j d t = ∑ i = 1 n w i j V i − u j R j + I j V_j=f(u_j)\\C_j\frac{du_j}{dt}=\sum_{i=1}^nw_{ij}V_i-\frac{u_j}{R_j}+I_j Vj=f(uj)Cjdtduj=i=1∑nwijVi−Rjuj+Ij
连续型Hopfield神经网络的能量函数
连续型Hopfield神经网络的能量函数为 E = − 1 2 ∑ i = 1 n ∑ j = 1 n w i j V i V j − ∑ i = 1 n V i I i + ∑ i = 1 n 1 R i ∫ 1 V i f − 1 ( v ) d v E=-\frac12\sum_{i=1}^n\sum_{j=1}^nw_{ij}V_iV_j-\sum_{i=1}^nV_iI_i+\sum_{i=1}^n\frac1{R_i}\int^{V_i}_1f^{-1}(v){d}v E=−21i=1∑nj=1∑nwijViVj−i=1∑nViIi+i=1∑nRi1∫1Vif−1(v)dv
理想情况下,简化为 E = − 1 2 ∑ i = 1 n ∑ j = 1 n w i j V i V j − ∑ i = 1 n V i I i E=-\frac12\sum_{i=1}^n\sum_{j=1}^nw_{ij}V_iV_j-\sum_{i=1}^nV_iI_i E=−21i=1∑nj=1∑nwijViVj−i=1∑nViIi
定理:
- 假设具有 n n n个神经元的连续型Hopfield网络结构对称,即 w i j = w j i w_{ij}=w_{ji} wij=wji,并且每个神经元到自身的连接权值为0,即 w i i = 0 , i = 1 , 2 , ⋯ , n w_{ii}=0,i=1,2,\cdots,n wii=0,i=1,2,⋯,n,同时神经元的转移函数 f ( ⋅ ) f(\cdot) f(⋅)具有反函数 f − 1 ( ⋅ ) f^{-1}(\cdot) f−1(⋅),并且 f − 1 ( ⋅ ) f^{-1}(\cdot) f−1(⋅)是单调、连续且递增的,那么该连续型Hopfield网络就是稳定的。
三、Hopfield神经网络应用实例
离散型Hopfield神经网络朱永用于联想记忆
-给定Hopfield神经网络的稳定状态,求解过程是通过学习过程来得到合适的连接权矩阵的过程。
连续型Hopfield神经网络主要用于优化计算
- 给定Hopfield神经网络的连接权矩阵,求解过程是寻找具有最小能量值的网络稳定状态的过程。
离散型Hopfield神经网络应用实例
记忆方式
-
地址寻址存储方式
一组信息对应一组存储单元,当给定这组信息的正确地址后就可以恢复这组信息。 -
内容寻址存储方式
一组信息被分布存储在神经网络中,并不与某个确定的存储地址相对应,当给定这组信息中的部分信息时,可以通过网络的不断演化回忆出这组信息的全部内容。
联想记忆
-
自联想记忆
能够将网络中的输入模式映射为存储在网络中的不同输入模式中的一种模式,即可以通过某个事物的部分信息再现出事物的本来信息。 -
互联想记忆
能够由某一事物的信息联想出另一事物的信息,在收到具有一定噪音的输入模式时,能够通过网络状态的不断演化联想出相应的样本模式。
离散型Hopfield神经网络的联想记忆功能
-
记忆阶段(也称存储阶段或学习阶段)
联想记忆的核心,其处理过程是将记忆模式作为网络的稳定状态,通过设计或学习获得合适的网络连接权值。 -
联想阶段(也称恢复阶段或回忆阶段)
将给定的输入模式作为网络的初始状态,让网络运行规则不断演化,直至达到网络的稳定状态,此时网络的输出就是回忆出的存储模式。
离散型Hopfield网络联想记忆的缺陷
- 由网络联想或恢复出来的模式未必是与输入模式最接近的记忆模式;
- 所有的记忆模式并不是以同样的记忆强度回想出来;
- 在某些情况下,网络回想出的模式不是记忆模式中的任何一个模式,从而落入“伪状态”。
连续型Hopfield神经网络应用实例
主要应用于优化计算问题。
最优解问题是指在给定的约束条件下,求出使某目标函数最小(或最大)的变量组合问题。
求解思路
- 网络的能量函数咋网络状态按一定规则变化时,可以自动朝着其稳定的平衡点运动,并将最终收敛于极值点,因此如果将需要求解的问题的目标函数转换为网络的能量函数,将问题的变量对应于网络的状态,当网络的能量函数收敛于极小值时,即可求解问题的最优解。
求解过程
- 对于特定的问题,选择一种合适的表示方法,使得神经网络的输出与问题的解能够对应起来;
- 构造神经网络的能量函数,使其最小值对应于问题的最优解;
- 由能量函数反推出神经网络的连接权值及结构;
- 根据步骤(3)得到的神经网络结构构造神经网络,并让其运行,网络运行的稳定状态就是问题的解。
下一章传送门:《人工神经网络原理》读书笔记(六)-Boltzmann机