实战体验 Amazon SageMaker 机器学习

news2024/11/17 11:28:15

在这里插入图片描述

(声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 亚马逊云科技开发者社区、知乎、自媒体平台、第三方开发者媒体等亚马逊云科技官方渠道)

文章目录

    • Amazon SageMaker 原理
      • 生成示例数据
      • 训练模型
      • 部署模型
    • 实战机器学习
      • 注册账号
      • Studio Lab 项目
      • 项目预览
      • 查看环境
      • 核心代码
      • 计算实例类型
      • CPU 和 GPU
    • 总结

近日,亚马逊云科技在re:Invent 2023会议现场发布了 Amazon SageMaker 的五项新功能,旨在加速构建、训练和部署大型语言模型和其他基础模型。这些新功能将帮助用户更快地进行模型开发和应用部署,提供更强大的工具和资源。本篇文章将为大家介绍 Amazon SageMaker 的工作原理,以及实战使用 Amazon SageMaker 提供的机器学习环境。

Amazon SageMaker 原理

在机器学习中,我们需要训练计算机进行预测或推理。首先,需要使用算法和示例数据来训练模型。然后,将模型集成到应用程序中,以实时、大规模地生成推理。在生产环境中,模型通常会从数百万个示例数据项中学习,并在数百到不到 20 毫秒的时间内生成推论。

下图说明了创建机器学习模型的典型工作流程:

生成示例数据

要训练模型,需要示例数据。需要的数据类型取决于你希望模型解决的业务问题。例如,假设你想要创建一个模型来预测给定手写数字输入图像的数字。要训练这样的模型,需要手写数字的示例图像。

获取数据

通常,你可以将一个或多个数据集拉入单个存储库。

清理数据

为了改进模型训练,请检查数据并根据需要清理数据。

准备或转换数据

为了提高性能,可以执行其他数据转换。例如,可以选择组合属性等等。

训练模型

要训练模型,需要算法或预训练的基础模型。您选择的算法取决于许多因素。对于快速、开箱即用的解决方案,也可以使用 SageMaker 提供的算法之一。

训练模型后,可以对其进行评估以确定推论的准确性是否可以接受。可以使用SageMaker Python SDK 通过可用的 IDE 之一向模型发送推理请求,以训练和评估你的模型。

部署模型

传统上,需要重新设计模型,然后再将其与应用程序集成并部署。借助 SageMaker 托管服务,可以独立部署模型,将其与应用程序代码解耦。

了解了基本原理,下面我们就在实际操作中了解这个功能的强大之处吧。

实战机器学习

下面是 SageMaker 提供的机器学习环境。

其中有 11 中环境,下面我们选择其中的一个进行实战使用。选择 SageMaker Studio 实验室组件。

注册账号

可以注册免费账号,注册也不麻烦只需要填一个邮箱就可以。

填写之后,到邮箱中验证账号

Studio Lab 项目

登陆成功之后,可以看到 Studio Lab 用户界面中的项目描述。如下图

项目中包含了所有文件和文件夹,包括 Jupyter 笔记本。可以完全控制项目中的文件。项目中还包含了基于 JupyterLab 的用户界面。从此界面中,可以与 Jupyter 笔记本进行交互、编辑源代码文件、与 GitHub 集成以及连接到 Amazon S3。

项目预览

打开文件浏览器并显示 Studio Lab 启动器的 Studio Lab 项目。如下图:

查看环境

要在 Studio Lab 中查看环境,你可以使用终端或 Jupyter 笔记本电脑。以下命令将适用于 Studio Lab 终端。

打开文件浏览器面板打开 Studio Lab 终端,选择文件浏览器顶部菜单上的加号 (+) 以打开启动器,然后选择终端。在 Studio Lab 终端上,通过运行以下命令列出 conda 环境。

conda env list

此命令输出 conda 环境的列表及其在文件系统中的位置。当你加入 Studio Lab 时,你会自动激活 studiolab conda 环境。以下是列出的环境的示例。

# conda environments: #
           default                  /home/studio-lab-user/.conda/envs/default
           studiolab             *  /home/studio-lab-user/.conda/envs/studiolab
           studiolab-safemode       /opt/amazon/sagemaker/safemode-home/.conda/envs/studiolab-safemode
           base                     /opt/conda

核心代码

在项目中的实验室实例中新增一条状态为 Pending 的数据,稍等一会儿,状态会自动变为 InService,此时改实例为可使用状态。核心代码如下:

import sagemaker

sess = sagemaker.Session()
bucket = sess.default_bucket()

!aws s3 sync s3://sagemaker-sample-files/datasets/image/caltech-101/inference/ s3://{bucket}/ground-truth-demo/images/

print('Copy and paste the below link into a web browser to confirm the ten images were successfully uploaded to your bucket:')
print(f'https://s3.console.aws.amazon.com/s3/buckets/{bucket}/ground-truth-demo/images/')

print('\nWhen prompted by Sagemaker to enter the S3 location for input datasets, you can paste in the below S3 URL')

print(f's3://{bucket}/ground-truth-demo/images/')

