使用機器學習轉型 - AWS Glue

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

使用機器學習轉型

您可以使 AWS Glue 用建立可用來清理資料的自訂機器學習轉換。您可以在 AWS Glue 主控台上建立任務時使用這些轉換。

如需如何建立機器學習轉換的資訊,請參閱使用 AWS Lake Formation FindMatches 比對記錄

轉換屬性

若要檢視現有的機器學習轉換,請登入 AWS Management Console,然後在中開啟AWS Glue主控台https://console.aws.amazon.com/glue/。在 [資料整合] 下的導覽窗格中ETL,選擇 [資料分類工具] > [記錄比對]。

每個轉換的屬性:

轉換名稱

建立轉換時授予它的唯一名稱。

ID

轉換的唯一識別符。

標籤計數

為了協助教導轉換而在標籤檔案中提供的標籤數。

Status

指出轉換為 Ready (準備就緒) 還是 Needs training (需要訓練)。若要在任務中成功執行機器學習轉換,它必須處於就緒

已建立

建立轉換的日期。

已修改

上次更新轉換的日期。

描述

為轉換提供的描述 (如果已提供)。

AWS Glue 版本

使用的 AWS Glue 版本。

執行識別碼

建立轉換時授予它的唯一名稱。

任務類型

機器學習轉換的類型;例如 Find matching records (尋找相符記錄)

Status

指出任務執行的狀態。可能的狀態包括:

  • 啟動

  • 執行中

  • 正在停止

  • 已停止

  • Succeeded

  • 失敗

  • 逾時

錯誤

如果狀態為「失敗」,會顯示錯誤訊息,說明失敗的原因。

新增和編輯機器學習轉換

您可以在 AWS Glue 主控台上檢視、刪除、設定和教導,或調校轉換。在清單中選取轉換旁邊的核取方塊、選擇 Action (動作),然後選擇您希望採取的動作。

建立新的 ML 轉換

若要新增機器學習轉換,請選擇建立轉換。依照新增任務精靈中的說明來進行操作。如需詳細資訊,請參閱使用 AWS Lake Formation FindMatches 比對記錄

步驟 1. 設定轉換屬性。

  1. 輸入名稱和描述 (選用)。

  2. 或者,設定安全組態。請參閱 使用機器學習轉換的資料加密

  3. 或者,進行任務執行設定。任務執行設定可讓您自訂任務的執行方式。選取工作者類型、工作者數量、任務逾時 (以分鐘為單位)、重試次數及 AWS Glue 版本。

  4. 或者設定標籤。標籤是您可以指派給 AWS 資源的標籤。每個標籤皆包含索引鍵與選用值。標籤可用於搜尋和篩選資源或追蹤 AWS 成本。

步驟 2. 選擇資料表和主索引鍵。

  1. 選擇 AWS Glue 型錄資料庫和資料表。

  2. 從選取的資料表中選擇主索引鍵。主索引鍵資料欄通常包含資料來源中每個記錄的唯一識別碼。

步驟 3。選取調整選項。

  1. 對於取回率與精確度,請選擇調整值來調整轉換,以著重於取回率或精確度。依預設,已選取已平衡,但您可以選擇著重於取回率或精確度,或選擇自訂並輸入介於 0.0 到 1.0 (含) 之間的值。

  2. 對於低成本與準確度,請選擇調整值以著重於成本或準確度,或選擇自訂並輸入介於 0.0 到 1.0 (含) 之間的值。

  3. 對於比對強制執行,如果您想要透過強制輸出比對使用的標籤來教導機器學習轉換,請選擇強制輸出以比對標籤

步驟 4. 檢閱和建立。

  1. 檢閱步驟 1 至 3 的選項。

  2. 針對需要修改的任何步驟選擇編輯。選擇建立轉換以完成建立轉換精靈。

使用機器學習轉換的資料加密

將機器學習轉換新增至 AWS Glue,您可以選擇性地指定與資料來源或資料目標相關聯的安全性組態。如果用於存放資料的 Amazon S3 儲存貯體是使用安全組態加密的,請在建立轉換時指定相同的安全組態。

您也可以選擇使用伺服器端加密 AWS KMS (SSE-KMS) 來加密模型和標籤,以防止未經授權的人員檢查模型和標籤。如果您選擇此選項,系統會提示您選擇 AWS KMS key 依名稱,或者您可以選擇 [輸入金鑰] ARN。如果您選擇輸入ARNKMS金鑰,則會出現第二個欄位,您可以在其中輸入KMS金鑰ARN。

注意

目前,下列區域不支援使用自訂加密金鑰的機器學習轉換:

  • 亞太區域 (大阪)ap-northeast-3

檢視轉換詳細資訊

檢視轉換屬性

轉換屬性頁面包含轉換的屬性。它會顯示轉換定義的詳細資訊,例如以下項目:

  • Transform name (轉換名稱) 顯示轉換的名稱。

  • Type (類型) 會列出轉換的類型。

  • Status (狀態) 顯示轉換是否已準備就緒,可在指令碼或任務中使用。

  • Force output to match labels (強制輸出與標籤進行比對) 顯示轉換是否會強制輸出與使用者提供的標籤進行比對。

  • Spark version (Spark 版本) 與您在新增轉換時在 Task run properties (任務執行屬性) 中選擇的 AWS Glue 版本相關。AWS Glue 1.0 和 Spark 2.4 是建議大多數客戶使用的版本。如需詳細資訊,請參閱 AWS Glue 版本

「歷史記錄」、「預估品質」和「標籤」索引標籤

