2
分离超平面方程是W.X + b = 0
。python scikits学习 - 分离超平面方程
对于support vector machine in scikit-learn,如何导出分离超平面? 'a
'和'w
'是什么意思?
分离超平面方程是W.X + b = 0
。python scikits学习 - 分离超平面方程
对于support vector machine in scikit-learn,如何导出分离超平面? 'a
'和'w
'是什么意思?
在scikit-learn coef_
属性中保存线性模型的分离超平面的向量。它的形状为(n_classes, n_features)
如果n_classes > 1
(多等级一对一)和(1, n_features)
二进制分类。
在这个玩具二进制分类示例中,n_features == 2
,因此w = coef_[0]
是与超平面正交的向量(超平面完全由它定义+截距)。
要在2D情况下绘制该超平面(2D平面的任何超平面都是一维线),我们希望找到f
,如y = f(x) = a.x + b
。在这种情况下,a
是线的斜率,可以通过a = -w[0]/w[1]
来计算。
为什么'a = -w [0]/w [1]'?为了找到b,为什么我们要计算' - (clf.intercept_ [0])/ w [1]'。不应该'b = clf.intercept_ [0]'? –
这只是将超平面的通用n维参数化切换到线y = ax + b的2D特定方程的一个简单问题:通用的'w_0 x + w_1 y + w_3 = 0'可以是重写'y = - (w_0/w_1)x +(w_3/w_1)' – ogrisel
s /切换到/切换到/ – ogrisel