aws訓練快速入門教程

AWS 相關核心概念

簡潔地介紹一下AWS訓練云服務的核心關聯概念:

  1. AWS核心服務層:
  • 基礎設施層: EC2(計算), S3(存儲), RDS(數據庫)等
  • 人工智能層: SageMaker(訓練平臺), AI服務等
  1. 機器學習服務分級:
  • 高層: 預構建AI服務(開箱即用)
  • 中層: SageMaker(主要訓練平臺)
  • 底層: 框架和基礎設施(最大自由度)
  1. SageMaker平臺核心功能:
  • 開發: JupyterNotebook環境
  • 訓練: 內置算法+自定義訓練
  • 部署: 模型托管服務
  1. 基本工作流:
    數據準備(S3) → 開發(Notebook) → 訓練(SageMaker) → 部署(Endpoints)

  2. 入口文檔
    文檔:https://docs.aws.amazon.com/zh_cn/

什么是EC2?(彈性云服務器)

Amazon Elastic Compute Cloud (Amazon EC2) 是一種提供可調節計算容量的 Web 服務 – 簡單來說,就是 Amazon’s 數據中心內的服務器 – 您可以使用它來構建和托管您的軟件系統。

Amazon Elastic Compute Cloud(Amazon EC2)在 Amazon Web Services(AWS)云中按需提供可擴展的計算容量。使用 Amazon EC2 可以降低硬件成本,因此您可以更快地開發和部署應用程序。您可以使用 Amazon EC2 啟動所需數量的虛擬服務器,配置安全性和聯網以及管理存儲。您可以添加容量(縱向擴展)來處理計算密集型任務,例如月度或年度進程或網站流量峰值。如果使用量減少,您可以再次減少容量(縮減)。

EC2 實例是 AWS 云中的虛擬服務器。啟動 EC2 實例時,您指定的實例類型決定了用于您的實例的主機硬件。每種實例類型以不同方式兼顧計算、內存、存儲和網絡資源。有關更多信息,請參閱 Amazon EC2 實例類型指南。
(下圖右邊是實例命名規則)
在這里插入圖片描述
當前EC2支持的一些實例類型:在這里插入圖片描述
更多可參考:https://aws.amazon.com/cn/ec2/instance-types/

什么是S3?(對象存儲服務)

Amazon Simple Storage Service(Amazon S3)是一種對象存儲服務,提供行業領先的可擴展性、數據可用性、安全性和性能。各種規模和行業的客戶都可以使用 Amazon S3 存儲和保護任意數量的數據,用于數據湖、網站、移動應用程序、備份和恢復、歸檔、企業應用程序、IoT 設備和大數據分析。Amazon S3 提供了管理功能,使您可以優化、組織和配置對數據的訪問,以滿足您的特定業務、組織和合規性要求。
詳見:https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/Welcome.html

什么是 Amazon SageMaker AI?(機器學習平臺)

Amazon SageMaker AI 是一項完全托管的機器學習 (ML) 服務。借助 SageMaker AI,數據科學家和開發人員可以快速、自信地構建、訓練 ML 模型并將其部署到可用于生產的托管環境中。它提供了運行 ML 工作流的 UI 體驗,使 SageMaker AI ML 工具可在多個集成開發環境 (IDE) 中使用。

借助 SageMaker AI,您可以存儲和共享數據,而無需構建和管理自己的服務器。這樣,您或您的組織就有更多時間協作構建和開發 ML 工作流程,并更快地完成。SageMaker AI 提供托管 ML 算法,可在分布式環境中高效處理大量數據。SageMaker AI 內置對自帶算法和框架的支持,可提供靈活的分布式訓練選項,以適應您的特定工作流程。只需幾個步驟,您就可以從 SageMaker AI 控制臺將模型部署到安全且可擴展的環境中。

SageMaker平臺核心功能:

  • 開發: JupyterNotebook環境
  • 訓練: 內置算法+自定義訓練
  • 部署: 模型托管服務

通俗來講: 數據存在S3(硬盤)里,用SageMaker(實驗室)處理數據訓練模型,需要更多算力時,自動調用EC2(計算機)

