• 大小: 1.93MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-10
  • 语言: Matlab
  • 标签: matlab  svm  

资源简介

简要的matlab基于svm分类的小程序,有三个例子可以作为参考

资源截图

代码片段和文件信息

function [predict_2acc_test]=my_svm(MIXtrainMIXtestMIXpredDATAtrainDATAtestDATApredK)
%% 数据处理
p_train = MIXtrain‘;
t_train = DATAtrain‘;

p_test = MIXtest‘; 
t_test = DATAtest‘;

p_pred = MIXpred‘; 
t_pred = DATApred‘;
% 输入集
[pn_traininputps] = mapminmax(p_train‘01);%归一化到0-1之间
pn_train = pn_train‘;
pn_test = mapminmax(‘apply‘p_test‘inputps);
pn_test = pn_test‘;
pn_pred = mapminmax(‘apply‘p_pred‘inputps);
pn_pred = pn_pred‘;
% 输出集
%[tn_trainoutputps] = mapminmax(t_train‘01);
tn_train = t_train;
%tn_test = mapminmax(‘apply‘t_test‘outputps);
tn_test = t_test;
%tn_pred = mapminmax(‘apply‘t_pred‘outputps);
tn_pred = t_pred;
cmd = [‘ -t 2‘‘ -s 0 -p 0.01‘];%支持向量机参数设置
%http://blog.sina.com.cn/s/blog_57a1cae80101bit5.html
model = svmtrain(tn_trainpn_traincmd);%训练集训练支持向量机

%% SVM仿真预测
[predict_1error_1tt1] = svmpredict(tn_trainpn_trainmodel);
[predict_2error_2tt2] = svmpredict(tn_testpn_testmodel);
[predict_3error_3tt3] = svmpredict(tn_predpn_predmodel);
% 反归一化
%predict_1 = mapminmax(‘reverse‘Predict_1outputps);
%predict_2 = mapminmax(‘reverse‘Predict_2outputps);
%predict_3 = mapminmax(‘reverse‘Predict_3outputps);

% 结果对比
result_1 = [t_train predict_1];
result_2 = [t_test predict_2];

%% 绘图
predict_3%预测的值

      
figure(2)
plot(1:length(t_train)t_train‘r-*‘1:length(t_train)predict_1‘b:o‘)
grid on
legend(‘真实值‘‘预测值‘)
xlabel(‘样本编号‘)
ylabel(‘信号‘)

string_1 = {‘训练集预测结果对比‘;
           [‘准确率 = ‘ num2str(error_1(1))]};
title(string_1)
figure(3)
plot(1:length(t_test)predict_2‘r-*‘1:length(t_test)t_test‘b:o‘)
grid on
legend(‘预测值‘‘真实值‘)
xlabel(‘样本编号‘)
ylabel(‘信号‘)
string_2 = {‘测试集预测结果对比‘;
           [‘准确率 = ‘ num2str(error_2(1))]};
title(string_2)
filename201=[‘未优化SVM的测试数据对比,运行次数:‘ num2str(K)];
% 保存图
filename=[filename201‘.fig‘];
saveas(gcffilename‘fig‘);% 保存
close(gcf);
acc_test=error_2(1);
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-11-24 19:15  matlab分类程序\
     文件       12196  2018-11-24 13:13  matlab分类程序\data.xlsx
     目录           0  2011-03-26 11:25  matlab分类程序\libsvm-3.1\
     文件      638882  2016-02-01 20:35  matlab分类程序\libsvm-3.1.zip
     文件        1497  2011-03-26 11:25  matlab分类程序\libsvm-3.1\COPYRIGHT
     文件       68901  2011-03-26 11:25  matlab分类程序\libsvm-3.1\FAQ.html
     文件       27670  2003-07-12 12:07  matlab分类程序\libsvm-3.1\heart_scale
     目录           0  2011-03-26 11:26  matlab分类程序\libsvm-3.1\java\
     目录           0  2011-03-26 11:26  matlab分类程序\libsvm-3.1\java\libsvm\
     文件       49854  2011-03-26 11:26  matlab分类程序\libsvm-3.1\java\libsvm.jar
     文件       61931  2011-03-26 11:26  matlab分类程序\libsvm-3.1\java\libsvm\svm.java
     文件       61280  2010-11-05 21:08  matlab分类程序\libsvm-3.1\java\libsvm\svm.m4
     文件         734  2010-09-12 20:11  matlab分类程序\libsvm-3.1\java\libsvm\svm_model.java
     文件         115  2003-10-11 20:30  matlab分类程序\libsvm-3.1\java\libsvm\svm_node.java
     文件        1288  2006-03-03 23:44  matlab分类程序\libsvm-3.1\java\libsvm\svm_parameter.java
     文件          87  2009-02-18 11:20  matlab分类程序\libsvm-3.1\java\libsvm\svm_print_interface.java
     文件         136  2003-10-11 20:30  matlab分类程序\libsvm-3.1\java\libsvm\svm_problem.java
     文件         624  2009-02-18 08:41  matlab分类程序\libsvm-3.1\java\Makefile
     文件        4267  2009-03-18 04:20  matlab分类程序\libsvm-3.1\java\svm_predict.java
     文件        8944  2009-02-20 06:06  matlab分类程序\libsvm-3.1\java\svm_scale.java
     文件       11483  2010-12-13 17:43  matlab分类程序\libsvm-3.1\java\svm_toy.java
     文件        8268  2010-01-27 17:40  matlab分类程序\libsvm-3.1\java\svm_train.java
     文件          81  2003-07-12 12:07  matlab分类程序\libsvm-3.1\java\test_applet.html
     文件         528  2010-09-12 20:11  matlab分类程序\libsvm-3.1\Makefile
     文件        1087  2010-09-12 20:11  matlab分类程序\libsvm-3.1\Makefile.win
     目录           0  2011-03-16 11:10  matlab分类程序\libsvm-3.1\matlab\
     文件        3988  2011-02-24 07:00  matlab分类程序\libsvm-3.1\matlab\libsvmread.c
     文件        2123  2011-02-24 07:00  matlab分类程序\libsvm-3.1\matlab\libsvmwrite.c
     文件         396  2011-02-24 07:00  matlab分类程序\libsvm-3.1\matlab\make.m
     文件        1481  2011-02-24 07:00  matlab分类程序\libsvm-3.1\matlab\Makefile
     文件        9289  2011-03-16 11:10  matlab分类程序\libsvm-3.1\matlab\README
............此处省略96个文件信息

评论

共有 条评论