bp神经网络MATLAB程序

时间:2022-04-22 07:10:08 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
%清空环境变量 clc clear

%读取数据

a=xlsread(’F:\4。数据挖掘讲义—马景义\数据和程序\matlab\oneinput.csv' b=xlsread(’F\4.数据挖掘讲义—马景义\数据和程序\matlab\outputcsv'); c=xlsread(F:\4。数据挖掘讲义—马景义\数据和程序\matlab\c.csv'; save data1mat b save data2mat a load data1 load data2 %节点个数 inputnum=42; hiddennum=8 outputnum=1

%训练数据和预测数据 input_train=a:,190) input_test=a(:,91:137); output_train=b(:,190; output_test=b(:,91137);

%将训练样本输入输出数据归一化

inputn,inputps]=mapminmaxinput_train; [outputn,outputps=mapminmaxoutput_train;

%构建BP神经网络

net=newff(inputn,outputn,2012’tansig’,’purelin’}'traingdx’; net.trainParam.epochs=1000; net.trainParamlr=001;

net.trainParam.goal=000000001 BP神经网络训练

net=train(net,inputn,outputn); %测试样本归一化

inputn_test=mapminmax’apply'input_test,inputps) BP神经网络预测

an=sim(netinputn_test) %%网络得到数据反归一化

BPoutput=mapminmax(’reverse’anoutputps) d=BPoutput>c figure1)

plotd'og’);

scatter(1:(13790)d'rx’); hold on

plotoutput_test'—*’)

scatter(1:(13790,output_test,’o');

legend(’预测输出’,’期望输出’,'fontsize,12 title'BP网络预测输出''fontsize,12


xlabel(’样本’'fontsize,12) xlabel'优化前输出的误差’fontsize12);

figure(2

error=doutput_test plot1137-90error); xlabel('样本’,'fontsize'12; ylabel('优化前输出的误差’fontsize'12) save net net inputs outputs


本文来源:https://www.wddqw.com/doc/5a92b627874769eae009581b6bd97f192279bf3c.html