【机器学习】svm

参考

sklearn中SVC中的参数说明与常用函数_sklearn svc参数-CSDN博客https://blog.csdn.net/transformed/article/details/90437821

参考PYthon 教你怎么选择SVM的核函数kernel及案例分析_clf=svm.svc(kernel=)-CSDN博客https://blog.csdn.net/c1z2w3456789/article/details/105247565

四种核函数

四种核函数在四种不同分布数据上的表现

博主总结:

linear、poly:

非线性数据集:linear和poly核函数在上表现会浮动,如果数据相对线性可分,则表现不错,如果是像环形数据那样彻底不可分的,则表现糟糕。

线性数据集:linear和poly核函数即便有扰动项也可以表现不错,可见poly核函数虽然也可以处理非线性情况,但更偏向于线性的功能。

sigmoid:

Sigmoid核函数就比较尴尬了,它在非线性数据上强于两个线性核函数,但效果明显不如rbf,它在线性数据上完全比不上线性的核函数们,对扰动项的抵抗也比较弱,所以它功能比较弱小,很少被用到。

rbf:

rbf核函数基本在任何数据集上都表现不错,属于比较万能的核函数。

python中svm使用

python 复制代码
clf = svm.SVC(kernel='rbf', class_weight='balanced', 
        C=5, gamma=0.3, max_iter=3000, tol=0.001, probability=True)

**C:**根据官方文档,这是一个软间隔分类器,对于在边界内的点有惩罚系数C,C的取值在0-1之间,默认值为1.0。C越大代表这个分类器对在边界内的噪声点的容忍度越小,分类准确率高,但是容易过拟合,泛化能力差。所以一般情况下,应该适当减小C,对在边界范围内的噪声有一定容忍。

**class_weight:**默认为None,给每个类别分别设置不同的惩罚参数C,如果没有给,则会给所有类别都给C=1,即前面指出的参数C.

**tol:**停止训练的误差精度,默认值为0.001

**probability:**默认为False,决定最后是否按概率输出每种可能的概率,但需注意最后的预测函数应改为clf.predict_proba。

**max_iter:**默认为-1,最大迭代次数,如果为-1,表示不限制

相关推荐
KG_LLM图谱增强大模型6 分钟前
突破AI助手成本壁垒:知识图谱思维架构让小模型实现大性能
人工智能·架构·大模型·知识图谱·graphrag
喜欢吃豆7 分钟前
[特殊字符] 深入解构 Assistants API:从“黑盒”抽象到“显式”控制的架构演进与终极指南
网络·人工智能·自然语言处理·架构·大模型
深圳南柯电子15 分钟前
深圳南柯电子|医疗电子EMC整改:助医疗器械安全稳定的关键环节
网络·人工智能·安全·互联网·实验室·emc
张较瘦_15 分钟前
[论文阅读] AI + 职业教育 | 从框架到实践:职业院校教师人工智能素养提升的完整方案
论文阅读·人工智能
得贤招聘官1 小时前
AI 重塑招聘格局,传统招聘模式面临转型挑战
人工智能
九章云极AladdinEdu1 小时前
量子机器学习框架设计:基于Cirq的变分量子算法实现
人工智能·量子机器学习·cirq框架·变分量子算法·量子卷积·混合神经网络·参数化量子电路
平和男人杨争争1 小时前
SNN(TTFS)论文阅读——LC-TTFS
论文阅读·人工智能·神经网络·机器学习
我要学脑机1 小时前
prompt[ai开发项目指示]
人工智能·prompt
天天进步20151 小时前
Python全栈项目:结合Puppeteer和AI模型操作浏览器
开发语言·人工智能·python
星座5282 小时前
AI+CMIP6数据分析与可视化、降尺度技术与气候变化的区域影响、极端气候分析
人工智能·ai·气候·水文·cmip6