【调包侠福利】SKlearn中的svm超参数总结

时间:2022-06-19
本文章向大家介绍【调包侠福利】SKlearn中的svm超参数总结,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

SKlearn中好多机器学习模型已经做好了,使用的时候直接调用就可以,俗称“调包侠”,我觉得挺有意思,这样大大降低了机器学习的门槛,最近几天一直在使用svm训练模型,其中数据样本不均衡以及打分一直上不去,特征工程也调了好久,现在开始对svm的一些参数进行调试,看看模型会不会变得更好。

SVC参数解释 
(1)C: 目标函数的惩罚系数C,用来平衡分类间隔margin和错分样本的,default C = 1.0; 
(2)kernel:参数选择有RBF, Linear, Poly, Sigmoid, 默认的是"RBF"; 
(3)degree:if you choose 'Poly' in param 2, this is effective, degree决定了多项式的最高次幂; 
(4)gamma:核函数的系数('Poly', 'RBF' and 'Sigmoid'), 默认是gamma = 1 / n_features; 
(5)coef0:核函数中的独立项,'RBF' and 'Poly'有效; 
(6)probablity: 可能性估计是否使用(true or false); 
(7)shrinking:是否进行启发式; 
(8)tol(default = 1e - 3): svm结束标准的精度; 
(9)cache_size: 制定训练所需要的内存(以MB为单位); 
(10)class_weight: 每个类所占据的权重,不同的类设置不同的惩罚参数C, 缺省的话自适应; 
(11)verbose: 跟多线程有关,不大明白啥意思具体; 
(12)max_iter: 最大迭代次数,default = 1, if max_iter = -1, no limited; 
(13)decision_function_shape : ‘ovo’ 一对一, ‘ovr’ 多对多  or None 无, default=None 
(14)random_state :用于概率估计的数据重排时的伪随机数生成器的种子。 

提示:7,8,9一般不考虑。

明白了这些可以选择调整的超参数,后续我们可以尝试在特征工程和超参数调整使得模型训练的更好。