建立 Amazon SageMaker 筆記本執行個體 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立 Amazon SageMaker 筆記本執行個體

重要

允許 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 建立 Amazon SageMaker 資源的自訂IAM政策也必須授予許可,才能將標籤新增至這些資源。需要將標籤新增至資源的許可,因為 Studio 和 Studio Classic 會自動標記他們建立的任何資源。如果IAM政策允許 Studio 和 Studio Classic 建立資源,但不允許標記,則嘗試建立資源時可能會發生「AccessDenied」錯誤。如需詳細資訊,請參閱提供標記 SageMaker資源的許可

AWS Amazon 的受管政策 SageMaker 提供建立 SageMaker 資源的許可,已包含在建立這些資源時新增標籤的許可。

Amazon SageMaker 筆記本執行個體是執行 Jupyter Notebook Application. SageMaker manages 建立執行個體和相關資源的 ML 運算執行個體。在筆記本執行個體中使用 Jupyter 筆記本來:

  • 準備和處理資料

  • 編寫程式碼來訓練模型

  • 將模型部署至 SageMaker 託管

  • 測試或驗證模型

若要建立筆記本執行個體,請使用 SageMaker 主控台或 CreateNotebookInstance API。

您選擇的筆記本執行個體類型取決於您使用筆記本執行個體的方式。確保您的筆記本執行個體不受記憶體、 CPU或 IO 的約束。若要將資料集載入筆記本執行個體上的記憶體以進行探索或預先處理,請選擇具有足夠RAM記憶體的執行個體類型,以用於資料集。這需要具有至少 16 GB 記憶體 (.xlarge 或更大) 的執行個體。如果您打算使用筆記本進行運算密集的預先處理,我們建議您選擇運算最佳化執行個體,例如 c4 或 c5。

使用 SageMaker 筆記本時的最佳實務是使用筆記本執行個體來協調其他服務 AWS 。例如,您可以使用筆記本執行個體來管理大型資料集處理。若要這麼做,請使用 Hadoop 呼叫 AWS Glue for ETL(擷取、轉換和載入) 服務或 Amazon EMR 進行映射和資料縮減。您可以使用 AWS 服務作為資料的臨時運算或儲存形式。

您可以使用 Amazon Simple Storage Service 儲存貯體來存放和擷取訓練和測試資料。然後,您可以使用 SageMaker 來訓練和建置模型。因此,筆記本的執行個體類型不會影響模型訓練和測試的速度。

