支持向量机SVM

一、网络训练

%% 调用格式
model = svmtrain(train_label, train_data, ‘options’);
%% 举例
model = svmtrain(output_train, inputn, '-c 2 -g 1 -t 2');

1.train_data训练集属性矩阵

大小n*m,n表示样本数,m表示属性数目(维数),数据类型double;

2.train_label训练集标签

大小n*1,n表示样本数,数据类型double ;

3.options参数选项

(1)-s svm类型:设置SVM模型类型(默认0)

	0 -- C-SVC 	支持向量分类机,C_SVC采用的是0到正无穷。参数C为惩罚系数,C越大表示对错误分类的惩罚越大,适当的参数C对分类Accuracy很关键
	1 -- nu-SVC	nu-SVC采用的是[0,1]
	2 -- one-class SVM 	一类SVM:​单类别-支持向量机,不需要类标号,用于支持向量的密度估计和聚类
	3 -- epsilon-SVR	支持向量回归机
	4 -- nu-SVR 	支持向量回归机,nu-SVR能够自动计算参数

(2)-t 核函数类型:核函数设置类型(默认2)

	0 -- 线性核函数: u'*v
	1 -- 多项式核函数: (gamma*u'*v + coef0)^degree
	2 -- RBF核函数: exp(-gamma*|u-v|^2)
	3 -- sigmoid核函数: tanh(gamma*u'*v + coef0)
	4 -- 预定义核函数(指定核矩阵)

(3)-d degree:

核函数中的degree设置(针对多项式核函数)(默认3)

(4)-g gama:

核函数中的gamma函数设置(针对多项式/rbf/sigmoid核函数)(默认1/num_features,即属性数目的倒数)

(5)-r coef0:

核函数中的coef0设置(针对多项式/sigmoid核函数)(默认0)

(6)-c cost:

设置C-SVC,epsilon-SVR和nu-SVC的参数(损失函数)(默认1) 

(7)-n nu:

设置nu-SVC,one-class SVM和nu-SVR的参数(默认0.5) (8)-p

epsilon:

设置epsilon-SVR中损失函数epsilon的值(默认0.1)

(9)-m cachesize:

设置cache内存大小,以MB为单位(默认100)

(10)-e eps:设置允许的终止判据(默认0.001)

(11)-h shrinking:是否使用启发式,0或1(默认1)

(12)-wi weight:设置第几类的参数C为weight*C(C-SVC中的C)(默认1)

二、网络测试

%% 调用格式
[predict_label, accuracy/mse, dec_value] = svmpredict(test_label, test_data,model);

1.predict_label

预测的测试集的标签,数据类型double;

2.accuracy/mse

(1)是一个3*1的列向量
(2)第一个数代表分类准确率(分类问题使用)
(3)第二个代表mse(回归问题使用)
(4)第三个数表示平方相关系数(回归问题使用)

3.dec_value

(1)是决策值
(2)只是在多分类的时候才会返回这个值,二分类的时候没有
(3)它的矩阵大小是预测数据样本个数*类别数
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熊不胜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值