总第108篇

本篇主要讲讲Sklearn中SVM,SVM主要有LinearSVC、NuSVC和SVC三种方法,我们将具体介绍这三种分类方法都有哪些参数值以及不同参数值的含义。

在开始看本篇前你可以看看这篇:支持向量机详解

LinearSVC

class sklearn.svm.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)

penalty:正则化参数,L1和L2两种参数可选,仅LinearSVC有。
loss:损失函数,有‘hinge’和‘squared_hinge’两种可选,前者又称L1损失,后者称为L2损失,默认是是’squared_hinge’,其中hinge是SVM的标准损失,squared_hinge是hinge的平方。
dual:是否转化为对偶问题求解,默认是True。
tol:残差收敛条件,默认是0.0001,与LR中的一致。
C:惩罚系数,用来控制损失函数的惩罚系数,类似于LR中的正则化系数。
multi_class:负责多分类问题中分类策略制定,有‘ovr’和‘crammer_singer’ 两种参数值可选,默认值是’ovr’,'ovr'的分类原则是将待分类中的某一类当作正类,其他全部归为负类,通过这样求取得到每个类别作为正类时的正确率,取正确率最高的那个类别为正类;‘crammer_singer’ 是直接针对目标函数设置多个参数值,最后进行优化,得到不同类别的参数值大小。
fit_intercept:是否计算截距,与LR模型中的意思一致。
class_weight:与其他模型中参数含义一样,也是用来处理不平衡样本数据的,可以直接以字典的形式指定不同类别的权重,也可以使用balanced参数值。
verbose:是否冗余,默认是False.
random_state:随机种子的大小。
max_iter:最大迭代次数,默认是1000。

对象

coef_:各特征的系数(重要性)。
intercept_:截距的大小(常数值)。

NuSVC

class sklearn.svm.NuSVC(nu=0.5, kernel='rbf', degree=3, gamma='auto', coef0=0.0, shrinking=True, probability=False, tol=0.001, cache_size=200, class_weight=None, verbose=False, max_iter=-1, decision_function_shape='ovr', random_state=None))

nu:训练误差部分的上限和支持向量部分的下限,取值在(0,1)之间,默认是0.5
kernel:核函数,核函数是用来将非线性问题转化为线性问题的一种方法,默认是“rbf”核函数,常用的核函数有以下几种:

表示 解释
linear 线性核函数
poly 多项式核函数
rbf 高斯核函数
sigmod sigmod核函数
precomputed 自定义核函数

关于不同核函数之间的区别,可以参考这篇文章:https://blog.csdn.net/batuwuhanpei/article/details/52354822

degree:当核函数是多项式核函数的时候,用来控制函数的最高次数。(多项式核函数是将低维的输入空间映射到高维的特征空间)
gamma:核函数系数,默认是“auto”,即特征维度的倒数。
coef0:核函数常数值(y=kx+b中的b值),只有‘poly’和‘sigmoid’核函数有,默认值是0。
max_iter:最大迭代次数,默认值是-1,即没有限制。
probability:是否使用概率估计,默认是False。
decision_function_shape:与'multi_class'参数含义类似。
cache_size:缓冲大小,用来限制计算量大小,默认是200M。

对象

support_:以数组的形式返回支持向量的索引。
support_vectors_:返回支持向量。
n_support_:每个类别支持向量的个数。
dual_coef_:支持向量系数。
coef_:每个特征系数(重要性),只有核函数是LinearSVC的时候可用。
intercept_:截距值(常数值)。

SVC

class sklearn.svm.SVC(C=1.0, kernel='rbf', degree=3, gamma='auto', coef0=0.0, shrinking=True, probability=False, tol=0.001, cache_size=200, class_weight=None, verbose=False, max_iter=-1, decision_function_shape='ovr', random_state=None)

C:惩罚系数。
SVC和NuSVC方法基本一致,唯一区别就是损失函数的度量方式不同(NuSVC中的nu参数和SVC中的C参数)。

方法

三种分类方法的方法基本一致,所以就一起来说啦。

decision_function(X):获取数据集X到分离超平面的距离。
fit(X, y):在数据集(X,y)上使用SVM模型。
get_params([deep]):获取模型的参数。
predict(X):预测数据值X的标签。
score(X,y):返回给定测试集和对应标签的平均准确率。

你还可以看:

Sklearn参数详解—LR模型

Sklearn参数详解--决策树

