滚动轴承寿命预测BP神经网络程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
滚动轴承寿命预测BP神经网络程序
Clear;
Clc;
%载入数据
data=load('1-1.csv');
data_train=data(1:112,:);
data_test=data(113:302,:);
input_train=data_train(:,1:6)';
output_train=data_train(:,7)';
input_test=data_test(:,1:6)';
output_test=data_test(:,7)';
%数据归一化处理
[inputn,inputps]=mapminmax(input_train);
inputps.ymin=0;
[inputn,inputps]=mapminmax(input_train,inputps);
[outputn,outputps]=mapminmax(output_train);
outputps.ymin=0;
[outputn,outputps]=mapminmax(output_train,outputps);
%构建BP神经网络
net=newff(inputn,outputn,13,{'logsig','purelin'},'trainlm');
net.trainParam.epochs=1000;
net.trainParam.lr=0.01;
net.trainParam.goal=0.001;
net.trainParam.max_fail=5;
%训练并仿真
net=train(net,inputn,outputn);
inputn_test=mapminmax('apply',input_test,inputps);
an=sim(net,inputn_test);
BPoutput=mapminmax('reverse',an,outputps);
error=output_test-BPoutput;
%输出结果图像
figure(1)
plot(error,'-*');
title('BP网络预测误差') ylabel('误差')
xlabel('样本')
figure(2)
plot(BPoutput,':og') ylabel('预测值')
xlabel('样本')