收到請求後, 會 SageMaker 執行下列動作:

  • 建立網路介面 — 如果您選擇選用VPC組態, 會在 中 SageMaker 建立網路介面VPC。它使用您在請求中提供的子網路 ID 來決定要在其中建立子網路的可用區域。 會將您在請求中提供的安全群組與子網路建立 SageMaker 關聯。如需詳細資訊,請參閱將 中的筆記本執行個體VPC連接至外部資源

  • 啟動 ML 運算執行個體 —SageMaker 在 中啟動 ML 運算執行個體 SageMaker VPC。 SageMaker 執行允許它管理筆記本執行個體的組態任務。如果您指定 VPC, 會 SageMaker 啟用 VPC與筆記本執行個體之間的流量。

  • 為常見的深度學習平台安裝 Anaconda 套件和程式庫:SageMaker 安裝安裝程式中包含的所有 Anaconda 套件。如需詳細資訊,請參閱 Anaconda 套件清單 。 SageMaker 也會安裝 TensorFlow 和 Apache MXNet深度學習程式庫。

  • 連接 ML 儲存磁碟區:SageMaker將 ML 儲存磁碟區連接至 ML 運算執行個體。您可以利用該磁碟區做為工作區,清除訓練資料集或暫存驗證、測試和其他資料。選擇任何大小介於 5 GB 到 16384 GB 之間的磁碟區,增量為 1 GB。預設值為 5 GB。ML 儲存磁碟區已加密,因此 SageMaker 無法判斷磁碟區上可用的可用空間量。因此,您可以在更新筆記本執行個體時增加磁碟區大小,但無法減少磁碟區大小。如果您想降低使用中機器學習 (ML) 儲存磁碟區的大小,請建立具有所需大小的新筆記本執行個體。

    只有儲存在 /home/ec2-user/SageMaker 資料夾內的檔案和資料,才會在筆記本執行個體工作階段間保留。當筆記本執行個體停止和重新啟動時,會覆寫儲存在此目錄外的檔案和資料。每個筆記本執行個體的 /tmp 目錄在即時存放區都至少提供 10 GB 的儲存個體。執行個體存放區是非持久性的暫時區塊層級儲存。當執行個體停止或重新啟動時, 會 SageMaker 刪除目錄的內容。此暫時性儲存是筆記本執行個體的根磁碟區的一部分。

    如果筆記本執行個體使用的執行個體類型NVMe支援,客戶可以使用該NVMe執行個體類型可用的執行個體存放區磁碟區。對於具有NVMe存放區磁碟區的執行個體,所有執行個體存放區磁碟區都會在啟動時自動連接至執行個體。如需執行個體類型及其相關NVMe存放磁碟區的詳細資訊,請參閱 Amazon Elastic Compute Cloud 執行個體類型詳細資訊。

    若要讓連接的NVMe儲存磁碟區可供您的筆記本執行個體使用,請完成讓執行個體儲存磁碟區可供您的執行個體使用中的步驟。使用根存取或使用生命週期組態指令碼來完成步驟。

    注意

    NVMe 執行個體存放區磁碟區不是持久性儲存體。此儲存體會隨著執行個體而短暫,且每次啟動具有此儲存體的執行個體時都必須重新設定。

  • 複製範例 Jupyter 筆記本:這些 Python 程式碼範例顯示使用不同演算法和訓練資料集的模型訓練和託管練習。

