将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

将 Github 示例与 Amazon SageMaker Data Wrangler 结合使用

亚马逊SageMaker 数据管理员 是一种基于 UI 的数据准备工具,可帮助执行数据分析、预处理和可视化,并具有更快地清理、转换和准备数据的功能。 Data Wrangler 预构建的流模板通过帮助您加速和了解使用通用数据集的数据流的最佳实践模式,帮助数据科学家和机器学习 (ML) 从业者更快地进行数据准备。

您可以使用 Data Wrangler 流来执行以下任务:

  • 数据可视化 –检查数据集中各列的统计属性,建立直方图,研究异常值
  • 数据清理 –删除重复项,删除或填充缺失值的条目,删除异常值
  • 数据充实和特征工程 –处理列以构建更具表现力的功能,选择功能的子集进行训练

这篇文章将使用以下示例预构建流程帮助您了解 Data Wrangler GitHub上. 该存储库展示了表格数据转换、时间序列数据转换和连接数据集转换。 由于它们的基本性质,每个都需要不同类型的转换。 在特定时间点收集标准表格或横截面数据。 相比之下,时间序列数据会随着时间的推移重复捕获,每个连续的数据点都取决于其过去的值。

让我们看一个示例,说明如何将示例数据流用于表格数据。

先决条件

数据管理员是一个 亚马逊SageMaker 内可用的功能 亚马逊SageMaker Studio,因此我们需要遵循 Studio 入职流程来启动 Studio 环境和笔记本。 虽然您可以从几种身份验证方法中进行选择,但创建 Studio 域的最简单方法是遵循 快速入门 指示。 快速启动使用相同的默认设置作为 标准工作室设置. 您也可以选择使用 AWS IAM 身份中心 (AWS Single Sign-On 的继承者)进行身份验证(请参阅 使用 IAM 身份中心载入 Amazon SageMaker 域).

使用 Studio 将数据集和流文件导入 Data Wrangler

以下步骤概述了如何将数据导入 SageMaker 以供 Data Wrangler 使用:

通过选择通过 Studio UI 初始化 Data Wrangler 新数据流.

克隆 GitHub回购 将流文件下载到您的 Studio 环境中。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

克隆完成后,您应该能够在左窗格中看到存储库内容。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

选择文件 酒店-预订-分类.flow 将流文件导入 Data Wrangler。

如果您使用时间序列或连接数据流,则流将显示为不同的名称。导入流后,您应该会看到以下屏幕截图。 这向我们显示了错误,因为我们需要确保流文件指向正确的数据源 亚马逊简单存储服务 (亚马逊S3)。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

编辑数据集 调出所有 S3 存储桶。 接下来,选择数据集 hotel_bookings.csv 从您的 S3 存储桶中运行 表格数据流.

请注意,如果您使用 加入数据流,您可能需要将多个数据集导入 Data Wrangler将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

在右窗格中,确保 被选为分隔符和 打样 被设置为 第一个 K. 我们的数据集足够小,可以在整个数据集上运行 Data Wrangler 转换,但我们想强调如何导入数据集。 如果您有大型数据集,请考虑使用抽样。 选择 进口 将此数据集导入 Data Wrangler。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

导入数据集后,Data Wrangler 会自动验证数据集并检测数据类型。 您可以看到错误已经消失,因为我们指向了正确的数据集。 流编辑器现在显示两个块,显示数据是从源导入的和已识别的数据类型。 如果需要,您还可以编辑数据类型。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

以下屏幕截图显示了我们的数据类型。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

让我们看看作为此表格流的一部分完成的一些转换。 如果您正在使用 时间序列 or 加盟 数据流,查看一些常见的转换 GitHub回购. 我们使用数据洞察报告进行了一些基本的探索性数据分析,这些报告研究了数据集中的目标泄漏和特征共线性、表格摘要分析和快速建模能力。 探索上的步骤 GitHub回购.

