分类代码案例2:粒子群算法优化支持向量机SVM分类 - MATLAB完全代码教程
本文以红酒数据集为例,结合编译的libsvm多分类工具函数,介绍粒子群算法优化支持向量机SVM分类的MATLAB代码编写,主要流程包括1. 读取数据 2.数据预处理 3.利用粒子群算法PSO求解最佳的SVM参数c和g 4.根据最佳的参数进行SVM模型训练 5.SVM模型预测 6.准确率分析以及分类结果对比作图。
1. 初始化代码
close all;
clear;
clc;
format compact;
addpath('libsvm-3.24')
2. 读取数据代码
data=xlsread('数据.xlsx','Sheet1','A1:N178'); %使用xlsread函数读取EXCEL中对应范围的数据即可
%输入输出数据
input=data(:,1:end-1); %data的第一列-倒数第二列为特征指标
output_labels=data(:,end); %data的最后面一列为标签类型
% 选定训练集和测试集
% 将第一类的1-30,第二类的60-95,第三类的131-153做为训练集
train_input = [input(1:30,:);input(60:95,:);input(131:153,:)];
% 相应的训练集的标签也要分离出来
train_output_labels = [output