基于MATLAB机器学习工具箱的SVM支持向量机实现方法——fitcsvm

本文介绍了MATLAB中机器学习工具箱的fitcsvm函数,对比了旧版svmtrain,详细讲解了fitcsvm的基本语法、参数设置,包括BoxConstraint、KernelFunction、KernelScale等,并提供了使用示例,强调了参数优化的重要性。
摘要由CSDN通过智能技术生成

MATLAB中的支持向量机SVM

最近和组内的师兄聊到SVM的实现,发现身边很多朋友还在用libsvm和老版本matlab中自带的svmtrain函数(该函数在新版本中已被移除),因此写篇blog向大家介绍一下新版MATLAB中机器学习工具箱里的fitcsvm函数。

fitcsvm和svmtrain的个人使用感想

旧版matlab中的svmtrain函数使用体验确实不好,所以笔者以前也是用libsvm工具包中的svmtrain函数。去年发现新版matlab的机器学习工具箱内的fitcsvm函数使用体验还不错,所以转用了这个新工具。笔者所用的matlab版本为2018a及以上。

1 fitcsvm函数简介

1.1 基本语法
1.1.1 输入为double类型矩阵
Mdl = fitcsvm(X,Y);

Mdl—训练好的分类器
X—训练集数据特征矩阵
Y—训练集数据标签

以上为最常见的fitcsvm使用方法,它的输入变量可以是double类型的矩阵,也可以是table类型的表格

例如,我有一个包含109个样本的训练集,每个样本具有150个特征
在这里插入图片描述
训练集保存在一个名为data的double类型矩阵中,第151列是样本标签

我们可以直接使用这个double类型矩阵进行SVM训练

mdl = fitcsvm(data(:,1:150),data(:,151));
1.1.2 输入为table类型的表格
Mdl = fitcsvm(Tbl,ResponseVarName)

Tbl—包含了训练集样本特征和标签的表格,是一个table类型的变量
ResponseVarName—对应Tbl中数据标签的变量名
也可以用函数array2table将这个double类型的矩阵转换为table类型的表格再进行SVM训练

data_tbl = array2table(data
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值