首页 > 解决方案 > sklearn LinearSVC 是 SVM 还是 SVC?

问题描述

我正在观看YouTube 视频以了解支持向量机 (SVM)。在视频中,他提到 SVM 发现支持向量分类器 (SVC) 将数据划分为分类过程中的一个步骤。

我使用了 scikit-learn 中的LinearSVC进行分类,但我很难理解 scikit-learn 中 LinearSVC 的实现是 SVM 还是 SVC,或者视频中的描述是否不正确。我在不同的网站上发现了相互矛盾的描述。

  1. 这个问题中接受的答案表明 LinearSVC 不是 SVM,但要么它没有说它是 SVC。
  2. 在 LinearSVC 的描述页面上,它说“线性支持向量分类”,但在此页面的“另见”下,它说 LinearSVC 是“使用 liblinear 实现的分类的可扩展线性支持向量机”。

据我了解,LinearSVC 和 SVC(kernel='linear') 并不相同,但这不是问题所在。

谢谢!

标签: machine-learningscikit-learnsvm

解决方案


就机器学习概念而言,LinearSVC两者都是因为:

  • SVM是一种模型/算法,用于找到分割样本空间的平面
  • 这可以应用于分类 ( SVC) 和回归 ( SVR) - 两者SVC都是sSVR的种类SVM

因此,anSVC将是一种SVM并且LinearSVC看起来像一种特定类型的 SVC,尽管没有SVCscikit-learn.

如果您的意思是sklearn源代码 -LinearSVCsvm模块中......所以它是一个 SVM。它不会扩展SVCorBaseSVC类,但对我来说这是一个实现问题/细节,我宁愿将其视为 SVC。


推荐阅读