我们不再更新 Amazon Machine Learning 服务,也不再接受新用户使用该服务。本文档可供现有用户使用,但我们不会再对其进行更新。有关更多信息,请参阅什么是 Amazon Machine Learning。
步骤 5:使用 ML 模型生成预测
Amazon Machine Learning (Amazon ML) 可以生成两种类型的预测 — 批量和实时。
实时预测是 Amazon ML 按需生成的单个观察的预测。实时预测适用于移动应用程序、网站和其他需要以交互方式使用结果的应用程序。
批量预测是对一组观察的预测集。Amazon ML 在批量预测中将记录放在一起处理,因此处理可能需要一些时间。对于应用程序,如果需要的是对一组观察进行的预测或者无需交互使用结果的预测。
在本教程中,您将生成实时预测,预测一位潜在客户是否将订阅新产品。您还会为一大批潜在客户生成预测。对于批量预测,您将使用您在banking-batch.csv
中上传的 步骤 1:准备数据 文件。
我们从实时预测开始。
注意
对于需要实时预测的应用程序,您必须为 ML 模型创建实时终端节点。在实时终端节点可用时,您会产生费用。在您承诺使用实时预测并开始产生与之相关的费用之前,您可以尝试在 Web 浏览器中使用实时预测功能,无需创建实时终端节点。这就是我们将在本教程中完成的操作。
尝试实时预测
-
在 ML 模型报告导航窗格中,选择尝试实时预测。
-
选择粘贴记录。
-
在粘贴记录对话框中,粘贴以下观察:
32,services,divorced,basic.9y,no,unknown,yes,cellular,dec,mon,110,1,11,0,nonexistent,-1.8,94.465,-36.1,0.883,5228.1
-
在粘贴记录对话框中,选择提交以确认您希望为此观察生成预测。Amazon ML 填充实时预测表单中的值。
注意
您还可以通过键入单个值来填充值字段。不论选择哪种方法,您应提供未用于训练模型的观察。
-
在页面底部,选择创建预测。
预测显示在右侧的预测结果窗格中。此预测具有为
0
的预测标签,这意味着此潜在客户不太可能响应市场活动。预测标签 为1
意味着可能有可能响应市场活动。
现在,创建批量预测。您向 Amazon ML 提供所用 ML 模型的名称;希望为其生成预测的输入数据(Amazon ML 将从此数据创建批量预测数据源)的 Amazon Simple Storage Service (Amazon S3) 位置;用于存储结果的 Amazon S3 位置。
创建批量预测
-
选择 Amazon Machine Learning,然后选择批量预测。
-
选择创建新批量预测。
-
在用于批量预测的 ML 模型页面上,选择ML 模型: 银行数据 1。
Amazon ML 显示 ML 模型名称、ID、创建时间以及关联的数据源 ID。
-
选择继续。
-
要生成预测,您需要向 Amazon ML 提供所要进行预测的数据。这称为输入数据。首先,将输入数据移入数据源以便 Amazon ML 访问。
对于找到输入数据,选择我的数据在 S3 中,并且我需要创建数据源。
-
为数据源名称 键入
Banking Data 2
。 -
对于 SS3 位置,键入
banking-batch.csv
文件的完整位置:your-bucket
/banking-batch.csv
。 -
对于您的 CSV 中的第一行是否包含列名?,选择是。
-
选择验证。
Amazon ML 验证您数据的位置。
-
选择继续。
-
对于 S3 目标,键入您在“步骤 1:准备您的数据”中上传文件到 Amazon S3 位置的名称。Amazon ML 将预测结果上传到这里。
-
对于批量预测名称,接受默认值
Batch prediction: ML model: Banking Data 1
。Amazon ML 根据将用于创建预测的模型选择默认名称。在本教程中,模型和预测根据训练数据源Banking Data 1
命名。 -
选择审核。
-
在 S3 权限对话框中,选择是。
-
在审核页面上,选择完成。
批量预测请求发送到 Amazon ML 并进入队列中。Amazon ML 处理批量预测所用的时间取决于您数据源的大小以及 ML 模型的复杂性。Amazon ML 处理请求时,它将状态报告为正在进行。批量预测完成后,请求的状态更改为完成。现在,您可以查看结果。
查看预测
-
选择 Amazon Machine Learning,然后选择批量预测。
-
在预测列表中,选择批量预测: ML 模型: 银行数据 1。此时显示批量预测信息页面。
-
要查看批量预测的结果,请转到 Amazon S3 控制台(网址为 https://console.aws.amazon.com/s3/
)并导航到输出 S3 URL 字段中引用的 Amazon S3 位置。从该处导航到结果文件夹,其名称将类似于 s3://aml-data/batch-prediction/result
。预测存储在压缩的 .gzip 文件中,扩展名为 .gz。
-
下载预测文件到您的桌面,解压缩,然后打开它。
该文件有两列 bestAnswer 和 score,数据源中的每个观察为一行。bestAnswer 列中的结果是基于您在步骤 4:查看 ML 模型的预测性能和设置分数阈值中设置的评分阈值 0.77。大于 0.77 的 score 会导致 bestAnswer 为 1,这是正向响应或预测,小于 0.77 的 score 会导致 bestAnswer 为 0,这是负向响应或预测。
以下示例基于 0.77 的分数阈值显示正向和负向预测。
正向预测:
![](images/image37.png)
在此示例中,bestAnswer 的值为 1,score 的值为 0.8228876。bestAnswer 的值为 1 是因为 score 大于分数阈值 0.77。bestAnswer 为 1 指示客户希望购买产品,因此,视为正向预测。
负向预测:
![](images/image38.png)
在此示例中,bestAnswer 的值为 0,因为 score 值为 0.7695356,这低于分数阈值 0.77。bestAnswer 为 0 表示客户不太可能购买您的产品,因此视为负向预测。
批处理结果中的每一列均与您的批处理输入中的一行相对应(您的数据源中的一个观察)。
分析预测之后,您可以执行定向市场营销活动;例如,向预测分数为 1
的所有人发送宣传材料。
在创建、查看并使用了自己的模型之后,现在清除您创建的数据和 AWS 资源以避免产生不必要的费用并保持工作区整洁。