将 Amazon SageMaker Data Wrangler 流程迁移至 Amazon SageMaker Canvas 以加快数据准备速度

作者:Charles Laughlin Dan Sinnreich Davide Gallitelli 和 Huong Nguyen日期:2024年8月20日类别: Amazon SageMaker

关键要点

Amazon SageMaker Data Wrangler 提供可视化界面,以便加速机器学习ML中的数据准备。Amazon SageMaker Canvas 是一种低代码/无代码的可视化界面,允许用户构建和部署机器学习模型,无需编写代码。通过将 SageMaker Data Wrangler 的数据处理能力整合到 SageMaker Canvas 中,用户能够获得无缝的数据准备和模型构建体验。本文将介绍如何将现有的 SageMaker Data Wrangler 流程迁移至 SageMaker Canvas。

在机器学习项目中,数据准备通常是最耗时且最繁琐的任务。利用 Amazon SageMaker Data Wrangler 提供的可视化界面,可以简化和加速这一过程。而 Amazon SageMaker Canvas 则是一个无代码的可视化界面,允许用户在无需编写代码的情况下构建和部署机器学习模型。基于客户反馈,我们已将 SageMaker Data Wrangler 的数据准备能力整合到 SageMaker Canvas 中,为用户提供一个完整的无代码工作台,以准备数据、构建和部署机器学习模型。

通过简化机器学习工作流的复杂性,SageMaker Canvas 使用户可以准备数据,然后使用模型生成高度准确的商业洞察,而无需编写代码。此外,使用 SageMaker Canvas 进行数据准备时,用户可以享受到许多增强功能,比如页面加载速度提升至 10 倍,数据准备的自然语言界面,可以在每个步骤查看数据的大小和形状,以及改进的 替换 和 重排转换。最后,用户可以在同一界面一键创建模型,或创建 SageMaker Canvas 数据集,以微调基础模型。

本文将展示如何将现有的 SageMaker Data Wrangler 流程即构建数据转换时创建的指令从 SageMaker Studio Classic 迁移至 SageMaker Canvas (更多信息)。我们提供了一个示例,介绍如何将文件从 SageMaker Studio Classic 迁移至 Amazon S3,作为导入 SageMaker Canvas 的中间步骤。

解决方案概述

高层步骤如下:

在 SageMaker Studio 中打开终端,将流文件复制到 Amazon S3。从 Amazon S3 导入流文件到 SageMaker Canvas。

前提条件

在本示例中,我们使用名为 datawranglerclassicflows 的文件夹作为迁移流文件到 Amazon S3 的中转文件夹。虽然不必创建迁移文件夹,但在此示例中,我们通过 SageMaker Studio Classic 的文件系统浏览器创建了该文件夹。在创建文件夹后,请务必将相关的 SageMaker Data Wrangler 流文件移动并整合在一起。在下方的屏幕截图中,三个迁移所需的流文件已被移入文件夹 datawranglerclassicflows,如左侧窗格所示。其中一个文件 titanicflow 在右侧窗格中打开并可见。

将流文件复制到 Amazon S3

要将流文件复制到 Amazon S3,请完成以下步骤:

在 SageMaker Studio Classic 中打开终端,选择 文件 菜单中的 终端。

打开新终端后,输入以下命令以将流文件复制到您选择的 Amazon S3 位置将 NNNNNNNNNNNN 替换为您的 AWS 账户号码:

bashcd datawranglerclassicflowstarget=s3//sagemakeruswest2NNNNNNNNNNNN/datawranglerclassicflows/aws s3 sync target exclude include flow

下方的屏幕截图展示了 Amazon S3 同步过程应呈现的样子。所有文件上传完成后,您会收到确认。您可以根据自己的输入文件夹和 Amazon S3 位置调整上述代码。如果您不想创建文件夹,则在进入终端时,直接跳过更改目录 (cd) 命令,系统会将您整个 SageMaker Studio Classic 文件系统中的所有流文件复制到 Amazon S3。

上传文件至 Amazon S3 后,您可以使用 Amazon S3 控制台验证文件是否已被复制。在下方的屏幕截图中,我们可以看到原来的三个流文件,现在已位于 S3 存储桶中。

将 Data Wrangler 流文件导入 SageMaker Canvas