现在我们根据数据洞察和质量报告提供的建议删除列。

  • 对于目标泄漏,下降 预订状态.
  • 对于冗余列,删除 days_in_waiting_list,酒店,reserved_room_type,arrival_date_month,reservation_status_date,婴儿, 到达日期_日期_月份.
  • 基于线性相关结果,删除列 到达日期周数 到达日期年份 因为这些特征(列)对的相关值大于推荐的阈值 0.90。
  • 基于非线性相关结果,下降 预订状态. 此列已根据目标泄漏分析标记为删除。
  • 处理数值(最小-最大缩放) 提前期,stays_in_weekend_nights,stays_in_weekday_nights,is_repeated_guest,prev_cancellations,prev_bookings_not_canceled,booking_changes,adr,total_of_specical_requests, 所需停车位.
  • One-hot 编码分类变量,如 膳食,is_repeated_guest,market_segment,assigned_room_type,deposit_type, 顾客类型.
  • 平衡目标变量随机过采样以解决类不平衡。使用快速建模功能来处理异常值和缺失值。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

导出到 Amazon S3

现在我们已经完成了不同的转换,并准备将数据导出到 Amazon S3。 此选项创建 SageMaker 处理作业,该作业运行 Data Wrangler 处理流程并将生成的数据集保存到指定的 S3 存储桶。 按照以下步骤设置导出到 Amazon S3:

选择转换元素集合旁边的加号并选择 添加目的地, 然后 Amazon S3.

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

  • 针对 数据集名称,输入新数据集的名称,例如 NYC_export.
  • 针对 文件类型,选择 CSV.
  • 针对 分隔符,选择 逗号.
  • 针对 压缩,选择 不包含.
  • 针对 亚马逊 S3 位置,使用我们之前创建的相同存储桶名称。
  • 添加目的地.

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

建立工作.

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

针对 工作名称,输入名称或保留自动生成的选项并选择 目的地. 我们只有一个目的地, S3:testingtabulardata,但您的工作流程中可能有来自不同步骤的多个目标。 离开 KMS 密钥 ARN 字段为空并选择 下一页.

现在您必须为作业配置计算容量。 您可以保留此示例的所有默认值。

  • 针对 实例类型, 使用 ml.m5.4xlarge。
  • 针对 实例数, 使用 2。
  • 你可以探索 附加配置,但保持默认设置。
  • 运行.

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

现在您的工作已经开始,根据我们的 Data Wrangler 处理流程需要一些时间来处理 6 GB 的数据。 这项工作的成本约为 2 美元,因为 ml.m5.4xlarge 每小时的成本为 0.922 美元,而我们正在使用其中的两个。

如果您选择作业名称,您将被重定向到包含作业详细信息的新窗口。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

在作业详细信息页面上,您可以看到前面步骤中的所有参数。

当作业状态更改为已完成时,您还可以检查 处理时间(秒) 价值。 此处理作业大约需要 5-10 分钟才能完成。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

作业完成后,相应的 S3 输出文件夹中会提供训练和测试输出文件。 您可以从处理作业配置中找到输出位置。

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。

Data Wrangler 处理作业完成后,我们可以检查保存在 S3 存储桶中的结果。 不要忘记更新 job_name 变量与您的工作名称。

您现在可以使用此导出的数据来运行 ML 模型。

清理

删除您的 S3 存储桶 和你的 数据管理员流程 为了在您完成实验后删除基础资源并防止不必要的成本。

结论

在这篇文章中,我们展示了如何将表格预构建的数据流导入 Data Wrangler,将其插入我们的数据集,然后将结果导出到 Amazon S3。 如果您的用例需要您操作时间序列数据或连接多个数据集,您可以浏览 GitHub回购.

导入预构建的数据准备工作流程后,您可以将其与 Amazon SageMaker 处理集成, Amazon SageMaker管道Amazon SageMaker功能商店 简化处理、共享和存储 ML 训练数据的任务。 您还可以将此示例数据流导出到 Python 脚本并创建自定义 ML 数据准备管道,从而加快发布速度。

我们鼓励您查看我们的 GitHub存储库 动手实践并找到提高模型准确性的新方法! 要了解有关 SageMaker 的更多信息,请访问 Amazon SageMaker 开发人员指南.


作者简介

将 Github 示例与 Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence 结合使用。 垂直搜索。 哎。伊莎杜阿 是旧金山湾区的一名高级解决方案架构师。 她通过了解 AWS 企业客户的目标和挑战来帮助他们成长,并指导他们如何以云原生方式构建应用程序,同时确保它们具有弹性和可扩展性。 她对机器学习技术和环境可持续性充满热情。

时间戳记:

更多来自 AWS机器学习