Sklearn参数详解—SVM相关推荐

  1. Sklearn参数详解—GBDT

    总第113篇 前言 这篇介绍Boosting的第二个模型GBDT,GBDT和Adaboost都是Boosting模型的一种,但是略有不同,主要有以下两点不同: GBDT使用的基模型是CART决策树,且 ...

  2. Sklearn参数详解—贝叶斯

    总第109篇 前言 在开始学习具体的贝叶斯参数前,你可以先看看:朴素贝叶斯详解 朴素贝叶斯一共有三种方法,分别是高斯朴素贝叶斯.多项式分布贝叶斯.伯努利朴素贝叶斯,在介绍不同方法的具体参数前,我们先看 ...

  3. SKlearn参数详解—随机森林

    总第114篇 前言 随机森林(RandomForest,简称RF)是集成学习bagging的一种代表模型,随机森林模型正如他表面意思,是由若干颗树随机组成一片森林,这里的树就是决策树. 在GBDT篇我 ...

  4. Sklearn参数详解—Adaboost

    总第112篇 前言 今天这篇讲讲集成学习,集成学习就是将多个弱学习器集合成一个强学习器,你可以理解成现在有好多道判断题(判断对错即01),如果让学霸去做这些题,可能没啥问题,几乎全部都能做对,但是现实 ...

  5. Lesson 8.3Lesson 8.4 ID3、C4.5决策树的建模流程CART回归树的建模流程与sklearn参数详解

    Lesson 8.3 ID3.C4.5决策树的建模流程 ID3和C4.5作为的经典决策树算法,尽管无法通过sklearn来进行建模,但其基本原理仍然值得讨论与学习.接下来我们详细介绍关于ID3和C4. ...

  6. Sklearn参数详解—聚类算法

    总第115篇 前言 聚类是一种非监督学习,是将一份给定数据集划分成k类,这一份数据集可能是某公司的一批用户,也可能是某媒体网站的一系列文章,如果是某公司的一批用户,那么k-means做的就是根据用户的 ...

  7. Sklearn参数详解—LR模型

    总第105篇 最近会开始一个新的系列,sklearn库中各模型的参数解释,本篇主要讲述最基础的LR模型. 模型参数详解 逻辑回归: sklearn.linear_model.LogisticRegre ...

  8. Sklearn参数详解--决策树

    总第106篇 前言 先来简短的回顾一下决策树原理: 决策树学习的算法通常是一个递归地(根据某一准则,信息增益或基尼系数)选择最优切分点/特征,并根据该特征对训练数据集进行分割,使得对各个子数据集有一个 ...

  9. Random Forest(sklearn参数详解)

    2016年08月17日 10:32:42 铭霏 阅读数:36874 版权声明:本文为博主原创文章,博主转载请附加原文链接并声明. https://blog.csdn.net/u012102306/ar ...

最新文章

  1. java怎么返回xml_java – 如何从Web服务返回XML
  2. struts2相对路径解释
  3. Ubuntu系统如何安装软件
  4. JUnit规则–引发异常时执行附加验证
  5. 一款轻量级的消息提示插件 —— toastr
  6. 任务app源码运营版本
  7. Java实战-山寨QQ
  8. antd pro中如何使用mock数据以及调用接口
  9. Pandas高级操作
  10. R语言作图之ggplot2初识(1)
  11. access mysql 升迁_随说秋色园从Access升迁到MSSQL过程
  12. 51单片机课程设计:基于TCS230/3200的颜色复制显示器
  13. 0x0000006B蓝屏问题解决方法
  14. html5中歌曲和歌词同步的方法
  15. Windows10系统上投影(仅电影屏幕,复制,拓展,仅第二屏幕)类型的作用
  16. NETDMIS5.0偏置构造平面2023
  17. 查词app android教程,英语查单词app哪个好_查单词app推荐_专门查单词的app
  18. 【FICO系列】SAP FICO模块-财务账期的打开和关闭
  19. linux logo程序设计,教你在线设计一个简单美观的LOGO
  20. Python爬虫 - 爬天爬地爬空气

热门文章

  1. springboot报错---@RunWith(SpringRunner.class)
  2. 去除Activity的标题栏以及全屏显示
  3. 20172317 2018-2019-1 《程序设计与数据结构》 第五周学习总结
  4. SpringCloud之RestTemplate,几种常见的请求方式
  5. ant-design-pro使用服务器数据接口代理配置
  6. 使用约束控件创建界面
  7. IE6-IE11兼容性问题列表及解决办法
  8. mybatis学习教程(二)初级的增、删、查、改
  9. 在OUTLOOK或OWA中查看邮件的SCL级别(转)
  10. UML模型中的图-用例图