这是本系列文章的第二篇,旨在通过动手实践,帮助大家学习亚马逊云科技的生成式AI相关技能。通过这些文章,大家将掌握如何利用亚马逊云科技的各类服务来应用AI技术。
那么让我们开始今天的内容吧!
介绍
什么是Amazon SageMaker
- 它是一项完全托管的机器学习服务。
- Amazon SageMaker帮助开发者和数据科学家构建和训练机器学习(ML)模型,以便快速部署在具备生产准备的托管环境中。
- 它消除了机器学习过程中的繁重工作,使开发高质量模型变得更加容易。
- 由于它是完全托管的服务,因此没有维护窗口或计划停机时间。
- 它将代码存储在由安全组保护并且静态加密的机器学习存储卷中。
- 它不会使用或与其他客户共享客户的模型、训练数据和算法。
什么是EC2竞价实例
- 竞价实例是Amazon EC2中的未使用部分,通过使用竞价实例,您可以与按需实例相比节省高达90%的成本,但如果当前价格高于您指定的最高价格,AWS可能会中断您的竞价实例。
- 竞价实例使用与按需实例和预留实例相同的EC2实例(AMI和实例类型)。它最适合用于数据可复现且能够承受随时中断的使用场景。
- 您可以将竞价实例作为按需或预留实例的附加计算容量,前提是容错是可接受的。
- EC2竞价实例可以通过与启动EC2实例相同的方式启动,比如使用竞价队列、自动伸缩组或AWS管理控制台。
- 如果AWS在一小时内终止或停止您的Amazon EC2竞价实例,则不会收取费用。
- 但是,如果您选择自行停止或终止新启动的竞价实例,您将需要支付已使用的总秒数的费用。
架构图
任务详情
- 创建一个Amazon SageMaker笔记本实例
- 打开JupyterLab并将内核环境设置为EC2实例
- 在Apache服务器上执行单元格
任务 1: 创建一个Amazon SageMaker笔记本实例
确保您处于美国东部(弗吉尼亚北部)us-east-1区域,在控制台顶部的服务菜单中点击Amazon SageMaker,然后展开左侧面板中的笔记本选项并点击笔记本实例。
点击“创建笔记本实例”按钮。在“笔记本实例设置”部分,输入笔记本实例名称为 whiz,选择实例类型为 ml.t2.medium,保持其他选项为默认值。在“权限和加密”部分,从下拉菜单中选择 创建新角色,在弹出窗口中确保S3存储桶选项为“任何S3存储桶”,然后点击“创建角色”按钮。
IAM 角色已创建。
保持所有选项为默认值,点击“创建笔记本实例”按钮,笔记本实例将在大约5分钟内启动并运行。
等待状态变为“已服务中”(InService)
任务2:打开JupyterLab并设置内核环境
点击“打开JupyterLab”按钮。
您将被重定向到运行环境,选择左侧面板中的Amazon SageMaker示例笔记本图标。
通过向右拖动主窗口展开左侧面板,滚动并双击左侧面板中的xgboost_managed_spot_training.ipynb文件。
复制创建后会提示选择内核,从下拉菜单中选择conda_python3并点击“选择”。
任务4:执行
第一段代码介绍了变量设置和函数定义,逐个选择单元格并点击“运行选定的单元格并前进”图标。
运行完成后将打印输出,单元格会显示一个编号。
向下滚动并执行名为“Fetching the dataset”的单元格,点击“运行选定的单元格并前进”图标。
单元格运行完成后,将显示输出结果。
执行下一个单元格,点击“运行选定的单元格并前进”图标。
现在继续执行下一个单元格,点击“运行选定的单元格并前进”图标。
执行下一个单元格,点击“运行选定的单元格并前进”图标,训练任务将开始,等待执行完成。
跳过自动模型调优训练,执行倒数第二个单元格,点击“运行选定的单元格并前进”图标,输出将包含检查点的路径。
实例启动并完成训练任务大约需要5分钟,执行完成后将以百分比形式显示使用竞价实例的节省情况。
结尾语
完成训练任务后,您可以查看输出结果,其中将以百分比形式显示使用竞价实例所节省的成本。通过这一流程,您可以体验到Amazon SageMaker结合EC2竞价实例所带来的高效与成本优势。无论是在模型训练还是资源优化方面,这种结合都能为您的机器学习工作流带来更大的灵活性与可控性。
lab内容参考自whizlabs平台的lab实验,如需想要完整练习上面内容推荐去相关平台进行学习。