print('\nWhen prompted by Sagemaker to Specify a new location, you can paste in the below S3 URL')

print(f's3://{bucket}/ground-truth-demo/labeled-data/')

计算实例类型

Amazon SageMaker Studio Lab 项目运行时基于 EC2 实例。如果计算实例的可用性无法得到保证,需要额外的存储或计算资源,考虑切换到 Studio。

CPU 和 GPU

Amazon SageMaker Studio Lab 提供 CPU和 GPU 选择。

CPU

其中 CPU 目的是为了高效处理各种任务,但是它可以同时运行的任务数量受到限制。对于机器学习,建议使用 CPU 来执行计算密集型算法,例如时间序列、预测和表格数据。

CPU 计算类型一次最多可运行 4 小时,24 小时内最多可运行 8 小时。

GPU

GPU 目的是为了同时渲染高分辨率图像和视频。建议使用 GPU 来执行深度学习任务,尤其是 Transformer 和计算机视觉。

GPU 计算类型一次最多 4 小时,24 小时内限制为 4 小时。

SageMaker 提供了 11 种机器学习环境,其中选择了 SageMaker Studio 实验室组件进行实战。读者可以通过注册免费账号,验证后即可登录并体验 Studio Lab 项目。

总结

本文介绍了 Amazon SageMaker 的工作原理和实战使用机器学习环境。机器学习的基本工作流程包括生成示例数据、训练模型和部署模型。

Peter DeSantis 的演讲展示了 Amazon在云计算领域持续创新的决心。Serverless不仅是技术的突破,更是满足企业需求的全新范式。这些创新产品和服务将为开发者和企业带来更大的灵活性、效率和成本效益,为云计算的未来开辟了崭新的道路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1314242.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在ViewPager下面加圆点指示(使用selector方式)

前面讲了如何使用ViewPager来做多个可滑动的页面。今天在页面的下面加上一排小圆点,用于指示当前在第几页。效果如下(请忽略颜色和图案): 一、产生一个小圆点的视图 1、在drawable下产生一个选中和不选中颜色不同的小圆点形状&am…

Vue用<br>自定义换行,用v-html渲染,hover的时候title也需要使用自定义换行或者显示一行用省略号展示,hover展示全部

哈喽 大家好啊,最近遇到一个需求&#xff1a; 需求一&#xff1a;用<br>自定义换行&#xff0c;hover的时候title也需要使用自定义换行 然后我便想到了用<br>自定义换行&#xff0c;然后用v-html渲染&#xff0c;则就正常显示了 但是title只能用文本&#xff0c…

IDEA添加Apifox插件后,返回参数不详细解决办法