轉換詳細資訊包含您在建立轉換時所定義的資訊。若要查看轉換詳細資訊,請在 Machine learning transforms (機器學習轉換) 清單中選取轉換,然後在下列標籤上檢閱資訊:

  • 歷史記錄

  • Estimate quality (估計品質)

  • 標籤

歷史記錄

History (歷史記錄) 標籤會顯示您的轉換任務執行歷史記錄。為了教導轉換,會執行數種類型的任務。針對每個任務,執行指標包含下列項目:

  • Run ID (執行 ID) 是 AWS Glue 在此任務每次執行時所建立的識別符。

  • Task type (任務類型) 顯示任務執行的類型。

  • Status (狀態) 顯示所列出的每個任務是否成功,其中最上方會列出最近的執行。

  • Error (錯誤) 會在執行未成功時,顯示錯誤訊息的詳細資訊。

  • Start time (開始時間) 會顯示任務開始的日期和時間 (本地時間)。

  • 結束時間會顯示任務結束的日期和時間 (本地時間)。

  • Logs (日誌) 會連結至此次任務執行時所寫入 stdout 的日誌。

    日誌鏈接將帶您到 Amazon CloudWatch 日誌。您可以在此檢視中建立之表格的詳細資訊,以 AWS Glue Data Catalog 及遇到的任何錯誤。您可以在 CloudWatch 主控台上管理記錄保留期。預設的日誌保留期間為 Never Expire。如需有關如何變更保留期的詳細資訊,請參閱 Amazon CloudWatch 日誌使用指南中的變更 CloudWatch 日誌資料保留

  • 標籤檔案會顯示指向所產生標記檔案之 Amazon S3 的連結。

Estimate quality (估計品質)

Estimate quality (估計品質) 標籤會顯示您用來測量轉換品質的指標。透過比較使用標記資料子集轉換比對預測結果與您提供的標籤,來計算預估值。這些預估是近似值。您可以從此標籤呼叫 Estimate quality (估計品質) 任務執行。

Estimate quality (估計品質) 標籤從包括下列屬性的最近一次 Estimate quality (估計品質) 執行顯示指標:

  • Area under the Precision-Recall curve (精確度取回率曲線下方的區域) 是一個單一數字,用來估算轉換的整體品質上限。它獨立於為精確度取回率參數所進行的選擇之外。較高的值表示您有較具吸引力的精確度與取回率取捨。

  • Precision (精確度) 估算轉換正確預測相符項目的頻率。

  • Recall upper limit (取回率上限) 估算針對實際的相符項目,轉換預測為相符的頻率。

  • F1 預估介於 0 和 1 之間轉換的準確度,其中 1 表示最佳準確度。如需詳細資訊,請參閱 Wikipedia 中的 F1 score

  • Column importance (欄重要性) 資料表會顯示每個資料行的資料行名稱和重要性分數。欄重要性可協助您了解欄對模型的貢獻方式,藉由識別記錄中的哪些欄比其他欄更重要。此資料可能會提示您新增或變更標籤集,以提高或降低欄的重要性。

    [重要性] 欄會提供每個欄的數值分數,表示為不大於 1.0 的小數點。

如需了解品質估計與真實品質的資訊,請參閱質量估計與 end-to-end (真實)質量

如需調校您轉換的詳細資訊,請參閱在 AWS Glue 中調校機器學習轉換

質量估計與 end-to-end (真實)質量

AWS Glue 會透過向內部機器學習模型呈現您為其提供比對標籤,但該模型先前從未看過的數組記錄,來預估轉換品質。這些品質估計是機器學習模型的品質函數,會受到您標記以「教導」轉換的記錄數量影響。或 true 調用 (不會由自動計算ML transform) 也受到篩選機制的影響 end-to-end,該ML transform過濾機制會提出與機器學習的模型有多種可能的匹配。

您可以指定較低成本-準確度調整值來重點調整此篩選方法。在您將調整值移向準確度一端時,系統會進行更完整且更詳細的搜尋,以尋找可能是相符項目的記錄組。將更多的記錄對輸入到您的機器學習模型中,而您ML transform的 end-to-end或真實的回收將更接近估計的召回量度。因此,由於比賽的成本/準確度權衡發生變化,比賽 end-to-end 品質的變化通常不會反映在品質估計中。

標籤

標籤是您可以指派給 AWS 資源的標籤。每個標籤皆包含索引鍵與選用值。標籤可用於搜尋和篩選資源或追蹤 AWS 成本。

使用標籤教導轉換

您可以從機器學習轉換詳細資訊頁面選擇教導轉換,以使用標籤 (範例) 教導機器學習轉換。透過提供範例 (稱為標籤) 來教導機器學習演算法時,您可以選擇要使用的現有標籤或建立標記檔案。

螢幕擷取畫面顯示使用標籤教導轉換的精靈畫面。
  • 標記:如果您有標籤,請選擇我有標籤。如果沒有標籤,您仍然可以繼續「產生標記檔案」中的下一步。

  • 產生標記檔案:AWS Glue 從來源資料中擷取記錄並建議潛在的相符記錄。您可以選擇 Amazon S3 儲存貯體來存放產生的標籤檔案。選擇產生標記檔案以開始該程序。完成後,選擇下載標記檔案。下載的檔案將有一欄標籤,您可以在其中填寫標籤。

  • 從 Amazon S3 上傳標籤:從存放標籤檔案的 Amazon S3 儲存貯體中選擇完成的標記檔案。然後,選擇將標籤附加到現有標籤或覆寫現有標籤。選擇從 Amazon S3 上傳標記檔案