SageMaker 畫布端對端機器學習工作流程 - Amazon SageMaker

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

SageMaker 畫布端對端機器學習工作流程

重要

本教學課程假設您或您的管理員已建立 AWS 帳戶。如需建立 AWS 帳戶的相關資訊,請參閱開始使用:您是第一次 AWS 使用者嗎?

設定

Amazon SageMaker 網域是管理所有 Amazon SageMaker 環境和資源的集中式位置。網域可做為您工作的虛擬界限 SageMaker,為您的機器學習 (ML) 資源提供隔離和存取控制。

若要開始使用 Amazon SageMaker Canvas,您或您的管理員必須導覽至 SageMaker主控台並建立 Amazon SageMaker 網域。網域擁有執行 SageMaker Canvas 所需的儲存和運算資源。在網域內,您可以將 SageMaker 畫布設定為存取 Amazon S3 儲存貯體和部署模型。請使用下列程序來設定快速網域並建立 SageMaker Canvas 應用程式。

設定 SageMaker 畫布
  1. 導覽至 SageMaker主控台

  2. 在左側導覽列中,選擇 [ SageMaker 畫布]。

  3. 選擇 [建立 SageMaker 網域]。

  4. 選擇 Set up (設定)。網域可能需要幾分鐘的時間來設定。

上述程序使用了快速網域設定。您可以執行進階設定來控制帳戶設定的所有層面,包括權限、整合和加密。如需自訂設定的詳細資訊,請參閱自定義設置到 Amazon SageMaker

依預設,執行快速網域設定會提供部署模型的權限。如果您已透過標準網域設定自訂權限,且需要手動授與模型部署權限,請參閱許可管理

流程建立

Amazon SageMaker Canvas 是一種機器學習平台,可讓使用者建立、訓練和部署機器學習模型,而無需廣泛的編碼或機器學習專業知識。Amazon SageMaker Canvas 的其中一項強大功能,就是能夠從各種來源 (例如 Amazon S3) 匯入和使用大型資料集。

在本教學中,我們使用計程NYC車資料集,透過 Amazon SageMaker Canvas 資料牧馬人資料流程預測每次行程的票價金額。下列程序概述將計程NYC車資料集的修改版本匯入資料流程的步驟。

注意

為了改善處理效果, SageMaker Canvas 會匯入資料的樣本。默認情況下,它隨機採樣 50,000 行。

匯入NYC計程車資料集
  1. 在「 SageMaker 畫布」首頁中,選擇「資料牧馬人」。

  2. 選擇匯入資料

  3. 選取表格式

  4. 選擇資料來源旁邊的工具箱。

  5. 從下拉菜單中選擇 Amazon S3

  6. 對於輸入 S3 端點,指定 s3://amazon-sagemaker-data-wrangler-documentation-artifacts/canvas-single-file-nyc-taxi-dataset.csv

  7. 選擇 [前往]。

  8. 選取資料集旁邊的核取方塊。

  9. 選擇 [預覽資料]。

  10. 選擇 Save (儲存)。

資料品質與洞察報告 1 (範例)

將資料集匯入 Amazon SageMaker Canvas 之後,您可以針對資料樣本產生資料品質和洞察報告。使用它為數據集提供有價值的見解。此報告會執行下列作業:

  • 評估資料集的完整性

  • 識別缺少值和異常值

它可以識別其他可能影響模型效能的潛在問題。它還會評估每個功能與目標變數有關的預測能力,讓您針對嘗試解決的問題識別最相關的功能。

我們可以使用報告中的見解來預測票價金額。將「票價金額」資料欄指定為目標變數,並選取「回歸」作為問題類型,報表會分析資料集是否適合預測連續值 (例如票價)。該報告應該顯示,hour_of_day 等功能對於所選目標變量的預測能力很低,從而為您提供有價值的見解。

請遵循下列程序,取得資料集中 50,000 列範例的「資料品質與見解」報表。

若要取得樣本報告
  1. 從 [資料類型] 節點旁的快顯視窗中選擇 [取得資料見解]。

  2. 對於「分析名稱」,指定報告的名稱。

  3. 選擇「回歸」做為「問題類型」。

  4. 在「目標」欄中,選擇「票價金額」。

  5. 選擇 Create (建立)。

