美文网首页
数据分析05 - SVM

数据分析05 - SVM

作者: 数据社 | 来源:发表于2019-10-23 15:04 被阅读0次

    标签(空格分隔): 数据分析


    SVM 是有监督的学习模型,我们需要事先对数据打上分类标签,通过求解最大分类间隔来求解二分类问题。如果要求解多分类问题,可以将多个二分类器组合起来形成一个多分类器。

    如何创建一个 SVM 分类器呢?我们首先使用 SVC 的构造函数:model = svm.SVC(kernel=‘rbf’, C=1.0, gamma=‘auto’),这里有三个重要的参数 kernel、C 和 gamma。kernel 代表核函数的选择,它有四种选择,只不过默认是 rbf,即高斯核函数。

    1. linear:线性核函数
    2. poly:多项式核函数
    3. rbf:高斯核函数(默认)
    4. sigmoid:sigmoid 核函数

    线性核函数,是在数据线性可分的情况下使用的,运算速度快,效果好。不足在于它不能处理线性不可分的数据。
    多项式核函数可以将数据从低维空间映射到高维空间,但参数比较多,计算量大。
    高斯核函数同样可以将样本映射到高维空间,但相比于多项式核函数来说所需的参数比较少,通常性能不错,所以是默认使用的核函数。
    了解深度学习的同学应该知道 sigmoid 经常用在神经网络的映射中。因此当选用 sigmoid 核函数时,SVM 实现的是多层神经网络。

    参数 C 代表目标函数的惩罚系数,惩罚系数指的是分错样本时的惩罚程度,默认情况下为 1.0。当 C 越大的时候,分类器的准确性越高,但同样容错率会越低,泛化能力会变差。相反,C 越小,泛化能力越强,但是准确性会降低。
    参数 gamma 代表核函数的系数,默认为样本特征数的倒数,即 gamma = 1 / n_features。

    相关文章

      网友评论

          本文标题:数据分析05 - SVM

          本文链接:https://www.haomeiwen.com/subject/qgrkvctx.html