BigML 教程:开发你的第一个决策树并进行预测

BigML是一家位于美国俄勒冈州科瓦利斯的新兴、有趣且提供机器学习即服务(MLaaS)的公司。

在上一篇文章中,我们评测了 BigML 服务,介绍了其主要功能以及您可以在业务、个人项目或向客户演示时使用该服务的方式。在本教程中,我们将分步指导您使用 BigML 平台开发预测模型,并使用该模型对未用于创建模型的数据进行预测。该模型将是一个决策树

您可以注册一个免费试用 BigML 账户来跟随学习。将您的账户配置为“开发模式”,这样您就不需要信用点来完成本教程中的任务。

鸢尾花种类分类问题

在本教程中,我们将使用研究广泛的鸢尾花数据集。该数据集包含 150 个实例,描述了鸢尾花的测量值,每个实例都被归类为三种鸢尾花种类之一。属性是数值型的,这个问题是一个多类分类问题。

Sample of the Iris flower dataset

鸢尾花数据集样本,来自维基百科的截图

您可以在维基百科页面上阅读更多关于此问题的信息,并从UCI 机器学习仓库的鸢尾花页面下载数据。

1. 加载数据并创建数据集

在本节中,您将准备好用于 BigML 的数据源和数据集。

1.1. 创建数据源

首先,我们需要创建一个数据源。这是原始数据,我们可以从中创建数据集或查看原始数据的视图。

  1. 登录到您的 BigML 账户。
  2. 点击“仪表板”按钮进入您的 BigML 仪表板。
  3. 点击“”选项卡以列出您账户中的所有数据源。
  4. 点击“链接”按钮以指定一个远程数据文件。
  5. 输入 UCI 机器学习仓库中鸢尾花数据集的 URL (http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data) 和描述(“鸢尾花数据源”)。
  6. 点击“创建”按钮以创建新的数据源。
  7. 点击“鸢尾花数据源”以进行查看。
BigML Data Source

BigML 数据源

您会注意到属性数据类型已被正确识别为数值型,并且类别标签是最后一个属性(字段 5)。

1.2. 创建数据集

现在我们有了一个加载了原始数据的数据源,我们可以创建该数据源的数据集视图。然后,我们将创建另外两个数据集:一个名为训练集,用于训练预测模型;另一个名为测试集,用于评估创建的预测模型,并将作为进行预测的基础。

  1. 在“”选项卡中点击“鸢尾花数据源”以打开它,如果尚未打开的话。
  2. 点击云按钮并选择“一键创建数据集”。
  3. 这将从数据源创建新数据集。这是对数据源的视图,可以进行修改以准备建模。
  4. 点击或悬停在小 sigma 上以查看给定属性的摘要。
  5. 点击云按钮并选择“一键训练 | 测试”。
  6. 点击“数据集”选项卡,查看我们创建的 3 个数据集。
BigML Dataset

BigML 数据集

2. 创建和评估模型

在本节中,我们将从准备好的训练数据集创建预测模型,并使用准备好的测试数据集评估该模型。

2.1. 创建预测模型

现在,您将从训练数据集中创建一个预测模型。

  1. 在“数据集”选项卡中点击“鸢尾花数据源的数据集 | 训练 (80%)”数据集。
  2. 点击云图标并选择“一键创建模型”。
  3. 悬停在模型中的不同节点上,以查看数据通过决策树的流程。
  4. 点击“旭日图”按钮以打开模型的旭日图视图并探索决策树。
  5. 点击“模型摘要报告”按钮以查看从决策树模型派生的规则的文本描述。
BigML Predictive Model

BigML 预测模型

2.2. 评估预测模型

现在,您将使用测试数据集评估您创建的预测模型的预测准确性。

  1. 在“模型”选项卡中点击鸢尾花模型。
  2. 点击云按钮并选择“评估”。
  3. 评估将自动选择您之前创建的测试数据集,该数据集包含原始数据集的 20%,而预测模型尚未见过。
  4. 点击“评估”按钮来评估模型。
  5. 模型的准确性以分类准确率、精确率、召回率、F1 分数和 phi 分数进行总结。我们可以看到准确率为 93.33%。
  6. 点击“混淆矩阵”以查看模型预测的混淆矩阵。
BigML Evaluate Predictive Model

BigML 评估预测模型,显示混淆矩阵

3. 进行预测

现在,您将使用预测模型对模型尚未见过的数据进行预测。

  1. 在“模型”选项卡中点击鸢尾花模型。
  2. 点击云按钮并选择“批量预测”。
  3. 点击“搜索数据集…”下拉菜单并输入“iris”。
  4. 选择“鸢尾花数据源的数据集 | 测试 20%”数据集。
  5. 点击“预测”按钮。
  6. 点击“下载批量预测”文件,以获取测试数据集中每一行的预测结果。
BigML Download Model Predictions

BigML 下载模型预测

总结

在本教程中,您学习了如何创建数据源、数据集,创建预测模型、对其进行评估,最后使用准备好的预测模型对未见过的数据进行预测。BigML 是一个易于使用的平台,您应该能够轻松完成所有这些操作,仅需 5-10 分钟。

接下来,您可以进行一些扩展此教程的工作:

  • 您可以创建具有不同剪枝方法的新决策树,并将其评估与您已经创建的决策树进行比较,看看哪一个更准确。
  • 您可以使用决策树的集成模型来解决问题,并通过比较集成模型的评估结果与您已创建决策树的评估结果,看看是否可以提高分类准确率。
  • 您可以编写脚本或使用 BigML 命令行工具(称为bigmler)来在新数据可用时进行预测。
  • 您可以使用 BigML API 将远程模型的使用集成到网页中,并在新数据可用时自动进行预测。

如果您有关于使用 BigML 的有趣教程的想法,请留下评论。让您的想象力自由驰骋。

BigML 教程:开发你的第一个决策树并进行预测 的 4 条回复

  1. ben 2017年3月27日 上午 2:50 #

    太棒了,谢谢。

  2. Jesús Martínez 2018年3月22日 上午 1:05 #

    很棒的教程,谢谢!

    我想知道,在你看来,BigML 和 Weka 哪个更好?

    提前感谢你的时间和关注!

    • Jason Brownlee 2018年3月22日 上午 6:25 #

      它们解决的问题不同。Bigml 只有树模型,并且是托管的;Weka 是一个完整的工具集,并且是本地的。

发表回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。