线性支持向量机
算法介绍
根据最优间隔来划分两类数据,通过核函数将低维空间映射到高维空间,实现在特征空间中的分类。
使用场景
适用于小规模和中等规模的数据集,且特征数不宜过大,支持向量机在高维度、复杂分类/回归问题上表现优秀。
优势介绍
- 对于非线性决策边界问题,在高维空间中分类效果好,SVM表现良好;
- 多种核函数可选择;
- 泛化能力强。
- 劣势介绍
- 对处理噪声敏感;
- 计算复杂度高;
- 参数的选择比较困难。
参数介绍
仅支持通过可视化方式,配置读取该组件参数,参数详情如下表所示:
页签 | 参数 | 参数名称 | 是否必选 | 参数描述 | 默认值 |
---|---|---|---|---|---|
数据源 | 表名 | inputTable | 是 | 数据表 | 无 |
默认参数 | 选择特征标签列 | labelColName | 是 | 输入表中作为标签的列。 | 无 |
模型参数 | 惩罚参数 | C | 是 | C越大,相当于惩罚松弛变量,松弛变量接近0,即对误分类的惩罚增大,趋向于对训练集全分对的情况,准确率很高,泛化能力弱。 | 1 |
模型参数 | 核函数 | kernel | 是 | 包括linear、poly、rbf、sigmoid、precomputed等。 | linear |
调优参数 | 核函数参数 | gamma | 是 | 包括rbf,poly,sigmoid,auto。 | auto |
调优参数 | 核函数的常数项 | coef0 | 是 | 对于poly和sigmoid有用。 | 0 |
调优参数 | 停止训练误差值大小 | tol | 是 | 停止训练误差值大小。 | 0.001 |
调优参数 | 最大迭代次数 | max_iter | 是 | 最大迭代次数。 | 100 |
调优参数 | 数据洗牌时的种子值 | random_state | 是 | 数据洗牌时的种子值。 | 116 |
调优参数 | 核函数参数 | decision_function_shape | 是 | 包括ovo,ovr,None。 | None |
- 推荐参数值
- 核函数的选择:RBF(径向基函数), 根据实际情况选择不同的核函数特性;
- 松弛变量:松弛因子越小,分类器约苛刻;松弛因子越大,容错率就会增加;
- 惩罚系数:0.1-10, C值越小,则容忍度越高,可以更多地分类数据;C值越大,则容忍度越低,可以更多地将样本划分为正确的类别。
- 调参建议
- 减少特征量和样本量来调整模型的复杂度;
- 进行正则化处理以防止过拟合;
- 通过使用交叉验证选择最佳参数;
- 调整正则化参数C值和核函数类型。