在Scikit-learn的SVM中使用3个类别时,决策函数的输出是什么意思

我在编写以下代码块时参考了以下博客文章 https://prateekvjoshi.com/2015/12/15/how-to-compute-confidence-measure-for-svm-classifiers/,并得到了以下结果。我的目的是找出在Scikit-learn的SVM中的SVC中一个点到3个类别的距离,但我对描述的含义感到困惑,有没有解决方案。

import numpy as npfrom sklearn.svm import SVCx = np.array([[1,2],[2,3],[3,4],[1,4],[1,5],[2,4],[2,6]])y = np.array([0,1,-1,-1,1,1,0])classifier = SVC(kernel='linear')classifier.fit(x,y)classifier.decision_function([2,1])

最后的调用给出了大小为3的数组的以下输出

array([[ -8.88178420e-16,  -1.40000000e+00,  -1.00000000e+00]])

这个数组的含义是什么,我们如何使用这个数组来找出特定数据点与三个类别(-1,1,0)中的哪一个相关联。


回答:

这是点 [2,1] 到SVM分类器的分离超平面的距离。因此,第一个值是 [2,1] 到分离第一个类别的超平面的距离,以此类推。你可以在这里查看函数的实现 这里,并在这里阅读文档 这里 以获取更多信息。

编辑:你也可以查看 这个例子

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注