SVM与Bayes的区别

文章内索引
[显示]

原理

Bayes

设A、B是两个事件,且P(A)>0,称

为在事件A发生的条件下事件B发生的条件概率

乘法公式 P(XYZ)=P(Z|XY)P(Y|X)P(X)

全概率公式 P(X)=P(X|Y1)+ P(X|Y2)+…+ P(X|Yn)

SVM与Bayes的区别|SVM-翰林小院 第1张

SVM

其实使用libsvm进行分类很简单,只需要有属性矩阵和标签,然后就可以建立分类模型(model),然后利用得到的这个model进行分类预测了。那神马是属性矩阵?神马又是标签呢?我举一个直白的不能在直白的例子:说一个班级里面有两个男生(男生1、男生2),两个女生(女生1、女生2),其中

男生1 身高:176cm 体重:70kg;男生2 身高:180cm 体重:80kg;女生1 身高:161cm 体重:45kg;女生2 身高:163cm 体重:47kg;

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

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

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

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

有了model我们就可以做分类预测,比如此时该班级又转来一个新学生,其身高190cm,体重85kg我们想通过上面这些信息就给出其标签(想知道其是男【1】还是女【-1】)比如 令 testdata = [190 85]; 由于其标签我们不知道,我们假设其标签为-1(也可以假设为1)

差异

SVM与Bayes的区别|SVM-翰林小院 第2张

svm最终结果就是计算出来属于某一个分类,而算不出来属于某一个分类的可信度也就是概率是多少。

而贝叶斯可以算出来属于某一个分类的概率是多少。

流程

SVM

SVM与Bayes的区别|SVM-翰林小院 第3张

SVM与Bayes的区别|SVM-翰林小院 第4张

Bayes

SVM与Bayes的区别|SVM-翰林小院 第5张

分词,训练集样本以及去停用词库会对结果产生影响


©版权声明:本文为【翰林小院】(huhanlin.com)原创文章,转载时请注明出处!

发表评论

电子邮件地址不会被公开。