支持向量机分类实验

一、实验要求
在计算机上验证和测试莺尾花数据的支持向量机分类实验,sklearn的支持向量机分类算法。
二、实验目的
1、掌握支持向量机的原理
2、能够理解支持向量机分类算法;
3、掌握sklearn的支持向量机分类算法;
三、实验内容
实验步骤
1.请参考LinearSVC.pdf文档,将莺尾花的数据替换为make_blobs自动生成两个测试数据集(一个是两个类别数据完全分离,另一个是两个类别数据有很少部分的交叉),对比KNN,贝叶斯,决策树,随机森林还有LinearSVC的分界边界线的区别。

数据集:区分度较大与稍有交叉的数据集

KNN:较好区分不同类别

贝叶斯:较为平滑

决策树:较为平滑

随机森林:个体影响比决策树大

Svc:区分不明显

2.请详细测试LinearSVC中的C超参数对分类分界边界线的影响。
C=0.01:
在这里插入图片描述
C=30:
在这里插入图片描述
C=1000:
在这里插入图片描述
结论:在这里插入图片描述
3.请同时对比,LinearSVC和SVC,三者在莺尾花数据集,make_blobs生成的数据集,还有makemoons生成的数据集,还有makecircles生成的数据集,对比差异。

数据集显示:

莺尾花数据、 make_blobs生成的数据、 makemoons生成的数据、makecircles生成的数据(从左始):

三、实验总结
1、当数据分类界限明显且能用直线分割时,可以用LinearSVC;当数据类别分界线呈包围或者半包围状态时,用SVC较好。
2、加强了对sklearn的支持向量机分类算法的理解

本文章只用来分享,其中部分有些参考其他大佬,如有侵权,必删!!!

猜你喜欢

转载自blog.csdn.net/qq_47122804/article/details/121074166