Apifox官方文档地址(文档中返回的是特殊情况&#xff0c;跟我现在项目的返回不一样&#xff0c;因此需要更改配置) 点击跳转到官方API地址 实现步骤分为两步&#xff1a;第一步&#xff1a;添加配置&#xff0c;第二步使用注解。 1.添加配置 打开Idea设置&#xff0c;添加配置…

GZ015 机器人系统集成应用技术样题2-学生赛

2023年全国职业院校技能大赛 高职组“机器人系统集成应用技术”赛项 竞赛任务书&#xff08;学生赛&#xff09; 样题2 选手须知&#xff1a; 本任务书共 25页&#xff0c;如出现任务书缺页、字迹不清等问题&#xff0c;请及时向裁判示意&#xff0c;并进行任务书的更换。参赛队…

《Linux C编程实战》笔记:文件属性操作函数

获取文件属性 stat函数 在shell下直接使用ls就可以获得文件属性&#xff0c;但是在程序里应该怎么获得呢&#xff1f; #include<sys/types.h> #include <sys/stat.h> #include <unistd.h> int stat(const char *file_name,struct stat *buf); int fstat(i…

Excel中MATCH和INDEX函数的用法详解,以及Vlookup的数组用法

match函数 目的&#xff1a;查询函数&#xff0c;范围单元格中搜索特定的项&#xff0c;然后返回该项在此区域中的相对位置。 For example:让 match 去【隔壁办公室】找【老张】 Match 回复&#xff1a;【老张】坐在【隔壁办公室】第【四】个座位上 公式&#xff1a;【 mat…

nodejs+vue+微信小程序+python+PHP邮件分类系统的设计与实现-计算机毕业设计推荐

方便安装&#xff0c;减少了维护的工作量&#xff0c;只需要通过服务器端的更新就可以实现新系统的发布&#xff0c;提高了邮件分类系统的可扩展性和可移植性。 E-mail是信息化时代最重要的联系工具之一&#xff0c;在日常的工作学习中具有非常重要作用。电子邮件作为互联网技术…

XSS漏洞

一、漏洞原理 允许攻击者在用户的浏览器中执行恶意的脚本。只要是能输入参数的地方都可能产生XSS&#xff0c;比如说评论区&#xff0c;搜索框等。 二、漏洞利用 XXS漏洞常用于钓鱼&#xff0c;Cookie值窃取等操作。可以和文件上传漏洞打组合拳。 靶场&#xff1a;Pikachu靶…

UI5 development on VS Studio code

今天来分享一下如何VS studio code 上UI5开发环境的搭建 1.安装Node.js 路径&#xff1a;Node.js 因安装步骤较为简单&#xff0c;故不在此赘述。 验证方法如下&#xff1a;WINR-->CMD--->node --version 出现下图即可 2. 安装UI5 CLI (为了后面我们方便使用UI5 的命令…

黑豹程序员-axios+springmvc传递数组

问题 奇怪的现象&#xff0c;axios在往后台传递数组时&#xff0c;springmvc竟然接收不到 解决 尝试多次无果&#xff0c;突然看一篇文章写vue中的数组不是真正的数组需要强转转化JSON.stringify 将信将疑下测试了一把&#xff0c;还真的传递成功了。 不光要JSON.stringify…

风速预测(四)基于Pytorch的EMD-Transformer模型

目录 前言 1 风速数据EMD分解与可视化 1.1 导入数据 1.2 EMD分解 2 数据集制作与预处理 2.1 先划分数据集&#xff0c;按照8&#xff1a;2划分训练集和测试集 2.2 设置滑动窗口大小为7&#xff0c;制作数据集 3 基于Pytorch的EMD-Transformer模型预测 3.1 数据加载&am…

leetcode做题笔记2415. 反转二叉树的奇数层

给你一棵 完美 二叉树的根节点 root &#xff0c;请你反转这棵树中每个 奇数 层的节点值。 例如&#xff0c;假设第 3 层的节点值是 [2,1,3,4,7,11,29,18] &#xff0c;那么反转后它应该变成 [18,29,11,7,4,3,1,2] 。 反转后&#xff0c;返回树的根节点。 完美 二叉树需满足…

vue2 tailwindcss jit模式下热更新失效

按照网上教程安装的tailwindcss&#xff0c;但是修改类名后热更新的时候样式没有生效&#xff0c;参考了大佬的文章&#xff0c;解决了该问题。 安装cross-env 修改前 "dev": " vue-cli-service serve", 修改后 "dev": "cross-env TAILWIN…

【通用】Linux,VSCode,IDEA,Eclipse等资源相对位置

正文 不论是 IDEA、Linux、VSCode、cmd等等吧&#xff0c;都遵循这个规则&#xff1a; 如果以斜杠开头&#xff0c;表示从根开始找&#xff1a; IDEA的根是classpath&#xff08;classpath就是项目被编译后&#xff0c;位于 target下的 classes文件夹&#xff0c;或者位于ta…

Android 12.0 Launcher3定制化之动态时钟图标功能实现

1.概述 在12.0的系统产品rom定制化开发中,在Launcher3中的定制化的一些功能中,对于一些产品要求需要实现动态时钟图标功能,这就需要先绘制时分秒时针表盘,然后 每秒刷新一次时钟图标,时钟需要做到实时更新,做到动态时钟的效果,接下来就来分析这个功能的实现 如图: 2.动…

docker镜像与容器的迁移

docker容器迁移有两组命令&#xff0c;分别是 save & load &#xff1a;操作的是images&#xff0c; 所以要先把容器commit成镜像export & import&#xff1a;直接操作容器 我们先主要看看他们的区别&#xff1a; 一 把容器打包为镜像再迁移到其他服务器 如把mysq…

用于自动驾驶的基于深度学习的图像 3D 物体检测:综述

论文地址&#xff1a;https://ieeexplore.ieee.org/abstract/document/10017184/ 背景 准确、鲁棒的感知系统是理解自动驾驶和机器人驾驶环境的关键。自动驾驶需要目标的 3D 信息&#xff0c;包括目标的位置和姿态&#xff0c;以清楚地了解驾驶环境。 摄像头传感器因其颜色和…

力扣每日一题:2415. 反转二叉树的奇数层(2023-12-15)

力扣每日一题 题目&#xff1a;2415. 反转二叉树的奇数层 日期&#xff1a;2023-12-15 用时&#xff1a;6 m 51 s 时间&#xff1a;0 ms 内存&#xff1a;46.97 MB 代码&#xff1a; /*** Definition for a binary tree node.* public class TreeNode {* int val;* T…

Cockpit upload文件上传漏洞(CVE-2023-1313)

0x01 产品简介 Cockpit 是一个自托管、灵活且用户友好的无头内容平台,用于创建自定义数字体验。 0x02 漏洞概述 Cockpit assetsmanager/upload接口处存在文件上传漏洞,攻击者可通过该漏洞在服务器端任意上传代码,写入后门,获取服务器权限,进而控制整个web服务器。 0x0…

如何使用ArcGIS Pro拼接影像

为了方便数据的存储和传输&#xff0c;我们在网上获取到的影像一般都是分块的&#xff0c;正式使用之前需要对这些影像进行拼接&#xff0c;这里为大家介绍一下ArcGIS Pro中拼接影像的方法&#xff0c;希望能对你有所帮助。 数据来源 本教程所使用的数据是从水经微图中下载的…