模式识别(3)-SVM分类算法

本文介绍了支持矢量机(SVM)的基本原理及应用。SVM是一种用于分类和回归分析的监督学习模型,通过寻找最佳超平面来实现数据的最大间隔分类。文章还提供了SVM的Matlab训练代码实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.1.SVM算法原理和分析
SVM(Support Vector Machines),中文名字叫做支持矢量机。SVM也是寻找一个超平面,使得训练集中的点距离分类面尽可能的远,就是让这个分类面两侧放入空白区域最大。
支持矢量就是距离分类平面最近的一些样本点,对决策面的选取有决策作用。

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

SVM训练代码:

clear all
close all
N1=440;
for i=1:N1
x1(1,i)=-1.7+1.1*randn(1);
% 440 Samples normal distribution
x1(2,i)= 1.6+0.9*randn(1);
%
x1(3,i)= 1;
end;
N2=400;
for i=1:N2
x2(1,i)= 1.3+1.0*randn(1);
% 400 Samples normal distriburion
x2(2,i)=-1.5+0.8*randn(1);
%
x2(3,i)= 1;
end;
plot(x1(1,:),x1(2,:),'ro',x2(1,:),x2(2,:),'g*');
hold on;
y1 = ones(440,1);
y2 = -ones(400,1);
12train =
[x1';x2'];%将两组数据合为一组
group = [y1;y2];
test =[x1';x2'];
svmModel =
svmtrain(train,group,'kernel_function','linear','showplot',true);%SVM 训练数据模型
classification=svmclassify(svmModel,test,'Showplot',true); %用测试数据测
试,画出决策面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值