什么是Amazon SageMaker及实践体验

2024-04-26 20:12
文章标签 实践 体验 amazon sagemaker

本文主要是介绍什么是Amazon SageMaker及实践体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 前言
    • 亚马逊云服务免费体验中心
      • 三种优惠类型
  • Amazon SageMaker
    • 什么是Amazon SageMaker
    • 适合人群
      • 业务分析师
      • 数据科学家
      • ML 工程师
      • 业务分析师
    • 实践
      • 先决条件
      • 在不编写代码的情况下生成机器学习预测
        • 导入数据集
          • 设置 Amazon SageMaker Studio 域
          • 登录 SageMaker Canvas 并上传数据集到 Amazon S3 桶
        • 自动构建模型
          • 导入数据集到 SageMaker Canvas
        • 构建、训练与分析 ML 模型
        • 生成模型预测
      • 清除 AWS 资源
    • 限时- Amazon SageMaker 提供灵活的免费套餐
  • 总结
  • 附录

前言

亚马逊云服务免费体验中心

最近亚马逊云服务提供了超多免费的云服务,快来领取免费套餐:亚马逊云服务免费体验中心

在这里插入图片描述

三种优惠类型

目前,AWS Free Tier 提供 100 多种 AWS 产品。根据所使用的产品,有三种不同类型的免费优惠可供选择。
在这里插入图片描述

现在就立即去亚马逊云服务免费体验中心,选择你的免费云产品和服务吧

在这里插入图片描述

亚马逊云服务免费体验中心

Amazon SageMaker

什么是Amazon SageMaker

SageMaker 是一项完全托管的服务,可通过完全托管的基础设施、工具和工作流程为任何应用场景准备数据并构建、训练和部署机器学习(ML)模型。

适合人群

业务分析师

通过无代码界面,您可以创建高度准确的机器学习模型,无需任何机器学习经验,也无需编写任何代码。您可以通过 SageMaker Canvas 访问即用型模型,包括来自 Amazon Bedrock 或 Amazon SageMaker JumpStart 的基础模型,也可以构建自己的自定义 ML 模型。借助 SageMaker Canvas,您可以轻松访问和导入来自 50 多个来源的数据、使用自然语言和 300 多种内置转换准备数据、构建和训练高度准确的模型,生成预测并将模型部署到生产环境。

  • 即用型模型

    • 基础模型:SageMaker Canvas 提供对 Claude 2、Amazon Titan 和 Jurassic-2(由 Amazon Bedrock 提供支持)即用型基础模型(FM)以及 Falcon 和 MPT(由 SageMaker JumpStart 提供支持)等公开可用的 FM 的访问。
    • 表模型、简历模型和 NLP 模型:SageMaker Canvas 提供对由 AWS AI 服务(包括 Amazon Rekognition、Amazon Textract 和 Amazon Comprehend)支持的即用型表模型、NLP 模型和简历模型的访问。
  • 自定义模型

    • 数据准备:SageMaker Canvas 通过点击式或自然语言 UI 提供无代码数据探索和准备。
    • 构建模型:SageMaker Canvas 使用 Amazon 的 AutoML 构建在您的数据集上训练的自定义模型。
    • 评估模型:SageMaker Canvas 通过常见的评估指标和视觉效果帮助您了解模型性能。
    • 使用模型:您可以在 SageMaker Canvas UI 中生成预测或部署到 SageMaker 端点。

数据科学家

Amazon SageMaker Studio 提供多种专门构建的工具来执行所有机器学习(ML)开发步骤,从准备数据到构建、训练、部署和管理机器学习模型。您可以使用首选 IDE 快速上传数据并构建模型。简化机器学习团队协作,使用人工智能驱动型编程辅助工具高效编码,调整和调试模型,在生产环境中部署和管理模型,实现工作流程自动化,所有这些都在一个统一的 Web 界面中完成。

工作原理
在这里插入图片描述

ML 工程师

