支持向量机(sklearn.svm.svc)中的参数

sklearn.svm.svc( C=1.0, kernel='rbf', degree=3, gamma='scale', 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', 
break_ties=False, random_state=None)

参数说明:

1.C: 正则化系数,float类型,默认值为1.0。

2.kernel:核函数,{‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’},默认值为’rbf’。

 (1)linear: 线性核函数; 优点: 简单、运算效率高;缺点: 对线性不可分的数据集没有很好的效果
(2) ploy: 多项式核函数; 优点: 可以拟合出复杂的分割超平面;缺点: 有三个参数,调参困难,且当n过大时,模型拟合时间会很长 ;
(3) rbf: 径向基函数 通常定义为样本到数据中心之间径向距离(通常是欧氏距离)的单调函数(由于距离是径向同性的); 相较于多项式核,具有参数少的优点
(4) sigmoid:Logistic函数 也称为S型生长曲线,优点:平滑
(5) precomputed:预训练好的核函数对应的Gram 矩阵 优点: 不用再次拟合核函数对应的Gram 矩阵,直接进行映射。

3.degree:多项式核函数的维度,int类型,默认值为3。只有在使用多项式核函数的时候才有用。

4.gamma:‘rbf’, ‘poly’ 和‘sigmoid’ 核函数的系数, {‘auto’, ‘scale’},默认值为‘scale’。

5.coef0:常数项, float类型,默认值为0。只作用于poly 和 sigmoid 核函数。

6.shrinking:启用启发式收缩,bool类型,默认为True。当迭代次数过大时, 启用启发式收缩可以缩短训练时间,如果对停止迭代容忍度较高时(tol参数来反映),不用启发式收缩可能会更快一些。

7.probability:启用概率估计, bool类型,默认为False。在拟合(fit)模型之前启用,启用之后会减缓拟合速度,但是拟合之后,模型能够输出各个类别对应的概率。

8.tol:停止拟合容忍度,float类型,默认值为1e-3 即为0.001。定义模型停止拟合的误差值。

9.cache_size:核缓存大小,float类型,默认值为200(MB)。数据集维度高,数量大,当所需内存超出了,可以通过调整cache_size 的大小来加快模型拟合。

10.class_weight:类别的权重, {dict} or ‘balanced’,默认值为None。

11.verbose:启用详细输出, bool类型,默认值:False。

12.max_iter:最大迭代次数,int类型,默认值: -1,不限制迭代次数。

13.decision_function_shape:多分类策略,字典类型 ,默认值: ‘ovr’。进行二分类任务时,这一参数被自动忽略。

14.break_ties:启用打破平局, bool类型,默认值为False。

15.random_state:随机数,int类型,默认值:None。控制伪随机数生成,保证多次训练时,打乱的数据是一致的。

你可能感兴趣的:(机器学习,sklearn,支持向量机,python,人工智能)