怎么使用 libsvm 模型 预测

怎么使用 libsvm 模型 预测,第1张

其实使用libsvm进行分类很简单,只需要有属性矩阵和标签,然后就可以建立分类模型(model),然后利用得到的这个model进行分类预测了。

一、属性矩阵和标签:

一个班级里面有两个男生(男生1、男生2),两个弊散掘女生(女生1、女生2),其中

男生1 身高:176cm 体重:70kg;

男生2 身高:180cm 体重:80kg;

女生1 身高:161cm 体重:45kg;

女生2 身高:163cm 体重:47kg;

如果将男生定义为1,女生定义为-1,并将上面的数据放入矩阵data中,即

data = [176 70

180 80

161 45

163 47]

复制代码

在label中存入男女生类别标掘歼签(1、-1),即

label = [11-1-1]

复制代码

这样上面的data矩阵就是一个属性矩阵,行数4代表有4个样本,列数2表示属性有两个,label就是标签(1、-1表示有两个类别:男生、女生)。

二、有了上面的属性矩阵data,和标签label就可以利用libsvm建立分类模型了,简要代码如下:

model = svmtrain(label,data)

复制代码

有了model就可以做分类预测,比如此时该班级又转来一个新学生,其

身高190cm,体重租核85kg

想通过上面这些信息就给出其标签(想知道其是男【1】还是女【-1】)

比如 令 testdata = [190 85]由于其标签不知道,假设其标签为-1(也可以假设为1)

testdatalabel = -1

然后利用libsvm来预测这个新来的学生是男生还是女生,代码如下:

[predictlabel,accuracy] = svmpredict(testdatalabel,testdata,model)

复制代码

下面整体运行一下上面这段的背景数据和代码:

data = [176 70

180 80

161 45

163 47]

label = [11-1-1]

model = svmtrain(label,data)

testdata = [190 85]

testdatalabel = -1

[predictlabel,accuracy] = svmpredict(testdatalabel,testdata,model)

predictlabel

复制代码

运行结果如下:

Accuracy = 0% (0/1) (classification)

predictlabel =

您饥蚂好,很高兴为您解答。

a(1)=0

for i=2:220

  a(i)=0.6*a(i-1)+randn

end

train_t = 1:200

train = a(train_t)

train_t = train_t'

train = train'

test_t = 1:203

test=a(test_t)

test_t = test_t'

test = test'

[bestmse,bestc,bestg] = SVMcgForRegress(train,train_t,-3,11,-7,1,3,0.5,0.5,0.1)

cmd = ['-c ',num2str(bestc),' -g ',num2str(bestg),'凯芹 -p 0.01 -s 3']

model = svmtrain(train,train_t,cmd)

[trainpre,trainmse] = svmpredict(train,train_t,model)

figure

hold on

plot(train)

plot(trainpre,'r')

title('原来的训练数据的拟合1-200')

legend('原来的训练数据','训练数据预测拟合数据')

hold off

[testpre,testmse] = svmpredict(test,test_t,model)

figure

hold on

plot(test)

plot(testpre,'r')

title('测试数据的预测1-203')

legend('测试数据','测试数据预测拟合数据')

hold off

如若烂孙埋满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

                                                                                                                            ~ O(∩_∩)O~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12479560.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存