Weka - 特征选择



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

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

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

加载数据

在 WEKA explorer 的 **预处理** 选项卡中,选择 **labor.arff** 文件加载到系统中。加载数据后,您将看到以下屏幕:

Loading Data

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

特征提取

点击 **选择属性** 选项卡。您将看到以下屏幕:

Select Attributes

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

点击“开始”按钮处理数据集。您将看到以下输出:

Start Dataset

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

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

Screenshot Output

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

Data Plot

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

下一步是什么?

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

在 **GUI 选择器** 应用程序中点击 **简单 CLI** 按钮将启动此命令行界面,如下面的屏幕截图所示:

Gui Chooser

在底部的输入框中键入您的命令。您将能够完成在 explorer 中完成的所有操作,以及更多操作。请参考 WEKA 文档 (https://www.cs.waikato.ac.nz/ml/weka/documentation.html) 获取更多详细信息。

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

结论

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

广告