第5章 数据学习Ⅱ

本章涵盖如下内容:

  • 使用Java机器学习库向数据应用机器学习;
  • 导入与导出数据集;
  • 聚类与评估;
  • 分类;
  • 交叉验证与held-out测试;
  • 特征计分;
  • 特征选择;
  • 使用斯坦福分类器对数据点分类;
  • 使用MOA(Massive Online Analysis)对数据点分类。

在第4章,我们学习了如何使用Weka机器学习平台来进行分类、聚类、关联规则挖掘、特征选择等。我们还提到Weka不是唯一一个使用Java语言用来学习数据模式的工具。除了Weka之外,还有许多其他工具可以用来执行类似的任务,比如Java-ML、MOA、斯坦福机器学习库等。

本章,我们将重点学习这些工具中的几个来对数据进行机器学习分析。

Java机器学习库(Java-ML)包含一系列标准的机器学习算法。与Weka不同,这个库不带有任何GUI界面,因为它主要面向的是软件开发人员。Java-ML特别好的地方是每种算法都有相同接口,因此算法实现起来相当容易、简单易懂。另一个优点是这个库拥有丰富的支持,源代码文档齐全,并且容易扩展,有大量使用这个库实现的机器学习任务的代码示例与教程。关于这个库的更多细节,请参阅java-ML官网。

本部分,我们将使用这个库做如下任务:

  • 导入与导出数据集;
  • 聚类与评估;
  • 分类;
  • 交叉验证与held-out测试;
  • 特征计分;
  • 特征选择。

开始之前,先做如下准备。

1.如图5-1所示,在本部分,我们会使用Java-ML 0.1.7版本。请读者自行下载。

图5-1

2.下载完成后,对zip文件解压,得到如图5-2所示的目录。

图5-2

javaml-0.1.7.jar文件作为外部文件添加到你用来实现本部分内容的Eclipse项目中。 ...

Get Java数据科学指南 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.