Amazon SageMaker 提供专为机器学习操作(MLOps)构建的工具,以帮助您自动化和标准化机器学习生命周期内的流程。使用 SageMaker MLOps 工具,您可以轻松且大规模地对机器学习模型进行训练、测试、问题排查、部署和治理,从而提高数据科学家和机器学习工程师的生产力,同时保持生产中的模型性能。

工作原理:Amazon SageMaker MLOps
在这里插入图片描述

业务分析师

使用 SageMaker Canvas 的可视化界面进行 ML 预测


实践

先决条件

需要一个 AWS 账户:如果还没有账户,可以遵循设置 AWS 环境入门指南中的说明获取快速概览。这里就不做赘述了。

在不编写代码的情况下生成机器学习预测

这里我们以在不编写代码的情况下生成机器学习预测,来实践学习一下Amazon SageMaker如何使用的。构建可预测货物预计抵达时间(ETA,以天为单位)的 ML 模型。使用包含完整的交付产品装运数据的数据集,其中包括预计时间、装运、优先级、货运商和起运地。

导入数据集
设置 Amazon SageMaker Studio 域

一个 AWS 账户在一个 AWS 区域只能有一个 SageMaker Studio 域。

  1. 选择 AWS CloudFormation 堆栈链接。
  2. 创建你的SageMaker Studio 域和名为 studio-user 的用户。
  3. 堆栈名称应为 CFN-SM-IM-Lambda-Catalog,且不应更改。此堆栈需要花费 10 分钟左右才能创建所有资源。

在这里插入图片描述

登录 SageMaker Canvas 并上传数据集到 Amazon S3 桶
  1. 在 AWS 管理控制台的搜索栏中输入 SageMaker Canvas 并转至 SageMaker Canvas。
  2. 在 SageMaker Canvas 页面上,选择 Launch SageMaker Canvas(启动 SageMaker Canvas)
  3. 选择 studio-user 旁 Launch app(启动应用程序)下拉列表中的 Canvas。

如果是首次在 US-East 1 中使用 SageMaker,SageMaker Canvas 将以采用以下格式的名称创建一个 Amazon S3 桶:sagemaker--。

在这里插入图片描述
4. 在 AWS 管理控制台搜索栏中,输入 S3,然后选择 S3。
在这里插入图片描述

  1. 在 Buckets(桶)部分的下方找到 SageMaker Canvas 为你创建的默认桶。选择名为 sagemaker-- 的桶,然后在下一页上选择 Upload(上传)。
    在这里插入图片描述
  2. 在 Upload(上传)页面上,选择 Add files(添加文件),然后选择你的两个数据集。滚动到页面底部,然后选择 Upload(上传)。SageMaker Canvas 将在构建模型前访问这些文件。
    在这里插入图片描述
自动构建模型
导入数据集到 SageMaker Canvas
  1. 在 SageMaker Canvas 界面上,选择左侧窗格中的 Datasets(数据集),然后选择 + Import(+ 导入)。

  2. 选择名为 sagemaker-- 的 Amazon S3 桶。勾选其左侧的复选框以选择 shipping_logs.csv 和 product_descriptions.csv 数据集。页面底部将出现两个新按钮:Preview all(预览全部)和 Import data(导入数据)。选择 Preview all(预览全部)。可以查看数据集的 100 行预览。

  3. 在勾选数据集后,选择 Import data(导入数据),导入到 SageMaker Canvas。
    在这里插入图片描述

  4. 可以看到两个导入的数据集。选择 Join data(合并数据)。
    在这里插入图片描述

  5. 在 Join Datasets(合并数据集)页面上,将两个数据集从左侧窗格拖动到右侧窗格。选择两个数据集之间的 join icon(合并图标)。显示有关合并详细信息的弹出提示将会消失。确保合并类型为 Inner,合并列为 ProductId。选择 Save & close(保存并关闭),然后选择 Import data(导入数据)。
    在这里插入图片描述

  6. 在 Import data(导入数据)对话框中,输入名称 ConsolidatedShippingData 到 Import dataset name(导入数据集名称)字段,然后选择 Import data(导入数据)。
    在这里插入图片描述

