好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于Hopfield神经网络识别0~9.docx

10页
  • 卖家[上传人]:ss****gk
  • 文档编号:232963613
  • 上传时间:2021-12-31
  • 文档格式:DOCX
  • 文档大小:88.97KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 基于Hopfield神经网络识别0〜9基于Hopfield神经网络的数字识别原理简介:Hopfield网络是有反馈的全互联型网络,其形式如图2所示,N为神经元的数目,V表 示神经元的输入向量,U表示输出向量,W为神经元之间的权值离散Hopfield网络中每 个神经元的输出只能取“1”或“-1”两种状态,各神经元的状态可用向量V表示: V={vl, v2 , -vn}o网络中各神经元彼此互相连接,即每个神经元将自己的输出通过连 接权传给其它神经元,同时每个神经元接受其它神经元传来的信息图2有反馈的全互联型网络Hopfield网络的稳定性是由能量函数来描述的,即对网络的每个状态发生变化时,能量 函数E随网络状态变化而严格单调递减,这样Hopfield模型的稳定与能量函数E在状态 空间的局部极小点将一一对应设有N个神经元构成的Hopfield网络,其中第i个和第j个神经元节点状态分别记为 vi和vj; w是神经元i和j的连接权, 为神经元i的阈值节点的能量可表示为:Ei=-( wvj inni ji i) v则整个Hopfield网络整体能量函数定义为:InB=- 21 1 wvv v ijijnj 11 In设有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)= wvj iniji i;(3) 根据ui(t)的值大小,更新神经元的状态if (ui(t)) 0then vi (t+1) =1else vi (t+1) =0;(4) 神经元i以外的神经元j的状态不变化;(5) 转向(1),直到网络达到稳定Hopfield网络作为记忆的学习时,稳定状态是给定的,通过网络的学习求适合的权矩阵 W (对称阵),学习完成后以计算的方式进行联想对给定的M个模式,Hopfield网络可 按Hebb规则来进行学习0, i j Wi j M v (k) v (k), i jj i k 1按上述规则求出权矩阵后,可认为网络已经将这M个模式存入到网络的连接权中问 题描述:设计一个Hopfield网络,使其具有联想记忆功能,能正确识别阿拉伯数字,当数字被 噪声污染后仍可以正确地识别程序流程:先设计好标准的数字点阵(本文采用10*10矩阵表示),根据这些标准的数字点阵创建 并训练网络,使网络达到稳定状态,用带噪声的数字测试训练的网络。

      噪声有两种形式: 一种是固定噪声;另一种是随机噪声,本文对两种噪声都做讨论 程序:%数字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(:), n ine(:)]; %输出数字0-9figurefor ii二0:9,subplot(2, 5, ii+1);imshow(reshape(T(:, ii+1),10,10));title([,当前数字:’num2str(ii)])end%数字带噪声数字点阵(固定法)noise_matrix=loa>d(' noise_matrix. txt');%数字带噪声数字点阵(随机法)%noise_matrix二zero;%for i=l:100% a=rand;% if a<0. 1% noise_matrix(i)二-zero(i);%end%endfiguresubplot (2, 3, 1)imshow(noise_matrix);title(,带噪声的样本');%关于hopfield网络的创建和仿真,参数形式参见Mat lab的帮助net=newhop(T) ;%创建hopfield网络,根据标准样本开始训练学习No22=sim(net, {1,5}, {}, {noise_matrix(:)}) ;%仿真 5 次,只有一个样本 noise_matrix for ii二1:5subplot ⑵ 3, 1+ii)imshow(reshape(No22{ii}, 10, 10)) ; titled'第'num2str(ii)'仿真结果'])end实验结果:标准数字点阵当前数字:0当前数字:1当前数字:3当前数字:4当前数字:6当前数字:7当前数字:8当前数字:9随机噪声的数字识别:(以带随机噪声的0为例)带噪声的样本第1仿真结果第2仿真结果第3仿真结IIII果第4仿真结果第5仿真结果固定噪声的数字识别:(以被污染的2为例)带噪声的样本第1仿真结果第2仿真结果第3仿真结果第4仿真结果第5仿真结果结果分析:本文对被污染的数字0-9都进行了实验,无论是带随机噪声还是固定噪声,训练过的 Hopfield网络在仿真3次后都能被识别出来。

      由于用来训练网络的各个样本并不是严格地 正交,不符合Hopfield网络联想记忆的条件,当数字在噪声的污染下失真很严重时, Hopfield网络识别会出现偏差改进方法:当输入的训练样本不满足相互正交的条件时,可以在网络训练时,通过修改连接权值, 使网络达到稳定状态,这样的话,Hopfield网络可以训练样本不是相互正交时也可以达到 稳定状态,训练后的网络可以很好地识别带噪声的数字。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.