pytorch 訓練入門

寫在前面,建議速讀:
pytorch sagemaker入門訓練文檔
PyTorch 與 Amazon A SageMaker I 配合使用的資源

腳本訓練:
使用sagemaker腳本模式創建你的訓練
將 PyTorch 與 SageMaker Python SDK 結合使用

自定義鏡像:
Building your own algorithm container?
使用 SageMaker AI 自定義 Docker 容器
https://github.com/aws/deep-learning-containers/blob/master/available_images.md
dockerfile 編寫入門

整體的邏輯圖:
在這里插入圖片描述

大白話總結:
Studio可以作為提交訓練任務的入口,通過xx.ipynb作為提交任務的引子,比如以下PyTorch任務代碼提交任務的流程是:
打包source_dir -> 在指定機器解壓source -> 指定機器使用image_uri的運行環境 -> 執行 entry_point

from sagemaker.pytorch import PyTorch
from sagemaker import get_execution_role
role = get_execution_role()image_uri = 'xxxx.dkr.ecr.us-east-1.xxxx
job_name='deepll-train'#勿使用"",可使用"-"train_s3 = {
'model': sagemaker.inputs.TrainingInput(s3_data='s3://xxx-sagemakers/xx'),
'data': sagemaker.inputs.TrainingInput(s3_data='s3://xxxx-sagemaker/data/xxx')
}#任務聲明
pytorch_estimator = PyTorch(base_job_name=job_name,source_dir="./train_dir", # 訓練代碼目錄entry_point="train.py", # the entry point that launch,入口腳本role=role,image_uri=image_uri, #訓練使用的python鏡像instance_type="ml.p4d.24xlarge", #訓練機器類型instance_count=1,# hyperparameters=hyperparameters, # 超參# distribution=distribution,# checkpoint_s3_uri = checkpoint_s3_uri,	# s3 checkpoint 位置,默認對應存儲到訓練image的 /opt/ml/checkpoints# checkpoint_local_path=checkpoint_local_path, # 臨時存儲目錄)pytorch_estimator.fit(train_s3)

總的來說,在開發自己的訓練任務之前,需要準備好3個模塊:訓練鏡像、訓練數據、調整訓練代碼

demo

創建 notebook 過程參考這里:創建 Amazon SageMaker 筆記本實例,這個我就不細講了。

再重復一下一些重點概念:

  1. 核心組件
    SageMaker Studio/Notebook: 開發環境,類似 Jupyter Notebook
    Training Job: 訓練任務
    S3: 數據存儲服務,存放訓練數據和模型
    IAM Role: 權限管理,控制訪問權限
    ECR: 容器鏡像倉庫,存放訓練環境鏡像
  2. 關鍵參數解釋
    entry_point: 訓練腳本入口(比如 train.py)
    source_dir: 代碼目錄,會自動上傳
    role: IAM角色,用于權限控制
    instance_type: 訓練使用的機器類型(如 ml.p3.8xlarge)

接下來,我們從官方的一個pytorch簡單用例(https://github.com/aws/amazon-sagemaker-examples/blob/main/sagemaker-python-sdk/pytorch_mnist/pytorch_mnist.ipynb)入手,快速熟悉使用流程:

# !yes | pip uninstall torchvison
# !pip install -qU torchvision
# !pip3 install -U sagemaker
# !pip3 install -U boto3
# !pip install sagemaker-studio-image-build

step1: 安裝環境

在這里插入圖片描述

step2: 初始化參數

在這里插入圖片描述

step3: 獲取數據

在這里插入圖片描述

step4: 將數據傳到 s3 上

在這里插入圖片描述
通過 sagemaker_session.upload_data 接口,進行上傳,也可以通過 aws 命令行指令。

step5: 準備訓練腳本

在這里插入圖片描述

from sagemaker.pytorch import PyTorchestimator = PyTorch(entry_point="mnist.py",role=role,py_version="py38",framework_version="1.11.0",instance_count=2,instance_type="ml.c5.2xlarge",hyperparameters={"epochs": 1, "backend": "gloo"},
)

step6: 開啟訓練

在這里插入圖片描述
結束標志:

在這里插入圖片描述

補充

訓練數據輸入方式

在這里插入圖片描述

選擇策略

在這里插入圖片描述

Amazon A SageMaker I 管理的訓練存儲路徑

下圖顯示了當您使用 SageMaker Python SDK 估算器類運行訓練作業時 SageMaker AI 如何映射輸入和輸出路徑的示例。
在這里插入圖片描述
SageMaker AI 環境變量和訓練存儲位置的默認路徑參考:https://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/model-train-storage-env-var-summary.html

更多相關:

dockerfile 編寫入門
conda創建、查看、刪除、重命名、遷移虛擬環境

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/73944.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/73944.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/73944.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

對接股票金融數據源API

StockTV 股票市場API StockTV 提供全面的實時和歷史股市數據 API,涵蓋全球股票、外匯、期貨及市場新聞數據,助力投資者精準把握市場動態。 主要功能 實時和歷史股市數據 API 獲取全球股票市場的實時行情、歷史數據及深度分析,支持多語言查詢…

HTML圖像標簽的詳細介紹

1. 常用圖像格式 格式特點適用場景JPEG有損壓縮,文件小,不支持透明適合照片、復雜圖像PNG無損壓縮,支持透明(Alpha通道)適合圖標、需要透明背景的圖片GIF支持動畫,最多256色簡單動畫、低色彩圖標WebP谷歌開…

Bilve 搭建手冊

從零搭建 Bilive 需要提前安裝docker bilive 第一步 docker cli to docker compose # https://www.mklab.cn/utils/docker sudo docker run \-itd \--name bilive_docker \-p 22333:2233 \ghcr.io/timerring/bilive:0.2.10version: 3.1 services:bilive_docker:image: ghcr…

內存高級話題

面試涼經,代碼最近寫的太少了,被面試官屠殺。 痛定思痛,對C新經典中的內存話題進行復現。 new A 與 new A() 的差別 (1)如果是一個空類,這兩行代碼沒什么區別。當然現實中也沒有程序員會寫一個空類。 &am…

2025最全Xshell配置手冊:從零開始下載安裝搭建遠程連接環境

🌈 軟件介紹 Xshell 7 是由韓國 NetSarang 公司開發的一款功能強大的終端模擬器。它專為 Windows 操作系統設計,廣泛應用于遠程連接管理和服務器管理。 📥 軟件下載與準備 1. 官方下載渠道(直接下載,安全無捆綁&…

算法模型從入門到起飛系列——廣度優先遍歷(BFS)

文章目錄 前言一、廣度優先遍歷(BFS)簡介1.1 廣度優先遍歷(BFS)的特點1.2 廣度優先遍歷(BFS)的要素 二、廣度優先遍歷(BFS)& 深度優先遍歷(DFS)2.1 廣度優…

CPP從入門到入土之類和對象Ⅱ

一、六大默認成員函數 默認成員函數是用戶沒有顯式實現,編譯器自動生成的成員函數。 一個類,我們在不寫的情況下,編譯器會默認生成六個默認成員函數 本文詳細介紹構造函數和析構函數 二、構造函數 構造函數雖名為構造函數,但是…

【華三】路由器交換機忘記登入密碼或super密碼的重啟操作

【華三】路由器交換機忘記登入密碼或super密碼的重啟操作 背景步驟跳過認證設備:路由器重啟設備翻譯說明具體操作 跳過當前系統配置重啟設備具體操作 背景 當console口的密碼忘記,或者說本地用戶的密碼忘記,其實這時候是登入不了路由器的&am…

視圖窗口的客戶區

書籍:《Visual C 2017從入門到精通》的2.4.2 MFC應用程序類型 環境:visual studio 2022 內容:【例2.38】視圖窗口的客戶區 說明:以下內容大部分來自騰訊元寶。 1.創建一個單文檔程序 一個簡單的單文檔程序-CSDN博客https://bl…

MySQL原理:邏輯架構

目的:了解 SQL執行流程 以及 MySQL 內部架構,每個零件具體負責做什么 理解整體架構分別有什么模塊每個模塊具體做什么 目錄 1 服務器處理客戶端請求 1.1 MySQL 服務器端邏輯架構說明 2 Connectors 3 第一層:連接層 3.1 數據庫連接池(Conn…

慕慕手記項目日記 首頁數據的渲染,使用js 2025-3-16

慕慕手記項目日記 首頁數據的渲染,使用js 2025-3-16 到這部分我們先測試能不能使用js的方式來動態數據,先寫出一個簡短的demo出來 console.log("index.js文件引入了")var ClientHeight document.documentElement.clientHeight; // 可視區域…

當前企業使用VPN面臨的不足和挑戰

VPN的防護理念無法滿足數字化轉型的需求 古人云:知己知彼,百戰不殆,既然要替換VPN,就要先了解VPN。VPN于1996年起源,98年首次在我國出現,歷經25年的持續演進,直到現在依然廣泛流行。VPN的起源背…

python中ord()和chr()轉化ASCII數值+解密字符串例題

1.ASCII碼簡介 ASCII 即美國信息交換標準代碼(American Standard Code for Information Interchange),是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言。 發展歷程:ASCII 碼于 1963 年首次發布…

AMBA-CHI協議詳解(二十五)

AMBA-CHI協議詳解(一)- Introduction AMBA-CHI協議詳解(二)- Channel fields / Read transactions AMBA-CHI協議詳解(三)- Write transactions AMBA-CHI協議詳解(四)- Other transac…

HTML 區塊和布局

HTML 可以通過 <div> 和 <span>將元素組合起來。 HTML 區塊元素 大多數 HTML 元素被定義為塊級元素或內聯元素。 塊級元素在瀏覽器顯示時&#xff0c;通常會以新行來開始&#xff08;和結束&#xff09;。 實例: <h1>, <p>, <ul>, <table&…

在 STM32F7 系列微控制器中,使用定時器(如 TIM10)實現 10ms 中斷,并在中斷服務函數中調用 ProRelay() 函數

在 STM32F7 系列微控制器中&#xff0c;使用定時器&#xff08;如 TIM10&#xff09;實現 10ms 中斷&#xff0c;并在中斷服務函數中調用 ProRelay() 函數&#xff0c;可以按照以下步驟實現&#xff1a; 1. 配置 TIM10 定時器 首先&#xff0c;需要配置 TIM10 定時器&#xff0…

Web 小項目: 網頁版圖書管理系統

目錄 最終效果展示 代碼 Gitee 地址 1. 引言 2. 留言板 [熱身小練習] 2.1 準備工作 - 配置相關 2.2 創建留言表 2.3 創建 Java 類 2.4 定義 Mapper 接口 2.5 controller 2.6 service 3. 圖書管理系統 3.1 準備工作 - 配置相關 3.2 創建數據庫表 3.2.1 創建用戶表…

Godot讀取json配置文件

概述 在Godot 4.3中讀取JSON配置文件&#xff0c;可以通過以下步驟實現&#xff1a; 步驟說明 讀取文件內容&#xff1a;使用FileAccess類打開并讀取JSON文件。 解析JSON數據&#xff1a;使用JSON類解析讀取到的文本內容。 錯誤處理&#xff1a;處理文件不存在或JSON格式錯…

RabbitMQ八股文

RabbitMQ 核心概念與組件 1. RabbitMQ 核心組件及其作用 1.1 生產者&#xff08;Producer&#xff09; 作用&#xff1a;創建并發送消息到交換機。特點&#xff1a;不直接將消息發送到隊列&#xff0c;而是通過交換機路由。 1.2 交換機&#xff08;Exchange&#xff09; 作…

C語言每日一練——day_7

引言 針對初學者&#xff0c;每日練習幾個題&#xff0c;快速上手C語言。第七天。&#xff08;連續更新中&#xff09; 采用在線OJ的形式 什么是在線OJ&#xff1f; 在線判題系統&#xff08;英語&#xff1a;Online Judge&#xff0c;縮寫OJ&#xff09;是一種在編程競賽中用…