Hopfield神经网络模型与学习算法
Hello,I’m John Hopfield 概述 Hopfield网络是神经网络发展历史上的一个重要的里程碑。由美国加州理工学院物理学家J.J.Hopfield教授于1982年提出,是一种单层反馈神经网络。 Hopfield网络是一种由非线性元件构成的反馈系统,其稳定状态的分析比前向神经网络要复杂得多。1984年,Hopfield设计并研制了网络模型的电路,并成功地解决了旅行商(TSP)计算难题(优化问题)。 Hello,I’m John Hopfield Hopfield网络分为离散型和连续型两种网络模型,分别记作DHNN (Discrete Hopfield Neural Network) 和CHNN (Continues Hopfield Neural Network) 。 2019/5/10
2.9.1离散Hopfield 神经网络 网络模型表示法一 2019/5/10
2.9.1离散Hopfield 神经网络 网络模型表示法二 2019/5/10
2.9.1离散Hopfield 神经网络 相关参数说明 任意神经元 与 间的突触权值 为,神经元之间连接是对称的,神经元自身无连接. 任意神经元 与 间的突触权值 为,神经元之间连接是对称的,神经元自身无连接. 每个神经元都同其他的神经元相连,其输出信号经过其他神经元又有可能反馈给自己 设Hopfield网络中有n个神经元,其中任意神经元的输入用 表示,输出 用表示,它们都是时间的函数,其中 也称为神经元在时刻 的状态。 2019/5/10
2.9.1离散Hopfield 神经网络 激励函数 2019/5/10
2.9.1离散Hopfield 神经网络 离散Hopfield网络的运行规则 (1)串行(异步)工作方式 (2)并行(同步)工作方式 在任—时刻,只有某—神经元 (随机的或确定的选择)依上式变化,而其他神经元的状态不变。 (2)并行(同步)工作方式 在任一时刻,部分神经元或全部神经元的状态同时改变。 2019/5/10
2.9.1离散Hopfield 神经网络 串行(异步)工作方式运行步骤 第一步 对网络进行初始化; 第二步 从网络中随机选取一个神经元; 第四步 按式(2-6)求出该神经元经激活函数处理后的输出,此时网络中的其他神经元的输出保持不变; 第五步 判断网络是否达到稳定状态,若达到稳定状态或满足给定条件则结束;否则转到第二步继续运行。 2019/5/10
2.9.1离散Hopfield 神经网络 稳定状态 若网络从某一时刻以后,状态不再发生变化,则称网络处于稳定状态 网络为对称连接,即;神经元自身无连接 能量函数在网络运行中不断降低,最后达到稳定 2019/5/10
2.9.1离散Hopfield 神经网络 网络中神经元能量函数变化量 2019/5/10
2.9.2 连续Hopfield 神经网络 网络模型 2019/5/10
2.9.2 连续Hopfield 神经网络 稳定性分析 将下式代入得: 因为 连续Hopfield网络模型是稳定的 2019/5/10
2.9.2 连续Hopfield 神经网络 连续Hopfield网络模型的主要特性 1)连续Hopfield网络的神经元作为I/O转换,其传输特性具有Sigmoid特性; 2)具有时空整合作用; 3)在神经元之间存在着大量的兴奋性和抑制性连接,这种联接主要是通过反馈来实现。 4)具有既代表产生动作电位的神经元,又有代表按渐进方式工作的神经元,即保留了动态和非线性两个最重要的计算特性。 Hopfield神经网络设计的目标就是使得网络存储一些特定的平衡点,当给定网络一个初始条件时,网络最后会在这样的点上停下来 2019/5/10
2.9.3 Hopfield 神经网络的MATLAB实现 MATLAB中Hopfield网络的重要函数和功能 函 数 名 功 能 satlin( ) 饱和线性传递函数 satlins( ) 对称饱和线性传递函数 newhop( ) 生成一个Hopfield回归网络 nnt2hop( ) 更新NNT 2.0 Hopfield回归网络 2019/5/10
2.9.3 Hopfield 神经网络的MATLAB实现 MATLAB中与Hopfield网络有关的重要函数和功能 newhop( ) 功能 生成一个Hopfield回归网络。 格式 net = newhop(T) 说明 net为生成的神经网络,具有在T中的向量上稳定的点;T是具有Q个目标向量的R*Q矩阵(元素必须为-1或1)。Hopfield神经网络经常被应用于模式的联想记忆中。Hopfield神经网络仅有一层,其激活函数用satlins( )函数,层中的神经元有来自它自身的连接权和阈值。 2019/5/10
2.9.3 Hopfield 神经网络的MATLAB实现 MATLAB中与Hopfield网络有关的重要函数和功能 satlins( ) 功能 对称饱和线性传递函数 格式 A = satlins(N) A输出向量矩阵;N是由网络的输入向量组成的S*Q矩阵,返回的矩阵A与N的维数大小一致,A的元素取值位于区间[0,1]内。当N中的元素介于-1和1之间时,其输出等于输入;当输入值小于-1时返回-1;当输入值大于1时返回1。 2019/5/10
2.9.3 Hopfield 神经网络的MATLAB实现 由点阵构成的数字2 由点阵构成的数字1 2019/5/10
例2-8程序 2019/5/10
小结 概述 离散Hopfield神经网络及工作过程 连续Hopfield神经网络 稳定性分析 Hopfield神经网络的MATLAB实现 实例分析 2019/5/10
谢谢! 2019/5/10