使用weka内置算法分析数据(图形界面操作)

来源:互联网 发布:emlog博客源码 编辑:程序博客网 时间:2024/05/29 18:19

原文

本文使用weka中内置的三种分类算法(naive bayes,SVM,Logistic Regression)根据收集到的鸢尾属植物的数据进行分类,通过精度和效率对三种算法进行比较。

1、鸢尾属植物的分类

数据中包含鸢尾属植物的四种属性。四种属性分别是萼片长度、萼片宽度、花瓣长度、花瓣宽度。数据中还包含鸢尾属植物的三种种类,分别是:Iris-setosa(山鸢尾)、Iris-Versicolous(杂色鸢尾)、Iris-Virginica(维吉尼亚鸢尾)。也就是说,每行数据有5个属性(花萼长度、花萼宽度、花瓣长度、花瓣宽度、所属种类)

通过weka图形界面的Experimenter模块添加三种算法,采用十折交叉验证来分析三种算法的结果。图1.1是三种算法分类的正确率对比。
2016-12-15 14-23-41屏幕截图.png-42.7kB

1.1

从图1.1的列表中可以看出,对于当前数据集的表现,三种算法在指定的显著性水平(significance level,这里设定是0.1)下可以认为正确率基本等同。
再比较三种算法正确分类个数的平均值,如图1.2所示,三种算法正确分类个数的平均值在显著性水平值为0.1的情况下可以认为是等同的。
2016-12-15 14-27-10屏幕截图.png-43.9kB
1.2

图1.3是CPU执行三种算法处理训练任务所花费的时间对比,可以看出,Logistic Regression和SVM在训练上所花费的总时间要多于Naive Bayes。也就是说,在处理这个数据集时,Naive Bayes的时间性能要比Logistic Regression和SVM要好
image_1b40mfjfs15nbjbcf2r1pj6emr50.png-76.8kB
1.3

综上,三种算法在处理本数据集的对比如表1.1所示

算法 精确度 效率 Naive Bayes 高 高 SVM 高 高 Logistic Regression 高 高

1.1

2、甲状腺功能减退类型分类

数据集中包含一系列属性,这些属性是甲状腺功能减退患者自身的一些特征,比如年龄、性别等。除此之外,还有一个甲状腺功能减退类型的属性作为标签。使用三种不同的算法进行分析。得到如图2.1的结果。
image_1b40la4td197g1tnki561nq51od12i.png-76.6kB

2.1

由图2.1可以看出,在显著性水平为0.1的情况下,SVM算法的表现要比Naive Bayes差,而Logistic Regression的表现要好于Naive Bayes。
图2.2是三种算法正确分类个数的平均值的情况。
image_1b40lkdkot9an1ejvvuasos92v.png-77.1kB
2.2

CPU执行三种算法训练模型所花费的时间如图2.2所示,测试所花费的时间如图2.3所示
image_1b40m4k7tk5m17ji17ct6br1g1m3p.png-76.8kB
2.3

image_1b40m6e0p70uqnp55q1oaptiu46.png-76.9kB
2.4

综上所述,三种算法在处理本数据集的表现对比如表2.1

算法 精确度 效率 Naive Bayes 中 高 SVM 低 低 Logistic Regression 高 中

2.1

原创粉丝点击