在中選擇正確的數據準備工具的建議 SageMaker - Amazon SageMaker

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

在中選擇正確的數據準備工具的建議 SageMaker

機器學習中的數據準備是指收集、預處理和組織原始數據的過程,使其適合於分析和建模。此步驟可確保資料採用機器學習演算法可以有效學習的格式。資料準備工作可能包括處理缺少的值、移除異常值、擴展功能、編碼分類變數、評估潛在偏差以及採取措施來減輕這些問題、將資料分割為訓練和測試集、標籤和其他必要的轉換,以便針對後續機器學習任務最佳化資料的品質和可用性。

選擇一個功能

使用 Amazon 進行資料準備的主要使用案例有 3 個 SageMaker。選擇符合您需求的使用案例,然後參考對應的建議功能

使用案例

以下是執行 Machine Learning 資料準備時的主要使用案例。

  • 使用案例 1:對於偏好視覺化介面的使用者, SageMaker 提供探索、準備和設計特徵以透過 point-and-click 環境進行模型訓練的方法。

  • 使用案例 2:對於想要獲得更多靈活性和控制資料準備能力的使用者而言,將工具 SageMaker 整合到其編碼環境中,以進行探索、轉換和功能工程。

  • 使用案例 3:針對專注於可擴充資料準備的使用者, SageMaker 提供無伺服器功能,以利用 Hadoop/Spark 生態系統進行大數據的分散式處理。

下表概述了與每個機器學習資料準備使用案例相關 SageMaker 功能的主要考量和權衡。若要開始使用,請確定符合您需求的使用案例,並導覽至其建議的 SageMaker功能。

使用案例 1 使用案例 2 使用案例 3
SageMaker 特徵 Amazon 帆布中的數據牧馬人 SageMaker SQL在工作室中準備資料 使用EMR無伺服器準備資料工作室中的應用
描述 SageMaker Canvas 是一種視覺化的低程式碼環境,用於在 SageMaker. 其集成的數據牧馬人工具允許用戶通過 point-and-click 互動組合,轉換和清理數據集。 Studio 中的SQL擴充功能可讓使用者連線到 Amazon Redshift、雪花、Athena 和 Amazon S3,以撰寫臨機操作SQL查詢,並在筆記本中 JupyterLab預覽結果。這些查詢的輸出可以使用操作 Python 以及 Pandas 用於進一步處理、視覺化和轉換為可用於機器學習模型開發的格式。 EMR無伺服器與 Amazon SageMaker Studio 之間的整合可提供可擴展的無伺服器環境,使用開放原始碼架構 (例如 Apache Spark 和 Apache Hive) 進行機器學習的大規模資料準備工作。使用者可以直接從其 Studio 筆記本存取EMR無伺服器應用程式和資料,以大規模執行資料準備工作。
最佳化 使用可視化界面,您可以在其中:

針對表格式資料工作進行最佳化,例如處理遺失值、編碼分類變數以及套用資料轉換。

適用於資料駐留在 Amazon Redshift、雪花、Athena 或 Amazon S3 中且想要結合探索性SQL和 Python 無需學習即可進行數據分析和準備 Spark. 適用於偏好使用自動資源佈建和終止的無伺服器體驗,以擴展圍繞 Apache Spark 迴轉的短時或間歇性互動式工作負載,同時充分利用機器學習功能的 SageMaker使用者。
考量事項
  • 如果您的團隊已經擁有 Python,Spark 或其他語言的專業知識,它可能不是最佳選擇。

  • 如果您需要完整的彈性來自訂轉換以新增複雜的業務邏輯,或需要完全控制資料處理環境,這可能不是最適合的選擇。

  • 此功能僅適用於位於 Amazon Redshift、雪花、Athena 或 Amazon S3 中的結構化資料。

  • 如果查詢結果的大小超過 SageMaker 執行個體記憶體,下列筆記本可引導您開始使用 Athena,以準備資料以便透過 SageMaker 演算法擷取。

  • 對於不熟悉EMR無伺服器應用程式和以 Spark 為基礎的工具的使用者來說,學習曲線可能非常困難。

  • 此功能更適合用於互動式資料準備任務,對於涉及大量資料、與其他服務、自訂應用程式或不同 Apache Spark 以外的各種分散式資料處理架構的大規模、長時間執行或複雜的資料處理需求,效率可能不如 Amazon EMR 叢集。

  • 雖然無伺服器運算對於短期工作而言可能具有成本效益,但是仔細監控和管理成本非常重要,特別是對於長時間執行或資源密集型工作負載。

推薦環境 開始使用 SageMaker 畫布 啟動 Studio 啟動 Studio

其他選項

SageMaker 提供下列額外選項,以準備資料以用於機器學習模型。

  • 使用 Amazon EMR 叢集準備資料: 對於長時間執行、運算密集型的大規模資料處理任務,請考慮使用 Studio 中的 Amazon EMR 叢集。 SageMaker Amazon EMR 叢集專為處理大規模平行化而設計,可擴展到數百或數千個節點,因此非常適合需要 Apache Spark、Hadoop、Hive 和 Presto 等架構的巨量資料工作負載。Amazon EMR 與 SageMaker Studio 的整合可讓您利用 Amazon 的可擴展性和效能EMR,同時在 SageMaker Studio 環境中集中管理完整的 ML 實驗、模型訓練和部署。

  • 使用膠合互動式工作階段準備資料:您可以使用 Apache Spark 架構的無伺服器引擎 AWS Glue 互動式工作階段,可在 SageMaker Studio 中彙總、轉換和準備來自多個來源的資料。

  • 使用 Amazon SageMaker Scription 處理任務找出訓練資料中的偏差: SageMaker 澄清分析您的資料並偵測多個方面的潛在偏差。例如,您可以使用 Studio API 中的澄清來偵測訓練資料是否包含不平衡的表示法,或是標記群組 (例如性別、種族或年齡) 之間的偏差。澄清可以幫助您在訓練模型之前識別這些偏見,以避免將偏見傳播到模型的預測中。

  • 建立、存放和共用功能:Amazon SageMaker 功能商店針對機器學習優化策劃功能的探索和重複使用。它提供了一個集中的存儲庫,用於存儲可以搜索和檢索的特徵數據以進行模型培訓。以標準化格式儲存功能,可在 ML 專案間重複使用。功能商店可管理功能的完整生命週期,包括歷程追蹤、統計資料和稽核追蹤,適用於可擴充且受控管的機器學習功能工程。

  • 使用標籤資料 human-in-the-loop:您可以使用 SageMaker Ground Truth 來管理訓練資料集的資料標籤工作流程。

  • 使用 SageMaker 處理 API:在執行探索性資料分析並建立資料轉換步驟之後,您可以使用處理任務生產轉換程式碼,並使用模型建置管道將準備SageMaker工作流程自動化。SageMaker