Weka - 聚类


聚类算法在整个数据集中查找相似实例的组。WEKA支持多种聚类算法,例如EM、FilteredClusterer、HierarchicalClusterer、SimpleKMeans等。您应该完全理解这些算法才能充分利用 WEKA 功能。

与分类的情况一样,WEKA 允许您以图形方式可视化检测到的簇。为了演示集群,我们将使用提供的 iris 数据库。该数据集包含三类,每类 50 个实例。每个类别指的是一种鸢尾植物。

加载数据中

在 WEKA 资源管理器中选择“预处理”选项卡。单击“打开文件...”选项,然后在文件选择对话框中选择iris.arff文件。当您加载数据时,屏幕如下所示 -

屏幕外观

您可以观察到有 150 个实例和 5 个属性。属性名称列为sepallengthsepalwidthpetallengthpetalwidthclass。前四个属性是数字类型,而类是具有 3 个不同值的名义类型。检查每个属性以了解数据库的功能。我们不会对这些数据进行任何预处理,而是直接进行模型构建。

聚类

单击“聚类”选项卡将聚类算法应用于加载的数据。单击选择按钮。您将看到以下屏幕 -

集群选项卡

现在,选择EM作为聚类算法。在“集群”模式子窗口中,选择“类到集群评估”选项,如下面的屏幕截图所示 -

聚类算法

单击“开始”按钮处理数据。过了一会儿,结果就会显示在屏幕上。

接下来,让我们研究一下结果。

检查输出

数据处理的输出显示在下面的屏幕中 -

检查输出

从输出屏幕中,您可以观察到 -

  • 数据库中检测到 5 个集群实例。

  • 0代表 setosa,簇 1代表 virginica,簇 2代表 versicolor,而最后两个簇没有任何与之关联的类。

如果向上滚动输出窗口,您还会看到一些统计数据,其中给出了各个检测到的集群中每个属性的平均值和标准差。这显示在下面的屏幕截图中 -

检测到的簇

接下来,我们将看看集群的视觉表示。

可视化集群

要可视化集群,请右键单击“结果”列表中的EM结果。您将看到以下选项 -

聚类结果列表

选择可视化聚类分配。您将看到以下输出 -

集群分配

与分类的情况一样,您会注意到正确识别的实例和错误识别的实例之间的区别。您可以通过更改 X 轴和 Y 轴来分析结果。您可以像分类一样使用抖动来找出正确识别的实例的集中度。可视化图中的操作与您在分类情况中学习的操作类似。

应用分层聚类器

为了展示 WEKA 的强大功能,现在让我们研究另一种聚类算法的应用。在 WEKA 资源管理器中,选择HierarchicalClusterer作为您的 ML 算法,如下面的屏幕截图所示 -

层次聚类器

“集群模式”选择为“要集群评估的类”,然后单击“开始”按钮。您将看到以下输出 -

聚类评价

请注意,在结果列表中,列出了两个结果:第一个是 EM 结果,第二个是当前的分层结果。同样,您可以将多种机器学习算法应用于同一数据集并快速比较它们的结果。

如果您检查该算法生成的树,您将看到以下输出 -

检查算法

在下一章中,您将学习关联类型的 ML 算法。