您可以檢閱資料樣本的「資料品質與見解」報告。報告指出份和 hour_of_day 功能無法預測目標變數「票價金額」。

在導覽頂端,選擇要導覽回其的資料流程名稱。

放棄年份和一天中的小時

我們正在使用報告中的見解來刪除份和 hour_of_day 列,以簡化功能空間並可能提高模型效能。

Amazon SageMaker Canvas 提供易於使用的介面和工具來執行此類資料轉換。

使用下列程序,使用 Amazon Canvas 中的資料牧馬人工具,從計程NYC車資料集中刪除年度小時 _of_day 資料欄。 SageMaker

  1. 選擇「資料類型」旁邊的圖示。

  2. 選擇新增步驟

  3. 在搜索欄中,寫下降列

  4. 選擇「管理欄」。

  5. 選擇 [刪除欄]。

  6. 對於要刪除的資料欄,選取度和時段 _of_ day 資料欄。

  7. 選擇「預覽」以檢視轉換如何變更資料。

  8. 選擇新增

您可以使用上述程序做為在 SageMaker Canvas 中新增所有其他轉換的基礎。

數據質量和洞察報告 2(完整數據集)

對於之前的見解報告,我們使用了NYC計程車數據集的樣本。對於第二份報告,我們正在對整個資料集進行全面分析,以找出影響模型效能的潛在問題。

請遵循下列程序,針對整個資料集建立「資料品質和深入解析」報表。

取得整個資料集的報表
  1. 選擇「刪除資料欄」節點旁邊的圖示。

  2. 選擇取得資料深入解析

  3. 對於「分析名稱」,指定報告的名稱。

  4. 選擇「回歸」做為「問題類型」。

  5. 在「目標」欄中,選擇「票價金額」。

  6. 在 [資料大小] 中選擇 [完整資料集]

  7. 選擇 Create (建立)。

以下是深入解析報告中的影像:

重複的列、傾斜的目標和非常低的快速模型分數會列為深入分析 SP

它顯示了以下問題:

  • 重複的資料列

  • 傾斜的目標

重複的列可能會導致資料洩漏,在訓練和測試期間,模型會暴露在相同的資料中。他們可能會導致過於樂觀的性能指標。移除重複的資料列可確保在唯一執行個體上訓練模型,進而降低資料外洩的風險,並提升模型一般化的能力。

偏斜的目標變數分佈 (在此例中為票價金額欄) 可能會導致類別不平衡,而模型可能會偏向多數類別。這可能會導致少數族裔類別的效能不佳,這在準確預測罕見或表示不足的執行個體很重要的情況下尤其有問題。

解決資料品質問題

若要解決這些問題並準備要建模的資料集,您可以搜尋下列轉換並套用它們:

  1. 使用「管理列」轉換指令刪除重複項。

  2. 使用「強大」標準差數值異常值來處理票價金額」欄中的異常值。

  3. 使用標準差數值異常值來處理運送航程距離」與「運送航程持續時間」欄中的異常值。

  4. 使用「編碼」類別,將匯率代碼 ID付款型態額外旗標及收費旗欄編碼為浮點數。

如果您不確定如何套用變形,請參閱 放棄年份和一天中的小時

藉由解決這些資料品質問題並套用適當的轉換,您可以改善資料集的模型適用性。

驗證數據質量和快速模型準確性

在應用轉換以解決數據質量問題(例如刪除重複的行)後,我們創建了最終的數據質量和見解報告。此報表有助於確認套用的轉換是否已解決問題,而且資料集現在處於適合建模的狀態。

檢閱最終的「資料品質與見解」報告時,您應該預期不會看到任何標示的重大資料品質問題。該報告應指出:

  • 目標變數不再偏斜

  • 沒有異常值或重複的行

此外,報表應根據已轉換資料集訓練的基準模型,提供快速的模型分數。此分數可作為模型潛在準確度和效能的初始指標。

使用下列程序來建立「資料品質與見解」報表。

若要建立資料品質與洞察報告
  1. 選擇「刪除資料欄」節點旁邊的圖示。

  2. 選擇取得資料深入解析

  3. 對於「分析名稱」,指定報告的名稱。

  4. 選擇「回歸」做為「問題類型」。

  5. 在「目標」欄中,選擇「票價金額」。

  6. 在 [資料大小] 中選擇 [完整資料集]

  7. 選擇 Create (建立)。

