基本信息
源码名称:支持向量机回归拟合.doc
源码大小:0.09M
文件格式:.doc
开发语言:MATLAB
更新时间:2020-11-21
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 5 元 
   源码介绍


基于支持向量机的回归拟合——混凝土抗压强度预测


核心代码】


%% 绘图

figure(1)

plot(1:length(t_train),t_train,'r-*',1:length(t_train),predict_1,'b:o')

grid on

legend('真实值','预测值')

xlabel('样本编号')

ylabel('耐压强度')

string_1 = {'训练集预测结果对比';

           ['mse = ' num2str(error_1(2)) ' R^2 = ' num2str(error_1(3))]};

title(string_1)

figure(2)

plot(1:length(t_test),t_test,'r-*',1:length(t_test),predict_2,'b:o')

grid on

legend('真实值','预测值')

xlabel('样本编号')

ylabel('耐压强度')

string_2 = {'测试集预测结果对比';

           ['mse = ' num2str(error_2(2)) ' R^2 = ' num2str(error_2(3))]};

title(string_2)

 

%% BP 神经网络

 

% 数据转置

pn_train = pn_train';

tn_train = tn_train';

pn_test = pn_test';

tn_test = tn_test';

% 创建BP神经网络

net = newff(pn_train,tn_train,10);

% 设置训练参数

net.trainParam.epcohs = 1000;

net.trainParam.goal = 1e-3;

net.trainParam.show = 10;

net.trainParam.lr = 0.1;

% 训练网络

net = train(net,pn_train,tn_train);

% 仿真测试

tn_sim = sim(net,pn_test);

% 均方误差

E = mse(tn_sim - tn_test);

% 决定系数

N = size(t_test,1);

R2=(N*sum(tn_sim.*tn_test)-sum(tn_sim)*sum(tn_test))^2/((N*sum((tn_sim).^2)-(sum(tn_sim))^2)*(N*sum((tn_test).^2)-(sum(tn_test))^2));

% 反归一化

t_sim = mapminmax('reverse',tn_sim,outputps);

% 绘图

figure(3)

plot(1:length(t_test),t_test,'r-*',1:length(t_test),t_sim,'b:o')

grid on

legend('真实值','预测值')

xlabel('样本编号')

ylabel('耐压强度')

string_3 = {'测试集预测结果对比(BP神经网络)';

           ['mse = ' num2str(E) ' R^2 = ' num2str(R2)]};

title(string_3)