基于Hopfield神经网络识别0~9_第1页
基于Hopfield神经网络识别0~9_第2页
基于Hopfield神经网络识别0~9_第3页
基于Hopfield神经网络识别0~9_第4页
基于Hopfield神经网络识别0~9_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于 Hopfield 神经网络的数字识别原理简介:Hopfield 网络是有反馈的全互联型网络,其形式如图 2 所示,N 为神经元的数目,V表示神经元的输入向量,U 表示输出向量, W 为神经元之间的权值。离散 Hopfield 网络中每个神经元的输出只能取“1”或“-1”两种状态,各神经元的状态可用向量 V 表示:V=v1, v2 , vn。网络中各神经元彼此互相连接,即每个神经元将自己的输出通过连接权传给其它神经元,同时每个神经元接受其它神经元传来的信息。图 2 有反馈的全互联型网络Hopfield 网络的稳定性是由能量函数来描述的,即对网络的每个状态发生变化时,能量函数 E 随网络状态变化而严格单调递减,这样 Hopfield 模型的稳定与能量函数 E 在状态空间的局部极小点将一一对应。设有 N 个神经元构成的 Hopfield 网络,其中第 i 个和第 j 个神经元节点状态分别记为vi 和 vj;w 是神经元 i 和 j 的连接权, 为神经元 i 的阈值。节点的能量可表示为:Ei=-( )viinijjvw则整个 Hopfield 网络整体能量函数定义为:E=- inijiniji v112设有 N 个神经元构成的 Hopfield 神经网络,第 i 个神经元在 t 时刻所接收的来自其它N-1 个神经元输入信号的总和记为 ui(t ) ,t+1 时刻第 i 个神经元的输出值 vi(t+1)是符号函数作用于 ui(t)的某个阈值 时,该神经元将触发成兴奋状态。据此可知 Hopfield 网络的运行规则为:(1) 在网络中随机地选择一个神经元;(2) 求所选神经元 i(1 i N)的输入总和ui(t)= ;iinijjvw(3) 根据 ui(t)的值大小,更新神经元的状态if (u i(t)) 0then vi( t+1)=1else vi(t+1 )=0;(4) 神经元 i 以外的神经元 j 的状态不变化;(5) 转向(1) ,直到网络达到稳定。Hopfield 网络作为记忆的学习时,稳定状态是给定的,通过网络的学习求适合的权矩阵 W(对称阵) ,学习完成后以计算的方式进行联想。对给定的 M 个模式,Hopfield 网络可按 Hebb 规则来进行学习。Mkjiij jiv1),(,0按上述规则求出权矩阵后,可认为网络已经将这 M 个模式存入到网络的连接权中。问题描述:设计一个 Hopfield 网络,使其具有联想记忆功能,能正确识别阿拉伯数字,当数字被噪声污染后仍可以正确地识别。程序流程:先设计好标准的数字点阵(本文采用 10*10 矩阵表示) ,根据这些标准的数字点阵创建并训练网络,使网络达到稳定状态,用带噪声的数字测试训练的网络。噪声有两种形式:一种是固定噪声;另一种是随机噪声,本文对两种噪声都做讨论。设计数字点阵(0-9 )创建 Hopfield 网络产生带噪声的数字点阵数字识别测试结果分析程序:%数字 0-9 的标准点阵zero=load(zero.txt);one=load(one.txt);two=load(two.txt);three=load(three.txt);four=load(four.txt);five=load(five.txt);six=load(six.txt);seven=load(seven.txt);eight=load(eight.txt);nine=load(nine.txt);%训练样本(目标向量)T=zero(:),one(:),two(:),three(:),four(:),five(:),six(:),seven(:),eight(:),nine(:);%输出数字 0-9figurefor ii=0:9,subplot(2,5,ii+1);imshow(reshape(T(:,ii+1),10,10);title( 当前数字: num2str(ii)end%数字带噪声数字点阵(固定法)noise_matrix=load(noise_matrix.txt);%数字带噪声数字点阵(随机法)%noise_matrix=zero;%for i=1:100% a=rand;% if a0.1% noise_matrix(i)=-zero(i);%end%endfiguresubplot(2,3,1)imshow(noise_matrix);title(带噪声的样本);%关于 hopfield 网络的创建和仿真,参数形式参见 Matlab 的帮助net=newhop(T);%创建 hopfield 网络,根据标准样本开始训练学习No22=sim(net,1,5,noise_matrix(:);%仿真 5 次,只有一个样本 noise_matrixfor ii=1:5subplot(2,3,1+ii)imshow(reshape(No22ii,10,10);title(第 num2str(ii) 仿真结果)end实验结果:标准数字点阵仿仿仿仿仿 0 仿仿仿仿仿 1 仿仿仿仿仿 2 仿仿仿仿仿 3 仿仿仿仿仿 4仿仿仿仿仿 5 仿仿仿仿仿 6 仿仿仿仿仿 7 仿仿仿仿仿 8 仿仿仿仿仿 9随机噪声的数字识别:(以带随机噪声的 0 为例)仿仿仿仿仿仿 仿 1仿仿仿仿 仿 2仿仿仿仿仿 3仿仿仿仿 仿 4仿仿仿仿 仿 5仿仿仿仿固定噪声的数字识别:(以被污染的 2 为例)仿仿仿仿仿仿 仿 1仿仿仿仿 仿 2仿仿仿仿仿 3仿仿仿仿 仿 4仿仿仿仿 仿 5仿仿仿仿结果分析:本文对被污染的数字 0-9 都进行了实验,无论是带随机噪声还是固定噪声,训练过的Hopfield 网络在仿真 3 次后都能被识别出来。由于用来训练网络的各个样本并不是严格地正交,不符合 Hopfield 网络联想记忆的条件,当数字在噪声的污染下失真很严重时,Hopf

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论