将 Amazon S3 与 Amazon ML 结合使用 - Amazon Machine Learning

我们不再更新 Amazon Machine Learning 服务,也不再接受新用户使用该服务。本文档可供现有用户使用,但我们不会再对其进行更新。有关更多信息,请参阅什么是 Amazon Machine Learning

将 Amazon S3 与 Amazon ML 结合使用

Amazon Simple Storage Service (Amazon S3) 是一种面向 Internet 的存储服务。您可以通过 Amazon S3 随时在 Web 上的任何位置存储和检索的任意大小的数据。Amazon ML 将 Amazon S3 作为执行以下任务的主数据存储库:

  • 访问您的输入文件以创建用于训练和评估 ML 模型的数据源对象。

  • 访问您的输入文件以生成批量预测。

  • 在使用您的 ML 模型生成批量预测时,将预测文件输出到您指定的 S3 存储桶中。

  • 将 Amazon Redshift 或 Amazon Relational Database Service (Amazon RDS) 存储的数据复制到 .csv 文件中,然后将其上传到 Amazon S3。

要让 Amazon ML 执行这些任务,您必须授予 Amazon ML 访问您的 Amazon S3 数据的权限。

注意

您无法将批量预测文件输出到仅接受服务器端加密文件的 S3 存储桶。通过确认在请求中没有 Deny 标头时,策略对 s3:PutObject 操作不会有 s3:x-amz-server-side-encryption 效果,确保您的存储桶策略允许上传未加密的文件。有关 S3 服务器端加密存储桶策略的更多信息,请参阅 Amazon Simple Storage Service 用户指南中的使用服务器端加密保护数据

将您的数据上传到 Amazon S3

您必须将输入数据上传到 Amazon Simple Storage Service (Amazon S3),因为 Amazon ML 会从 Amazon S3 位置读取数据。您可以将您的数据直接上传到 Amazon S3(例如,从您的计算机上传),也可以让 Amazon ML 将您存储在 Amazon Redshift 或 Amazon Relational Database Service (RDS) 中的数据复制到 .csv 文件,然后将文件上传到 Amazon S3。

有关从 Amazon Redshift 或 Amazon RDS 复制数据的更多信息,请分别参阅将 Amazon Redshift 与 Amazon ML 结合使用将 Amazon RDS 与 Amazon ML 结合使用

本节的剩余部分介绍如何将输入数据从您的计算机直接上传到 Amazon S3。开始本节的操作过程之前,您需要将数据保存在 .csv 文件中。有关如何正确设置 .csv 文件的格式以便 Amazon ML 使用的信息,请参阅了解 Amazon ML 的数据格式

将您的数据从计算机上传到 Amazon S3
  1. 登录 AWS 管理控制台,并通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3

  2. 创建存储桶或选择现有的存储桶。

    1. 要创建存储桶,请选择创建存储桶。为您的存储桶命名,选择区域(您可以选择任何可用区域),然后选择创建。有关更多信息,请参阅 Amazon Simple Storage 入门指南 中的创建存储桶

    2. 要使用现有的存储桶,通过在所有存储桶列表中选择存储桶来搜索存储桶。当存储桶名称出现后,选择该存储桶,然后选择上传

  3. 上传对话框中,选择添加文件

  4. 导航到包含输入数据 .csv 文件的文件夹,然后选择打开

权限

要授权 Amazon ML 访问您的一个 S3 存储桶,您必须编辑存储桶策略。

有关授权 Amazon ML 从您在 Amazon S3 中的存储桶中读取数据的信息,请参阅为 Amazon ML 授予从 Amazon S3 读取您的数据的权限

有关授权 Amazon ML 将批量预测结果输出到您在 Amazon S3 中的存储桶的信息,请参阅向 Amazon ML 授予输出预测到 Amazon S3 的权限

有关管理 Amazon S3 资源访问权限的信息,请参阅 Amazon S3 开发人员指南