要将流文件导入 SageMaker Canvas,请完成以下步骤:

加速器vip永久免费版下载在 SageMaker Canvas 应用中,在导航窗格中选择 Data Wrangler。

选择 导入数据流。

在 选择数据源 中,选择 Amazon S3。

在 输入 S3 端点 中输入您之前用于从 SageMaker Studio 复制文件的 Amazon S3 位置,然后选择 前往。您也可以使用下面的浏览器导航到 Amazon S3 位置。选择要导入的流文件,然后选择 导入。

导入文件后,SageMaker Data Wrangler 页面会刷新,以显示新导入的文件,如下图所示。

使用 SageMaker Canvas 进行数据转换

选择其中一个流例如,我们选择 titanicflow以启动 SageMaker Data Wrangler 转换。

现在您可以通过可视化界面 (加速在 Amazon SageMaker Canvas 中的 ML 数据准备) 或自然语言界面 (使用自然语言探索和准备数据的新功能),为数据流添加分析和转换。

当您对数据满意时,选择加号并选择 创建模型,或选择 导出 以 导出数据集 来构建和使用 ML 模型。

将 Amazon SageMaker Data Wrangler 流程迁移到 Amazon Sage

替代迁移方法

本博客提供了有关使用 Amazon S3 将 SageMaker Data Wrangler 流文件从 Amazon SageMaker Studio Classic 环境迁移的指导。在我们的 AWS 文档 中,我们提供了将 Data Wrangler 流文件导入的其他方法。如果您的 Studio Classic 和 Canvas 应用共享相同的 Amazon EFS 存储卷,您将看到一键导入选项,用于将数据流从 Studio Classic 的 Data Wrangler 迁移到 SageMaker Canvas 的 Data Wrangler。

此外,您还可以使用本地计算机传输流文件。最后,您也可以从 SageMaker Studio 文件树控件下载单个流文件到本地计算机,然后手动导入到 Canvas 中。没有对错之分,您可以选择一个您舒适的方法。

清理

完成后,请 关闭 SageMaker Studio Classic 中运行的任何 SageMaker Data Wrangler 应用。为了节省成本,您还可以删除 SageMaker Studio Classic 文件浏览器中的任何流文件,这些文件是 Amazon 弹性文件系统 (Amazon EFS) 卷。您也可以删除 Amazon S3 中的中间文件。流文件导入到 SageMaker Canvas 后,复制到 Amazon S3 的文件就不再需要。

完成后,您可以退出 SageMaker Canvas,待准备好再次使用时再重新启动。

结论

将现有的 SageMaker Data Wrangler 流程迁移到 SageMaker Canvas 是一个简单的过程,让您能够使用已经开发的高级数据准备功能,同时享受 SageMaker Canvas 的端到端低代码/无代码机器学习工作流。通过遵循本文概述的步骤,您可以无缝过渡您的数据处理工件到 SageMaker Canvas 环境,从而简化您的机器学习项目,并使业务分析师和非技术用户能够更有效地构建和部署模型。

今天就开始探索 SageMaker Canvas ,体验统一平台在数据准备、模型构建和部署中的强大功能!

关于作者

Charles Laughlin 是亚马逊网络服务 (AWS) 的首席 AI 专家。他拥有供应链管理硕士学位和数据科学博士学位。Charles 在 Amazon SageMaker 服务团队工作,通过客户反馈和研究来制定服务路线图。他与各类客户日常合作,帮助他们利用前沿 AWS 技术和思想领导力转型业务。

Dan Sinnreich 是 Amazon SageMaker 的高级产品经理,专注于扩展无代码/低代码服务。他致力于使机器学习和生成式 AI 更加可及,并将其应用于解决棘手问题。在工作之余,他喜欢打冰球、潜水和阅读科幻小说。

Huong Nguyen 是 AWS 的高级产品经理,负责 SageMaker Canvas 和 SageMaker Data Wrangler 的机器学习数据准备,拥有 15 年构建以客户为中心和数据驱动产品的经验。

Davide Gallitelli 是 EMEA 区域 AI/ML 的专业解决方案架构师,驻扎在布鲁塞尔,与 Benelux 客户密切合作。他从小就开始编程,7 岁时就开始学习代码。大学后期开始接触 AI/ML,并对其产生了浓厚的兴趣。