如何在Matlab中绘制SVM中的分类器

时间:2014-03-15 02:30:00

标签: matlab machine-learning svm

假设我有w和b,那么如何在Matlab中绘制分类器?假设节点在二维空间中,也就是说,x =(x1,x2)。

我尝试了几种方法,但是不能绘制分类器y = w ^ T x + b?有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

在这种情况下,w也是一个二维矢量。

假设您有以下数据:

datawX = [1,1,3,2,0,0,0]
datawY = [2,0,1,4,2,1,0]

databX = [1,0,2,5,4,4,2]
databY = [1,0,2,2,4,4,4]

然后使用Support-vector机器方法计算分类器。 假设结果为w=[3,1]b=1.5,在这种情况下,向量的方向垂直于w,因此d=[-w(2),w(1)]。所以你可以定义两个点p1和p2。

执行svm后

p1=-b*w
p2=d-b*w

w=[3,1]
b=1.5

d=[-w(2),w(1)]
p1=-b*w
p2=d-b*w
scatter(dataw, 'r')
hold on
scatter(datab, 'g')
hold on
plot([p1;p2],'b');