构建、训练与分析 ML 模型
  1. 在 SageMaker Canvas 用户界面中,选择 Models(模型),然后选择 + New model(+ 新模型)。在 Create new model(创建新模型)对话框中,输入 ShippingForecast 到 Model name(模型名称)字段,然后选择 Create(创建)。
    在这里插入图片描述

  2. 在 Select(选择)选项卡中,选择 ConsolidatedShippingData 数据集的单选按钮,该数据集由上一步创建。此数据集包含 16 列和 10000 行。它还包含有关数据集形状和大小的概要描述。选择 Select dataset(选择数据集)。
    在这里插入图片描述

  3. 在选择数据集以后,SageMaker Canvas 会自动移动到 Build(构建)阶段。在此选项卡中,选择目标列,此示例中为 ActualShippingDays。由于此列包含货物抵达所需的历史天数,因此它非常适合被用作目标列。
    在这里插入图片描述

  4. 在选择目标列后,SageMaker Canvas 会自动尝试推理问题类型。因为您想知道客户需要多少天才能收到货物,而这是一个回归或数字预测问题。回归会基于一或多项与之关联的其他变量或属性来估算从属目标变量的值。在此例中,SageMaker Canvas 最初可能预测该使用案例为时间序列预测类型问题,因为它在数据集中检测到日期列。不过,可以使用页面中央的 Change type(更改类型)链接手动选择,以便将问题类型更改为数字模型类型。

在这里插入图片描述

  1. 注意到 SageMaker Canvas 会提供数据集统计数据,包括数据集每一列的缺失和不匹配的值、唯一值,以及平均值和中值。可以使用这些统计数据来删除部分列。不想将特定列用于预测,可以从左侧复选框中将其清除(取消勾选)
    在这里插入图片描述
  • 注意 XShippingDistance 和 YShippingDistance 列与目标之间的相关性可忽略不计。
  • 由于与目标之间相关性可忽略不计的特征无法为当前预测任务提供足够信息,可以删除 XShippingDistance, YShippingDistance、ProductID 和 OrderID 列,因为它们是主键,而且预计不会包含任何重要信息。您可以取消勾选复选框。
  • 可以选择纵栏图标,以检查列的分布。它非常适用于突出显示数据中存在的不平衡和潜在偏差。
    在这里插入图片描述
    在这里插入图片描述
  1. 在完成数据探查后,可以对模型进行训练。SageMaker Canvas 中有两种训练方法: 快速构建和 标准构建。快速构建一般需要 2-15 分钟才能构建模型,而标准构建则一般需要 2-4 个小时,但准确率通常更高。为优先考虑速度,快速构建会训练较少的模型和超参数组合。
    我们选择快速构建来开始构建模型。此流程只需不到 5 分钟即可完成。
    在这里插入图片描述
  2. 在模型构建完成以后,SageMaker Canvas 会自动切换到 Analyze(分析)选项卡,以显示快速训练结果。采用快速构建构建的 SageMaker Canvas 模型所预测的运输天数可在实际值的 +/-1.2333 范围以内。机器学习在训练模型的过程中引入一些随机性,不同的构建方式因此会产生不同的结果。
    在这里插入图片描述
  3. 在 Overview(概览)选项卡下方,SageMaker Canvas 会显示列影响或每个输入列在预测目标列中的预计重要性。在这个例子中,ExpectedShippingDays 列对运输天数预测的影响最大。在右侧窗格中,还可以看到某特征的影响方向。例如,ExpectedShippingDays 的值更高,它对运输天数预测的影响越正面。
    在这里插入图片描述
  4. 在 Scoring(得分)选项卡下方,可以看到代表 ActualshippingDays 最佳拟合回归直线的图形。平均而论,模型预测与 ActualShippingDays 的实际值有 +/- 1.2333 的差异。数字预测的 Scoring(得分)部分显示一条直线,表明与用于做出预测的数据有关的模型的预测值。数字预测的值通常为 +/- RMSE(均方根误差)值。模型预测的值一般都在 RMSE 的范围以内。直线四周的紫色区段的宽度为 RMSE 范围。预测值通常落在该范围之内。要更深入了解模型性能,选择右侧的 Advanced metrics(高级指标)链接,以显示 Advanced metrics(高级指标)页面。
    在这里插入图片描述
