SVM有监督学习LinearSVC, LinearSVR,SVC,SVR -- 024

本文介绍了支持向量机(SVM)的基本概念,包括分隔超平面、超平面、间隔和支持向量。接着详细解释了LinearSVC、SVC、LinearSVR和SVR的参数及其差异,并进行了比较。SVM通过找到最大间隔的超平面实现分类,LinearSVC与LinearSVR适用于线性可分数据,而SVC与SVR则可通过核函数处理非线性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微信公众号:python宝
关注可了解更多的python相关知识。若有问题或建议,请公众号留言;

内容目录

一、支持向量机 SVM 简介二、LinearSVC, LinearSVR,SVC,SVR参数解释与比较1、LinearSVC介绍2、SVC 介绍3、LinearSVR 介绍4、SVR 介绍三、LinearSVC, LinearSVR,SVC,SVR 比较

一、支持向量机 SVM 简介

  支持向量机(SVM:Support Vector Machine)是机器学习中常见的一种分类算法,是一种二分类模型,它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化,最终转化为一个凸二次规划问题来求解。支持向量机要做的就是要在这些可以选择的直线中选择一条最好的直线来作为分类的直线。

  • 当训练样本线性可分时,通过硬间隔最大化,学习一个线性可分支持向量机;

  • 当训练样本近似线性可分时,通过软间隔最大化,学习一个线性支持向量机;

  • 当训练样本线性不可分时,通过核技巧和软间隔最大化,学习一个非线性支持向量机。

  给定一些数据点,它们分别属于两个不同的类。我们现在要找到一个线性分类器把这些数据分成AB两类。最简单的办法当然是,画一条线,然后将它们分成两类。线的一侧,属于A类,另一侧,则属于B类。SVM算法可以让我们找到这样一个最佳的线(超平面),来划分数据。相比于KNN之类的算法,SVM算法只需要计算一次,得出最佳线(超平面)即可。面对测试数据,只需要判断数据点落在线的哪一侧,就可以知道该数据点所属分类了。比起KNN每次都需要计算一遍邻居点的分类,SVM算法显得简单无比。

  SVM的基本概念:

  • 分隔超平面:将数据集分割开来的直线叫做分隔超平面;

  • 超平面:如果数据集是N维的,那么就需要N-1维的某对象来对数据进行分割。该对象叫做超平面,也就是分类的决策边界;

  • 间隔:一个点到分割面的距离,称为点相对于分割面的距离。数据集中所有的点到分割面的最小间隔的2倍,称为分类器或数据集的间隔;

  • 最大间隔:SVM分类器是要找最大的数据集间隔,其实就是距离直线距离最短的点离直线的距离要最大;

  • 支持向量:坐落在数据边际的两边超平面上的点被称为支持向量,也就是对于点的犯错的容忍度越大越好,其实就是函数间隔越大越好,我们的拟合直线也将会由着些点确定。

二、LinearSVC, LinearSVR,SVC,SVR参数解释与比较

1、LinearSVC介绍
from sklearn.svm import LinearSVC, LinearSVR,SVC,SVR
LSVC = LinearSVC(
    penalty='l2',
    loss='squared_hinge',
    dual=True,
    tol=0.0001,
    C=1.0,
    multi_class='ovr',
    fit_intercept=True,
    intercept_scaling=1,
    class_weight=None,
    verbose=0,
    random_state=None,
    max_iter=1000)

# 原文链接:https://blog.youkuaiyun.com/u010986753/
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值