Weka - 特征选择

当数据库包含大量属性时,将有几个属性在您当前寻求的分析中并不重要。因此,从数据集中删除不需要的属性成为开发良好机器学习模型的重要任务。

您可以直观地检查整个数据集并确定不相关的属性。对于包含大量属性的数据库(例如您在上一课中看到的超市案例),这可能是一项艰巨的任务。幸运的是,WEKA 提供了一个用于特征选择的自动化工具。

本章在包含大量属性的数据库上演示了此功能。

加载数据

在 WEKA explorer 的 Preprocess 标记中,选择 labor.arff 文件以加载到系统中。加载数据后,您将看到以下屏幕 −

正在加载数据

请注意,有 17 个属性。我们的任务是通过消除一些与我们的分析无关的属性来创建精简的数据集。

特征提取

单击选择属性选项卡。您将看到以下屏幕 −

选择属性

属性评估器搜索方法下,您将找到几个选项。我们在这里只使用默认设置。在属性选择模式中,使用完整训练集选项。

单击"开始"按钮处理数据集。您将看到以下输出 −

开始数据集

在结果窗口的底部,您将获得选定属性的列表。要获得视觉表示,请右键单击结果列表中的结果。

输出显示在以下屏幕截图中 −

屏幕截图输出

单击任意方块将为您提供数据图以供进一步分析。典型的数据图如下所示 −

数据图

这与我们在前面章节中看到的类似。尝试使用不同的选项来分析结果。

下一步是什么?

到目前为止,您已经看到了 WEKA 在快速开发机器学习模型方面的强大功能。我们使用一种称为 Explorer 的图形工具来开发这些模型。 WEKA 还提供了一个命令行界面,它为您提供了比资源管理器中更多的功能。

单击 GUI Chooser 应用程序中的 Simple CLI 按钮可启动此命令行界面,如下面的屏幕截图所示 −

Gui Chooser

在底部的输入框中输入命令。您将能够执行迄今为止在资源管理器中所做的所有操作以及更多操作。有关更多详细信息,请参阅 WEKA 文档 (https://www.cs.waikato.ac.nz/ml/weka/documentation.html)。

最后,WEKA 是用 Java 开发的,并为其 API 提供了一个接口。因此,如果您是 Java 开发人员,并且热衷于在自己的 Java 项目中包含 WEKA ML 实现,您可以轻松地做到这一点。

结论

WEKA 是开发机器学习模型的强大工具。它提供了几种最广泛使用的 ML 算法的实现。在将这些算法应用于数据集之前,它还允许您预处理数据。支​​持的算法类型分为分类、聚类、关联和选择属性。处理各个阶段的结果可以通过美观而强大的视觉表示进行可视化。这使数据科学家更容易在其数据集上快速应用各种机器学习技术,比较结果并创建最终用途的最佳模型。