將數據拆分為培訓和測試集

為了訓練模型並評估其效能,我們使用 S plit 資料轉換將資料分割為訓練集和測試集。

根據預設, SageMaker Canvas 會使用隨機分割,但您也可以使用下列分割類型:

  • 有序

  • 分層

  • 按鍵分割

您可以變更「分割」百分比或新增分割。

對於此自學課程,請使用分割中的所有預設設定。您需要雙擊該數據集才能查看其名稱。訓練資料集的名稱為「資料集 (訓練)」。

序數編碼節點旁邊套用「分割」資料轉換。

火車模型

分割資料後,您可以訓練模型。該模型從數據中的模式學習。您可以使用它進行預測或發現見解。

SageMaker 畫布具有快速構建和標準構建。使用標準組建來訓練資料效能最佳的模型。

在開始訓練模型之前,您必須先將訓練資料集匯出為 SageMaker Canvas 資料集。

若要匯出資料集
  1. 在訓練資料集的節點旁邊,選擇圖示,然後選取 [匯出]。

  2. 選取SageMaker 畫布資料集

  3. 選擇「匯出」以匯出資料集。

建立資料集之後,您可以在已建立的 SageMaker Canvas 資料集上訓練模型。如需培訓模型的資訊,請參閱 建立自訂數值或分類預測模型

評估模型並進行預測

訓練您的機器學習模型之後,評估其效能以確保其符合您的需求並在看不見的資料上良好執行至關重要。Amazon SageMaker Canvas 提供方便使用的介面,可評估模型的準確性、檢閱其預測,並深入瞭解其優點和缺點。您可以使用這些洞察來做出有關其部署和潛在改進領域的明智決策。

在部署模型之前,請使用下列程序對其進行評估。

若要評估模型
  1. 選擇我的模型

  2. 選擇您建立的模型。

  3. 版本下,選取與模型對應的版本。

您現在可以檢視模型評估量度。

評估模型後,您可以對新資料進行預測。我們正在使用我們已經建立的測試資料集。

要使用測試數據集進行預測,我們需要將其轉換為 SageMaker Canvas 數據集。Can SageMaker vas 數據集是模型可以解釋的格式。

請使用下列程序,從測試資料集建立 SageMaker Canvas 資料集。

建立 SageMaker 畫布資料集
  1. 在「資料集 (測試)」資料集旁邊,選擇選項圖示。

  2. 選取 [匯出]。

  3. 選取SageMaker 畫布資料集

  4. 在「資料集名稱」中,指定資料集的名稱。

  5. 選擇 Export (匯出)。

請使用下列程序進行預測。它假設您仍在「分析」頁面上。

若要對測試資料集進行預測
  1. 選擇「預測」。

  2. 選擇「手動」。

  3. 選取您已匯出的資料集。

  4. 選擇 [產生預測]。

  5. SageMaker Canvas 完成產生預測後,請選取資料集右側的圖示。

  6. 選擇「預覽」以檢視預測。

部署模型

評估完模型後,您可以將其部署到端點。您可以將請求提交到端點以獲取預測。

請使用下列程序來部署模型。它假設您仍在「預測」頁面上。

若要部署模型
  1. 選擇部署

  2. 選擇 Create deployment (建立部署)

  3. 選擇部署

清除

您已成功完成教學課程。若要避免產生額外費用,請刪除您未使用的資源。

使用下列程序刪除您建立的端點。它假設您仍在「部署」頁面上。

若要刪除端點
  1. 選擇部署右側的選項按鈕。

  2. 選取刪除部署

  3. 選擇 刪除

刪除部署後,刪除您在 SageMaker Canvas 中建立的資料集。請使用下列程序來刪除資料集。

若要刪除資料集
  1. 選擇左側導覽列中的 [資料集]。

  2. 選取您已分析的資料集,以及用於預測的合成資料集。

  3. 選擇 刪除

為避免產生額外費用,您必須登出 SageMaker Canvas。如需詳細資訊,請參閱註銷 Amazon SageMaker 畫布