生成模型预测

现在有了回归模型,可以使用该模型运行预测,或者也可以创建该模型的新版本,并使用标准构建流程进行训练。在这一步中,我们要使用 SageMaker Canvas 对数据集生成单个和批量预测。

  1. 选择 Analyze(分析)页面底部的 Predict(预测)按钮,或选择 Predict(预测)选项卡。在 Predict(预测)页面上,Batch prediction(批量预测)已被选中。选择 Select dataset(选择数据集),然后选择 ConsolidatedShippingData 数据集。在实际 ML 工作流中,此数据集应与训练数据集分离。但为简单起见,您可以使用相同数据集来演示 SageMaker Canvas 如何生成预测。选择 Generate predictions(生成预测)。
    在这里插入图片描述

  2. 在几秒后,预测完成。选择 options icon(选项图标)并选择 preview(预览),用鼠标悬停在预测数据集名称或状态上方以查看预测预览。您还可以选择 Download(下载),以下载包含完整输出的 CSV 文件。SageMaker Canvas 会为每行数据返回预览。在本教程中,重要性最高的特征为 ExpectedShippingDays 特征。它也会被显示在预测旁,以方便肉眼比较。
    在这里插入图片描述

  3. 在 Predict(预测)页面上,您可以通过选择 Single prediction(单个预测)为单个样本生成预测。SageMaker Canvas 会显示一个界面,您可以在其中为模型中使用的每个输入变量手动输入值。此类型分析适用于假设情景,即,您想知道一或多项变量的值增大或减小时,预测会发生怎样的变化。借助一组列值的预测,SageMaker Canvas 可提供单项特征的重要性。它是对当前样本预测具有最大影响力的列。

在这里插入图片描述
4. 在模型构建流程以后,SageMaker Canvas 会上传所有构件(包括被另存为 Pickle 文件的经过训练的模型、指标、数据集和预测)到 Canvas/studio-user 位置下方的默认 S3 桶。可以检查内容,并视需要将其用于进一步开发。

在这里插入图片描述

清除 AWS 资源

最佳实践是删除我们不再使用的资源,以免产生意外费用。


限时- Amazon SageMaker 提供灵活的免费套餐

Amazon SageMaker - 免费试用两个月,快来认领

面向所有数据科学家和开发人员的机器学习服务。

  • Studio 笔记本上每月 250 个小时的 ml.t3.medium,或者按需笔记本实例上每月 250 个小时的 ml.t2 medium 或 ml.t3.medium

  • SageMaker Data Wrangler 上每月 25 个小时的 ml.m5.4xlarge

  • SageMaker 特征存放区上每月 1000 万写入单位、1000 万读取单位、25GB 存储

  • 训练方面每月 50 个小时的 m4.xlarge 或 m5.xlarge 实例

  • 推理方面每月 125 个小时的 m4.xlarge 或 m5.xlarge 实例

总结

总的来说,这次亚马逊云Amazon SageMaker 的体验还是不错的,特别是优惠力度很大。

目前来说 亚马逊云服务免费体验中心提供100余种云产品和服务,对于广大开发者来说是一件好事,大家可以多多体验。

附录

亚马逊云服务免费体验中心

Amazon SageMaker - 免费试用两个月,快来认领

通过 AWS 管理控制台开始使用

