AI(002) - 笔记 - 第二周 - sklearn中SVM实现

这篇博客详细介绍了Scikit Learn中的SVM模块,包括基于liblinear和libsvm的C-SVM,以及非监督的异常值检测。重点讲解了SVC类,并列举了重要的参数,如核函数(kernel):线性、多项式、径向基函数(RBF)和sigmoid,特别指出在使用RBF核时选择C和gamma的重要性。

笔记:Scikit Learn中SVM实现


1、sklearn.svm模块

  • LinearSVC:基于liblinear的SVM

  • SVC:基于libsvm的C-SVM

  • NuSVC:基于libsvm的C-SVM

  • OneClassSVM:非监督的异常值检测

2、sklearn.svm提供的SVC

官方文档中的定义的类:

http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html

# 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
    # )
from sklearn.svm import SVC
  • 其中比较重要的参数:

    ParametersTypeDefaultDescription
    Cfloat1.0C-SVC的惩罚参数。C越大,惩罚越大,趋向训练集全分对
    kernelstring‘rbf’内核算法, 必须是’linear’,’poly’,’rbf’,’sigmoid’,’precomputed’或可调用的算法。
    probabilitybooleanFalse是否启用概率估计。
    decision_function_shapestring‘ovr’应用于多分类任务,只能选择’ovo’或’ovr’
  • 与模型复杂度相关的参数:

    ParametersTypeDefaultDescription
    Cfloat1.0C-SVC的惩罚参数。C越小,决策便捷越平滑,C越大,惩罚越大,趋向训练集全分对
    kernelstring‘rbf’内核算法, 必须是’linear’,’poly’,’rbf’,’sigmoid’,’precomputed’或可调用的算法。
    degreeint3kernel为’poly’时的度
    gammafloat‘auto’核’poly’,’rbf’,’sigmoid’的核系数 γ γ 。如果为默认’auto’使用“特征数分之一”代替。
    coef0float0.0核函数的独立指标 θ θ ,在’poly’与’sigmoid’中有意义
  • kernel(核函数):

    • ‘linear’(线性核): k(x,x)=xTx k ( x , x ′ ) = x T x ′

    • ‘poly’(多项式核): k(x,x)=(γxTx+θ)degree k ( x , x ′ ) = ( γ x T x ′ + θ ) d e g r e e

    • ‘rbf’(径向基函数): k(x,x)=exp(γ(xx)2) k ( x , x ′ ) = exp ⁡ ( − γ ( x − x ′ ) 2 )

    • ‘sigmoid’(sigmoid函数): k(x,x)=tanh(γxTx+θ) k ( x , x ′ ) = t a n h ( γ x T x ′ + θ )

    • 自定义核函数

在kernel选择为’rbf’时,基于性能考虑,建议使用sklearn.grid_search.GridSearchCV选择C和gamma的合适值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值