若要建立 SageMaker 筆記本執行個體:
  1. 在 開啟 SageMaker 主控台https://console.aws.amazon.com/sagemaker/

  2. 選擇筆記本執行個體,然後選擇建立筆記本執行個體

  3. 建立筆記本執行個體頁面上,提供下列資訊:

    1. 對於筆記本執行個體名稱,輸入筆記本執行個體的名稱。

    2. 針對筆記本執行個體類型,請選擇適合您使用案例的執行個體大小。如需支援的執行個體類型和配額清單,請參閱 Amazon SageMaker Service Quotas

    3. 針對平台識別碼,選擇要在其上建立筆記本執行個體的平台類型。此平台類型會指定作業系統和筆記本執行個體建立的 JupyterLab 版本。有關平台識別碼類型的訊息,請參閱Amazon Linux 2 筆記本執行個體。如需版本的相關資訊 JupyterLab,請參閱 JupyterLab 版本控制

    4. (選用) 其他組態可讓進階使用者建立可在建立或啟動執行個體時執行的 shell 指令碼。此指令碼稱為生命週期組態指令碼,可用來設定筆記本的環境或執行其他功能。如需相關資訊,請參閱 使用LCC指令碼自訂 SageMaker 筆記本執行個體

    5. (選用) 其他組態 也可讓您指定連接至筆記本執行個體之機器學習 (ML) 儲存磁碟區的容量 (以 GB 為單位)。您可以選擇 5 GB 到 16,384 GB 之間的大小,增量為 1 GB。您可以使用該磁碟區,以清除訓練資料集,或暫存驗證或其他資料。

    6. (選用) 針對最低IMDS版本 ,請從下拉式清單中選取版本。如果此值設為 v1,則兩個版本都可以搭配筆記本執行個體使用。如果選取 v2,則IMDSv2只能與筆記本執行個體搭配使用。如需 的相關資訊IMDSv2,請參閱使用 IMDSv2

      注意

      自 2022 年 10 月 31 日起, SageMaker 筆記本執行個體的預設最低IMDS版本會從 變更為 IMDSv1 IMDSv2。

      自 2023 年 2 月 1 日起,IMDSv1不再可用於新的筆記本執行個體建立。在此日期之後,您可以建立最小IMDS版本為 2 的筆記本執行個體。

    7. 針對IAM角色 ,選擇帳戶中具有必要許可的現有IAM角色,以存取 SageMaker資源或建立新角色 。如果您選擇建立新的角色 , 會 SageMaker 建立名為 IAM的角色AmazonSageMaker-ExecutionRole-YYYYMMDDTHHmmSS。 AWS 受管政策AmazonSageMakerFullAccess會連接至角色。此角色提供許可,允許筆記本執行個體呼叫 SageMaker 和 Amazon S3。

    8. 對於根存取 ,若要為所有筆記本執行個體使用者提供根存取,請選擇啟用 。若要移除使用者的根存取權,請選擇停用 。如果您提供根存取權,則所有筆記本執行個體使用者都有管理員權限,並可以存取和編輯其中的所有檔案。

    9. (選用) 加密金鑰可讓您使用 AWS Key Management Service (AWS KMS) 金鑰來加密連接至筆記本執行個體的機器學習 (ML) 儲存磁碟區上的資料。如果要在機器學習 (ML) 儲存磁碟區上儲存敏感資訊,請考慮加密資訊。

    10. (選用) 網路可讓您將筆記本執行個體放入虛擬私有雲端 (VPC)。VPC 提供額外的安全性,並限制VPC從 外部來源存取 中的資源VPC。如需 的詳細資訊VPCs,請參閱 Amazon VPC 使用者指南

      若要將筆記本執行個體新增至 VPC:

      1. 選擇 VPCSubnetId

      2. 針對安全群組 ,選擇VPC您 的預設安全群組。

      3. 如果您需要筆記本執行個體才能存取網際網路,請啟用直接網際網路存取。針對直接網際網路存取,選擇啟用。網際網路存取可能會使您的筆記本執行個體較不安全。如需更多資訊,請參閱將 中的筆記本執行個體VPC連接至外部資源

    11. (選用) 若要建立 Git 儲存庫與筆記本執行個體的關聯性,請選擇預設儲存庫和最多三個其他儲存庫。如需更多資訊,請參閱具有 SageMaker 筆記本執行個體的 Git 儲存庫

    12. 選擇建立筆記本執行個體

      在幾分鐘內,Amazon 會 SageMaker 啟動 ML 運算執行個體,在此情況下,會啟動筆記本執行個體,並將 ML 儲存磁碟區連接至該執行個體。筆記本執行個體具備預先設定的 Jupyter 筆記本伺服器和一組 Anaconda 程式庫。如需詳細資訊,請參閱 CreateNotebookInstance API。

  4. 當筆記本執行個體的狀態在 InService 時,就可以在主控台中使用筆記本執行個體。選擇筆記本名稱旁邊的開啟 Jupyter,以開啟傳統 Jupyter 儀表板。

    注意

    為了增強 Amazon SageMaker 筆記本執行個體的安全性,所有區域notebook.region.sagemaker.aws網域都會在網際網路公有字尾清單中註冊 (PSL)。為了進一步安全,我們建議您使用具有__Host-字首的 Cookie,為 SageMaker 筆記本執行個體的網域設定敏感 Cookie。這有助於保護您的網域免受跨網站請求偽造嘗試 (CSRF)。如需詳細資訊,請參閱 mozilla.org 開發人員文件網站上的設定 Cookie 頁面。

    您可以選擇開啟 JupyterLab以開啟 JupyterLab儀表板。儀表板可讓您存取包含完整程式碼演練的筆記本執行個體和範例 SageMaker 筆記本。這些演練示範如何使用 SageMaker 來執行常見的機器學習任務。如需詳細資訊,請參閱存取範例筆記本。如需更多資訊,請參閱控制 SageMaker 筆記本執行個體的根存取權

    如需 Jupyter 筆記本的更多相關資訊,請參閱 Jupyter 筆記本