当前位置:网站首页>【回归预测-lssvm分类】基于最小二乘支持向量机lssvm实现数据分类代码
【回归预测-lssvm分类】基于最小二乘支持向量机lssvm实现数据分类代码
2022-07-30 20:14:00 【matlab_dingdang】
1 内容介绍
在信息爆炸的新时代,由于全球科技与经济迅猛发展,数据充斥在各行各业,数据的结构也变得多样化.其中对于数据的分类最常见,伴随着数据分类的同时出现两大处理难点,一个是非均衡问题,另一个就是高维问题.但是传统的数据方法在进行数据挖掘时,低维平衡数据被重点关注,传统分类方法有线性判别分析,Logistic判别模型,支持向量机算法,K近邻算法,决策树算法,随机森林算法,神经网络学习,等.但是目前各个领域充斥着大量高维非均衡数据,而传统方法对非均衡数据分类问题的关注比较缺失.目前对于非均衡数据分类时,由于数量本身的严重偏斜,分类器整体的分类准确度良好恰恰归功于多数类样本的正确分类.
2 仿真代码
%基于SVM的iris数据辨识
clear;
clc;
A=load('irisdata.txt'); %导入数据
data = A(:,1:4); %1—4列数据是鸢尾花的4个特征:花萼和花瓣的长度和宽度
labels = A(:,5); %最后一列是属性标签。1代表山鸢尾(iris-setosa),
%2代表变色鸢尾(iris-versicolor),3代表维吉尼亚鸢尾(iris-virginica)
%将第一类的1-20,第二类的51-70,第三类的101-120做为训练集
train_iris=[data(1:20,:);data(51:70,:);data(101:120,:)];
%相应的训练集的标签也要分离出来
train_iris_labels = [labels(1:20);labels(51:70);labels(101:120)];
%将第一类的21-50,第二类的71-100,第三类的121-150做为测试集
test_iris=[data(21:50,:);data(71:100,:);data(121:150,:)];
%相应的测试集的标签也要分离出来
test_iris_labels = [labels(21:50);labels(71:100);labels(121:150)];
%数据预处理 将训练集和测试集进行归一化处理 归一化到[0,1]区间
[mtrain,ntrain] = size(train_iris);
[mtest,ntest] = size(test_iris);
dataset = [train_iris;test_iris];
% mapminmax为MATLAB自带的归一化函数
[dataset_scale,ps] = mapminmax(dataset',0,1)
dataset_scale = dataset_scale';
train_iris = dataset_scale(1:mtrain,:);
test_iris = dataset_scale( (mtrain+1):(mtrain+mtest),: );
% SVM网络训练
model = svmtrain(train_iris_labels, train_iris, '-c 2 -g 1');
%% SVM网络预测
[predict_label,accuracy] = svmpredict(test_iris_labels,test_iris,model);
figure;
hold on;
plot(test_iris_labels,'o');
plot(predict_label,'r*');
xlabel('测试集样本','FontSize',12);
ylabel('类别标签','FontSize',12);
legend('实际测试集分类','预测测试集分类');
title('测试集的实际分类和预测分类图','FontSize',12);
grid on;
snapnow;
3 运行结果
4 参考文献
[1]李飞. 基于改进粒子群算法的支持向量机参数优化[D]. 河北工业大学.
[1]沈会. 基于最小二乘支持向量机方法的统计优化预测模型[D]. 武汉理工大学, 2018.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
边栏推荐
- 推荐系统:开源项目/工具【谷歌:TensorFlow Recommenders】【Facebook:TorchRec】【百度:Graph4Rec】【阿里:DeepRec和EasyRec】
- KEIL问题:【keil Error: failed to execute ‘C:\Keil\ARM\ARMCC‘】
- PPT如何开启演讲者模式?PPT开启演讲者模式的方法
- TensorFlow2:概述
- MySQL的Replace用法详解
- 多线程的互斥锁应用RAII机制
- Running the evict task with compensationTime
- WPS没有在任务栏显示所有窗口选项怎么回事?
- 基于人脸的常见表情识别——模型搭建、训练与测试
- PHP低代码开发引擎—表单设计
猜你喜欢
PPT如何开启演讲者模式?PPT开启演讲者模式的方法
The JDBC programming of the MySQL database
ECCV2022 | 对比视觉Transformer的在线持续学习
普通的int main(){}没有写return 0;会怎么样?
KEIL problem: [keil Error: failed to execute 'C:\Keil\ARM\ARMCC']
Snowflake vs. Redshift的2022战报:两个数据平台谁更适合你?
Difference Between Concurrency and Parallelism
YOLO V3详解
化二次型为标准型
Centos7 install mysql8
随机推荐
YOLO V3详解
How to build FTP server under win2003
Recommendation system: evaluation index [offline evaluation index: RMSE (root mean square error), AUC, precision, recall, F1] [online evaluation: A/B test] [generally required response time <0.5s]
TensorFlow2: Overview
网络安全实验环境搭建
MySQL eight-part text recitation version
Centos7 install mysql8
推荐系统-排序层-模型(一):Embedding + MLP(多层感知机)模型【Deep Crossing模型:经典的Embedding+MLP模型结构】
MySQL——几种常见的嵌套查询
我是一名阿里在职9年软件测试工程师,我的经历也许能帮到处于迷茫期的你
MySQL的Replace用法详解
推荐系统:概述【架构:用户/物品特征工程---->召回层---->排序层---->测试/评估】【冷启动问题、实时性问题】
推荐系统:实时性【特征实时性:客户端实时特征(秒级,实时)、流处理平台(分钟级,近实时)、分布式批处理平台(小时/天级,非实时)】【模型实时性:在线学习、增量更新、全量更新】
线性结构:顺序表和链表
18.客户端会话技术Cookie
excel数字显示e+17怎么恢复?excel数字变成了小数点+E+17的解决方法
用jOOQ 3.17投射类型安全的嵌套表记录
啊?现在初级测试招聘都要求会自动化了?
WPS没有在任务栏显示所有窗口选项怎么回事?
Recommendation System - Sorting Layer - Model (1): Embedding + MLP (Multilayer Perceptron) Model [Deep Crossing Model: Classic Embedding + MLP Model Structure]