这篇关于什么是Amazon SageMaker及实践体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/938549

相关文章

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

Prometheus与Grafana在DevOps中的应用与最佳实践

Prometheus 与 Grafana 在 DevOps 中的应用与最佳实践 随着 DevOps 文化和实践的普及,监控和可视化工具已成为 DevOps 工具链中不可或缺的部分。Prometheus 和 Grafana 是其中最受欢迎的开源监控解决方案之一,它们的结合能够为系统和应用程序提供全面的监控、告警和可视化展示。本篇文章将详细探讨 Prometheus 和 Grafana 在 DevO

springboot整合swagger2之最佳实践

来源:https://blog.lqdev.cn/2018/07/21/springboot/chapter-ten/ Swagger是一款RESTful接口的文档在线自动生成、功能测试功能框架。 一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,加上swagger-ui,可以有很好的呈现。 SpringBoot集成 pom <!--swagge

vue2实践:el-table实现由用户自己控制行数的动态表格

需求 项目中需要提供一个动态表单,如图: 当我点击添加时,便添加一行;点击右边的删除时,便删除这一行。 至少要有一行数据,但是没有上限。 思路 这种每一行的数据固定,但是不定行数的,很容易想到使用el-table来实现,它可以循环读取:data所绑定的数组,来生成行数据,不同的是: 1、table里面的每一个cell,需要放置一个input来支持用户编辑。 2、最后一列放置两个b

【HarmonyOS】-TaskPool和Worker的对比实践

ArkTS提供了TaskPool与Worker两种多线程并发方案,下面我们将从其工作原理、使用效果对比两种方案的差异,进而选择适用于ArkTS图片编辑场景的并发方案。 TaskPool与Worker工作原理 TaskPool与Worker两种多线程并发能力均是基于 Actor并发模型实现的。Worker主、子线程通过收发消息进行通信;TaskPool基于Worker做了更多场景化的功能封装,例

vue2实践:第一个非正规的自定义组件-动态表单对话框

前言 vue一个很重要的概念就是组件,作为一个没有经历过前几代前端开发的我来说,不太能理解它所带来的“进步”,但是,将它与后端c++、java类比,我感觉,组件就像是这些语言中的类和对象的概念,通过封装好的组件(类),可以通过挂载的方式,非常方便的调用其提供的功能,而不必重新写一遍实现逻辑。 我们常用的element UI就是由饿了么所提供的组件库,但是在项目开发中,我们可能还需要额外地定义一

《C++中的移动构造函数与移动赋值运算符:解锁高效编程的最佳实践》

在 C++的编程世界中,移动构造函数和移动赋值运算符是提升程序性能和效率的重要工具。理解并正确运用它们,可以让我们的代码更加高效、简洁和优雅。 一、引言 随着现代软件系统的日益复杂和对性能要求的不断提高,C++程序员需要不断探索新的技术和方法来优化代码。移动构造函数和移动赋值运算符的出现,为解决资源管理和性能优化问题提供了有力的手段。它们允许我们在不进行不必要的复制操作的情况下,高效地转移资源

C++入门(06)安装QT并快速测试体验一个简单的C++GUI项目

文章目录 1. 清华镜像源下载2. 安装3. 开始菜单上的 QT 工具4. 打开 Qt Creator5. 简单的 GUI C++ 项目5.1 打开 Qt Creator 并创建新项目5.2 设计界面5.3 添加按钮的点击事件5.4 编译并运行项目 6. 信号和槽(Signals and Slots) 这里用到了C++类与对象的很多概念 1. 清华镜像源下载 https://

Vue3+elementplus实现图片上传下载(最强实践)

图片上传子组件: 实现照片的上传,预览,以及转成以逗号隔开的图片地址,即时监听,并发送消息到父组件。 <!-- ImageUploader.vue --> <template><div><el-upload class="avatar-uploader" :http-request="customUpload" :before-upload="beforeUpload":show-fil