function retstr = FnnTrain(dt,ld,tt,sp)
retstr=-1;
%%%% 输入参数赋值开始 %%%%%%%%%%%%%%%%%%%%%%%
% 方便调试程序用,程序调试时去掉这部分的注释
% dt=4; %学习阈值
% ld=0.05; %学习进度
% tt=10; %训练次数
% sp='data\sample.txt'; %一个点的监测数据
%%%% 输入参数赋值结束 %%%%%%%%%%%%%%%%%%%%%%%%
global recordDimention;
global sampleNumber;
global weightNumber;
global distanceThread;
global WW;
global learningDegree;
global epochsNumber;
distanceThread=dt;
learningDegree=ld;
traintimes=tt;
A=load(sp);
[Arow Acol]=size(A);
%样本个数
sampleNumber=Arow;
recordDimention=Acol;
disp(sampleNumber);
WW=A(1,:);
WW=[WW [1]];
weightNumber=1;
epochsNumber=1;
for jj=2:1:sampleNumber
TrainNN2(A(jj,:));
end
for jt=1:traintimes-1
for jt2=1:sampleNumber
TrainNN2(A(jj,:));
end
end
% 将训练结果写入权值文件
dlmwrite('data\w.dat',WW,'\t');
%
% 训练子函数
%
function TrainNN2(a)
global recordDimention;
global sampleNumber;
global weightNumber;
global distanceThread;
global WW;
global learningDegree;
global epochsNumber;
Ldistance=zeros(2,weightNumber);
for j1=1:weightNumber
Ldistance(2,j1)=j1;
end
% %%%%%输入输出空间的模糊分割
for j2=1:weightNumber
Lx=0;
for j3=1:recordDimention
Lx=Lx + (a(j3) - WW(j2,j3)) .* (a(j3) - WW(j2,j3));
end
Ldistance(1,j2)=sqrt(Lx);
end
% %%%%%计算模糊空间的距离
Lx1=Ldistance(1,1);
Lx2=Ldistance(2,1);
for j4=2:weightNumber
if(Ldistance(1,j4)<Lx1)
Lx1=Ldistance(1,j4);
Lx2=Ldistance(2,j4);
end
end
% %%%%%修正模糊规则
updateW=0;
nowWeight=Lx2;
if(Lx1<=distanceThread)
for j6=1:recordDimention
WW(nowWeight,j6)=WW(nowWeight,j6) + learningDegree .* (a(j6) - WW(nowWeight,j6));
end
WW(nowWeight,recordDimention+1)=WW(nowWeight,recordDimention+1)+1;
updateW=1;
end
if( updateW==0)
weightNumber=weightNumber+1;
a=[a [1]];
WW=[WW;a];
end
FnnTrain.rar_模糊神经_模糊神经网络_神经网络参数
版权申诉
126 浏览量
2022-07-13
18:53:17
上传
评论
收藏 952B RAR 举报
邓凌佳
- 粉丝: 65
- 资源: 1万+
最新资源
- 5.23-Java概述,JDK安装及注释、关键字、标识符、数据类型、变量、常量的介绍
- 《Python基础》实验三指导书(1).doc
- TensorFlow 深度学习、机器学习-任何能够用计算流图形来表达的计算,都可以使用TensorFlow
- 一个基于springboot+sureness的面向REST API资源无状态认证权限管理系统
- 王博外文文献.pdf
- python毕业设计基于社区检测的多任务聚类联邦学习项目源码+使用说明(高分项目).zip
- Javaweb项目源码-编程爱好者博客地带.zip
- java各个技术栈相关知识点
- PYthon代码 pdf合并
- 内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、 Redis
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