一、实验要求
在计算机上验证和测试莺尾花数据的支持向量机分类实验,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的支持向量机分类算法的理解
本文章只用来分享,其中部分有些参考其他大佬,如有侵权,必删!!!