Weka - 分类器

许多机器学习应用都与分类有关。例如,您可能想将肿瘤分类为恶性或良性。您可能想根据天气条件决定是否玩户外游戏。通常,此决定取决于天气的几个特征/条件。因此,您可能更喜欢使用树分类器来决定是否玩。

在本章中,我们将学习如何根据天气数据构建这样的树分类器来决定游戏条件。

设置测试数据

我们将使用上一课中预处理的天气数据文件。使用 Preprocess 选项卡下的 Open file ... 选项打开保存的文件,单击 Classify 选项卡,您将看到以下屏幕 −

Classify Tab

在了解可用的分类器之前,让我们先检查一下测试选项。您将注意到下面列出的四个测试选项 −

  • 训练集
  • 提供的测试集
  • 交叉验证
  • 百分比分割

除非您有自己的训练集或客户提供的测试集,否则您将使用交叉验证或百分比分割选项。在交叉验证下,您可以设置在每次训练迭代期间分割和使用整个数据的折叠数。在百分比分割中,您将使用设置的分割百分比在训练和测试之间分割数据。

现在,保留输出类的默认播放选项 −

播放选项

接下来,您将选择分类器。

选择分类器

单击"选择"按钮并选择以下分类器 −

weka→classifiers>trees>J48

这在下面的屏幕截图中显示 −

Weka Trees

单击开始按钮以启动分类过程。过了一会儿,分类结果就会出现在您的屏幕上,如下所示 −

Start Button

让我们检查一下屏幕右侧显示的输出。

它显示树的大小为 6。您很快就会看到树的视觉表示。在摘要中,它显示正确分类的实例为 2,错误分类的实例为 3,它还显示相对绝对误差为 110%。它还显示了混淆矩阵。深入分析这些结果超出了本教程的范围。但是,您可以从这些结果中轻松看出分类不可接受,您需要更多数据进行分析,以优化特征选择,重建模型等等,直到您对模型的准确性感到满意。无论如何,这就是 WEKA 的全部内容。它允许您快速测试您的想法。

可视化结果

要查看结果的可视化表示,请右键单击结果列表框中的结果。屏幕上会弹出几个选项,如下所示 −

结果列表

选择可视化树以获得遍历树的可视化表示,如下面的屏幕截图所示 −

可视化树

选择可视化分类器错误将绘制分类结果,如下所示 −

分类器错误

十字表示正确分类的实例,而正方形表示错误分类的实例。在图的左下角,您会看到一个 十字,表示如果 outlook 是晴天,则 play 游戏。因此,这是一个正确分类的实例。要定位实例,您可以通过滑动 jitter 滑动条在其中引入一些抖动。

当前图是 outlookplay。这些由屏幕顶部的两个下拉列表框指示。

Outlook Versus Play

现在,在每个框中尝试不同的选择,并注意 X 轴和 Y 轴如何变化。使用图右侧的水平条也可以实现相同的效果。每个条代表一个属性。左键单击条带可将所选属性设置在 X 轴上,而右键单击可将其设置在 Y 轴上。

还提供了其他几个图表供您进行更深入的分析。明智地使用它们来微调您的模型。下面显示了一个这样的成本/收益分析图,供您快速参考。

成本效益分析

解释这些图表中的分析超出了本教程的范围。鼓励读者复习一下对机器学习算法分析的知识。

在下一章中,我们将学习下一组机器学习算法,即聚类。