使用工作室 UI 來設定表格式資料的無程式碼自動化 ML 訓練
在本文中,您會在 Azure Machine Learning 工作室中使用 Azure Machine Learning 自動化 ML 來設定自動化機器學習訓練作業。 此方法可讓您設定作業,而不需要撰寫單行程序碼。 自動化 ML 是一個程序,其中 Azure Machine Learning 會為您的特定資料選取最佳機器學習演算法。 此程序可讓您快速產生機器學習模型。 如需詳細資訊,請參閱 自動化 ML 程序概觀。
本教學課程提供在工作室中使用自動化 ML 的高階概觀。 下列文章提供使用特定機器學習模型的詳細指示:
- 分類:教學課程:在 Studio 中使用自動化 ML 定型分類模型
- 時間序列預測:教學課程:在工作室中使用自動化 ML 預測需求
- 自然語言處理 (NLP):設定自動化 ML 來定型 NLP 模型 (Azure CLI 或 Python SDK)
- 電腦視覺:設定 AutoML 來定型電腦視覺模型 (Azure CLI 或 Python SDK)
- 迴歸:使用自動化 ML 定型迴歸模型 (Python SDK)
必要條件
Azure 訂用帳戶。 您可以建立 Azure Machine Learning 的免費或付費帳戶。
Azure Machine Learning 工作區或計算執行個體。 若要準備這些資源,請參閱快速入門:開始使用 Azure Machine Learning。
要用於自動化 ML 定型作業的資料資產。 本教學課程說明如何選取現有的資料資產,或從資料來源建立資料資產,例如本機檔案、Web URL 或資料存放區。 如需詳細資訊,請參閱 建立和管理資料資產。
重要
訓練資料有兩個需求:
- 資料必須是表格形式。
- 要預測的值 (目標資料行) 必須存在於資料中。
建立實驗
依照下列步驟建立和執行實驗:
登入 Azure Machine Learning 工作室,然後選取您的訂用帳戶和工作區。
在左側選單中,選取 [撰寫] 區段下的 [自動化 ML]:
第一次在工作室中使用實驗時,您會看到空白清單和文件連結。 否則,您會看到最近的自動化 ML 實驗清單,包括使用 Azure Machine Learning SDK 建立的項目。
選取 [新增自動化 ML 作業],以啟動 [提交自動化 ML 作業] 程序。
根據預設,此程序會在 [訓練方法] 索引標籤上選取 [自動定型] 選項,然後繼續前往組態設定。
在 [基本設定] 索引標籤上,輸入必要設定的值,包括作業名稱和實驗名稱。 您也可以視需要提供選擇性設定的值。
選取下一步以繼續。
識別資料資產
在 [工作類型和資料] 索引標籤上,您可以指定實驗的資料資產,以及用來訓練型資料的機器學習模型。
在本教學課程中,您可以使用現有的資料資產,或從本機電腦上的檔案建立新的資料資產。 Studio UI 頁面會根據您選取的資料來源和定型模型類型而變更。
如果您選擇使用現有的資料資產,您可以繼續前往 [設定定型模型] 區段。
若要建立新的資料資產,請遵循下列步驟:
若要從本機電腦上的檔案建立新的資料資產,請選取 [建立]。
在 [資料類型] 頁面上:
- 輸入資料資產名稱。
- 針對 [類型],從下拉式清單中選取 [表格式]。
- 選取 [下一步]。
在 [資料來源] 頁面上,選取 [從本機檔案]。
Machine Learning Studio 會將額外的選項新增至左側功能表,讓您設定資料來源源。
選取 [下一步] 以繼續前往 [目的地儲存體類型] 頁面,您可以在其中指定要上傳資料資產的 Azure 儲存體位置。
您可以指定使用工作區自動建立的預設儲存體容器,或選擇要用於實驗的儲存體容器。
- 針對 [資料存放區類型],選取 [Azure Blob 儲存體]。
- 在資料存放區清單中,選取 [workspaceblobstore]。
- 選取 [下一步]。
在 [檔案和文件夾選取] 頁面上,使用 [上傳檔案或資料夾] 下拉功能表,然後選取 [上傳檔案] 或 [上傳資料夾] 選項。
- 瀏覽至要上傳資料的位置,然後選取 [開啟]。
- 上傳檔案之後,選取 [下一步]。
Machine Learning Studio 會驗證並上傳您的資料。
注意
如果您的資料位於虛擬網路後方,您必須啟用 [略過驗證] 功能,以確保工作區可以存取您的資料。 如需詳細資訊,請參閱在 Azure 虛擬網路中使用 Azure Machine Learning 工作室。
在 [設定] 頁面上檢查上傳的資料,以確保正確性。 頁面上的欄位會根據資料的檔案類型預先填入:
欄位 描述 檔案格式 定義檔案中所儲存資料的版面配置和類型。 分隔符號 識別一或多個字元,其用來指定純文字或其他資料流中個別獨立區域之間的界限。 編碼方式 識別要用來讀取資料集之字元結構描述資料表的位元。 資料行標頭 指出資料集標頭 (如果有的話) 的處理方式。 略過列 指出資料集內略過多少資料列 (如果有的話)。 選取 [下一步] 繼續前往 [結構描述] 頁面。 此頁面也會根據您的 [設定] 選取項目預先填入。 您可以設定每個資料行的資料類型、檢閱資料行名稱,以及管理資料行:
- 若要變更資料行的資料類型,請使用 [類型] 下拉功能表來選取選項。
- 若要從資料資產中排除資料行,請切換資料行的 [包括] 選項。
選取 [下一步] 繼續前往 [檢閱] 頁面。 檢閱您作業的組態設定摘要,然後選取 [建立]。
設定訓練模型
當資料資產準備就緒時,Machine Learning Studio 會返回 [任務類型和資料] 索引卷標,以選取 [提交自動化 ML 作業] 程序。 新的資料資產會列在頁面上。
請遵循下列步驟來完成作業部署:
展開 [選取任務類型作類型] 下拉菜單,然後選擇要用於實驗的定型模型。 這些選項包括分類、迴歸、時間序列預測、自然語言處理 (NLP) 或電腦視覺。 如需這些選項的詳細資訊,請參閱 支援的工作類型描述。
指定定型模型之後,請在清單中選取您的資料集。
選取 [下一步] 以繼續前往 [工作設定] 索引標籤。
在 [目標資料行] 下拉式清單中,選取要用於模型預測的資料行。
根據您的定型模型,設定下列必要設定:
分類:選擇是否要 [啟用深度學習]。
時間序列預測:選擇是否要 [啟用深度學習],並確認您對必要設定的喜好設定:
使用 [時間] 資料行 指定要在模型中使用的時間資料。
選擇是否啟用一或多個 [自動偵測] 選項。 當您取消選取 [自動偵測] 選項時,例如: [自動偵測預測地平線],您可以指定特定值。 預測地平線值指出模型未來可以預測多少時間單位 (分鐘/小時/天/週/月/年)。 模型需要預測的未來越遠,模型的正確性越低。
如需有關如何設定這些設定的詳細資訊,請參閱 使用自動化 ML 將時間序列預測模型定型。
自然語言處理:確認必要設定的喜好設定:
使用 [選取子類型] 選項來設定 NLP 模型的子分類類型。 您可以選擇 [多重類別分類]、[多重標籤分類] 和 [具名實體辨識] (NER)。
在 [整理設定] 區段中,提供 Slack 因數和取樣演算法的值。
在 [搜尋空間] 區段中,設定一組 [模型演算法] 選項。
如需有關如何設定這些設定的詳細資訊,請參閱 設定自動化 ML 來定型 NLP 模型 (Azure CLI 或 Python SDK)。
電腦視覺:選擇是否啟用 [手動掃掠],並確認您對必要設定的喜好設定:
- 使用 [選取子類型] 選項來設定電腦視覺模型的子分類類型。 您可以選擇影像分類 (多類別) 或 (多重標籤)、物件偵測和多邊形 (執行個體分割)。
如需有關如何設定這些設定的詳細資訊,請參閱 設定自動化 ML 來定型電腦視覺模型 (Azure CLI 或 Python SDK)。
指定選擇性設定
Machine Learning Studio 提供選擇性設定,您可以根據您的機器學習模型選取進行設定。 下列各節說明額外的設定。
進行其他設定
您可以選取 [檢視其他組態設定] 選項,以查看準備定型時要對資料執行的動作。
[其他設定] 頁面會根據您的實驗選取和資料顯示預設值。 您可以使用預設值,或設定下列設定:
設定 | 描述 |
---|---|
主要計量 | 識別用於為模型評分的主要計量。 如需詳細資訊,請參閱 模型計量。 |
啟用集成堆疊 | 藉由結合多個模型,而不是使用單一模型,允許集成學習並改善機器學習結果和預測效能。 如需詳細資訊,請參閱 集成模型。 |
使用所有支援的模型 | 使用此選項以指示自動化 ML 是否要在實驗中使用所有支援的模型。 如需詳細資訊,請參閱 每個任務類型支援的演算法。 - 選取此選項以設定 [封鎖的模型] 設定。 - 取消選取此選項以設定 [允許的模型] 設定。 |
封鎖的模型 | (選取 [使用所有支援的模型] 時可用) 使用下拉式清單,然後選取要從定型作業中排除的模型。 |
允許的模型 | (未選取 [使用所有支援的模型] 時可用) 使用下拉式清單,然後選取要為定型作業使用的模型。 重要:僅適用於 SDK 實驗。 |
說明最佳模型 | 選擇此選項,以自動在自動化 ML 所建立的最佳模型上顯示可解釋性。 |
正面類別標籤 | 輸入用於計算二進位計量的自動化 ML 標籤。 |
設定特徵化設定
您可以選取 [檢視特徵化設定] 選項,以查看準備定型時,要對資料執行的動作。
[特徵化] 頁面會顯示資料行的預設特徵化技術。 您可以啟用/停用自動特徵化,以及為您的實驗自訂自動特徵化設定。
選取 [啟用特徵化] 選項以允許設定。
重要
當您的資料包含非數值資料行時,一律會啟用特徵化。
視需要設定每個可用的資料行。 下表摘要說明目前可透過工作室完成的自訂。
資料行 自訂 功能類型 變更所選資料行的實值型別。 插補 選取要在資料中插補遺漏值的值。
特徵化設定不會影響推斷所需的輸入資料。 如果您從定型中排除資料行,則排除的資料行仍然需要作為模型推斷的輸入。
設定作業的限制
[限制] 區段提供下列設定的組態選項:
設定 | 描述 | 值 |
---|---|---|
試用上限 | 指定要在自動化 ML 作業期間嘗試的試用數目上限,其中每個試用版都有不同的演算法和超參數組合。 | 介於 1 到 1,000 之間的整數 |
同時試用上限 | 指定可以平行執行的試用作業數目上限。 | 介於 1 到 1,000 之間的整數 |
最大節點數 | 指定此作業可從所選的計算目標使用的節點數目上限。 | 1 或更多,視計算設定而定 |
計量分數閾值 | 輸入反覆項目計量閾值。 當反覆項目達到閾值時,定型作業就會終止。 請記住,有意義的模型具有大於零的相互關聯。 否則,結果會和猜測一樣。 | 平均計量閾值,介於界限 [0, 10] 之間 |
實驗逾時 (分鐘) | 指定整個實驗可以執行的時間上限。 實驗達到限制之後,系統會取消自動化 ML 作業,包括所有試驗 (子作業)。 | 分鐘數 |
反覆運算逾時 (分鐘) | 指定每個試用作業可以執行的時間上限。 試用作業達到此限制之後,系統會取消試用。 | 分鐘數 |
啟用提前終止 | 當分數在短期內未改善時,請使用此選項結束作業。 | 選取此選項以啟用作業早期結束 |
驗證和測試
[驗證與測試] 區段提供下列設定選項:
指定要用於定型作業的驗證類型。 如果您未明確指定
validation_data
或n_cross_validations
參數,則自動化 ML 會根據在單一資料集training_data
中提供的資料列數目,套用預設的技巧。定型資料大小 驗證技術 大於 20,000 個資料列 套用定型/驗證資料分割。 預設值是以 10% 的初始定型資料集做為驗證集。 接著,該驗證集會用於計量計算。 小於 20,000 個資料列 套用交叉驗證方法。 預設的摺疊數目取決於資料列數目。
- 少於 1,000 個資料列的資料集:會使用 10 個摺疊。
- 具有 1,000 到 20,000 個資料列的資料集:使用三個折疊提供測試資料 (預覽) 來評估自動化 ML 在實驗結束時為您產生的建議模型。 當您提供測試資料集時,測試作業會在實驗結束時進行自動觸發。 此測試作業是自動化 ML 所建議的最佳模型上唯一的作業。 如需詳細資訊,請參閱 檢視遠端測試作業結果 (預覽)。
重要
提供測試資料集來評估產生的模型是預覽功能。 此功能是實驗性預覽功能,而且可能隨時變更。
測試資料視為與訓練和驗證不同,因此不會使得建議模型的測試作業結果產生偏差。 如需詳細資訊,請參閱 定型、驗證和測試資料。
您可以提供自己的測試資料集,或選擇使用訓練資料集的百分比。 測試資料的格式必須是 Azure Machine Learning 表格資料集。
測試資料集的結構描述應該符合訓練資料集。 目標資料行是選用的,但如果沒有指定目標資料行,則不會計算任何測試計量。
測試資料集不應與訓練資料集或驗證資料集相同。
預測作業不支援訓練/測試分割。
設定計算
請遵循下列步驟並設定計算:
選取 [下一步] 以繼續前往 [計算] 索引標籤。
使用 [選取計算類型] 下拉式清單,以選擇資料分析和定型作業的選項。 這些選項包括 [計算叢集]、[計算執行個體] 或 [無伺服器]。
選取計算類型之後,頁面上的其他 UI 會根據您的選取項目而變更:
針對無伺服器計算或新的計算,請設定任何必要的 (*) 設定:
組態設定會根據您的計算類型而有所不同。 下表摘要說明您可能需要設定的各種設定:
欄位 描述 計算名稱 輸入可識別您計算內容的唯一名稱。 地點 指定機器的區域。 虛擬機器優先順序 雖然低優先順序的虛擬機器較便宜,但無法保證計算節點。 虛擬機器類型 選取 CPU 或 GPU 作為虛擬機器類型。 虛擬機器階層 選取實驗的優先順序。 虛擬機器大小 為您的計算選取虛擬機器大小。 最小/最大節點 若要分析資料,您必須指定一個或多個節點。 輸入所計算的節點數上限。 預設值為 Azure Machine Learning Compute 的六個節點。 縮小前的閒置秒數 指定叢集自動縮小至最小節點數之前的閒置時間。 進階設定 這些設定可讓您為您的實驗設定使用者帳戶和現有虛擬網路。 設定必要設定之後,請視需要選取 [下一步] 或 [建立]。
建立新的計算可能會需要數分鐘。 建立完成時,請選擇 [下一步]。
執行實驗並檢視結果
選取 [完成] 以執行實驗。 實驗準備流程最多需要 10 分鐘。 訓練作業可能需要額外 2-3 分鐘不等,才能讓每個管線完成執行。 如果您已指定為最佳建議模型產生 RAI 儀表板,最多可能需要 40 分鐘的時間。
注意
自動化 ML 採用的演算法具有固有的隨機性,可能會導致建議模型的最終計量分數有些微變化,例如正確性。 自動化 ML 也會在必要時對資料 (例如,訓練測試分割、訓練驗證分割或交叉驗證) 執行作業。 因此,如果您以相同設定和主要計量多次執行實驗,您可能會在每個實驗的最終計量分數中看到這些因素造成的變化。
檢視實驗詳細資料
[作業詳細資料] 畫面會在 [詳細資料] 索引標籤中開啟。此畫面會顯示實驗作業的摘要,並會在頂端作業編號的旁邊包含狀態列。
[模型] 索引標籤包含依計量分數所建立的模型清單。 依預設,根據所選計量評分最高的模型會出現在清單頂端。 當定型作業嘗試更多模型時,已練習的模型會新增至清單。 使用此方式快速比較到目前為止所產生的各個模型計量。
檢視訓練作業詳細資料
在任何已完成的模型上向下切入,以查看訓練作業的詳細資料。 您可以在 [計量] 索引標籤上查看特定模型的效能計量圖表。如需詳細資訊,請參閱 評估自動化機器學習實驗結果。 在此頁面上,您也可以找到模型所有屬性的詳細資料,以及相關聯的程式碼、子系作業和影像。
檢視遠端測試作業的結果 (預覽版)
如果您在實驗設定期間在 [驗證和測試] 表單上指定測試資料集或選擇訓練/測試分割,自動化 ML 預設會自動測試建議的模型。 如此一來,自動化 ML 會計算測試計量,以判斷建議模型和其預測的品質。
請遵循下列步驟來檢視建議模型的測試作業計量:
在工作室中,瀏覽至 [模型] 頁面,然後選取最佳模型。
選取 [測試結果 (預覽)] 索引標籤。
選取您想要的作業,然後檢視 [計量] 索引標籤:
若要檢視用來計算測試計量的測試預測,請遵循下列步驟:
瀏覽至頁面底部,選取 [輸出資料集] 下的連結,以開啟資料集。
在 [資料集] 頁面上,選取 [探索] 索引標籤,以檢視該測試作業的預測。
您也可以從 [輸出 + 記錄] 索引標籤來檢視和下載預測檔案。展開 [預測] 資料夾,以找出您的 prediction.csv 檔案。
模型測試作業會產生 predictions.csv 檔案,並儲存在與工作區一起建立的預設資料存放區。 具有相同訂用帳戶的所有使用者都可以看到此資料存放區。 如果測試作業所使用或所建立的任何資訊都必需保密,則不建議使用測試作業。
測試現有的自動化 ML 模型 (預覽)
當您的實驗完成之後,您可以測試自動 ML 為您產生的模型。
如果您想要測試不同的自動化 ML 產生的模型,而不是建議模型,您可以使用下列步驟:
選取現有的自動化 ML 實驗作業。
瀏覽至作業的 [模型] 索引標籤,然後選取想要測試的已完成模型。
在模型的 [詳細資料] 頁面上,選取 [測試模型 (預覽)] 選項,以開啟 [測試模型] 窗格。
在 [測試模型] 窗格中,選取想要用於測試作業的計算叢集和測試資料集。
選取 [測試] 選項。 測試資料集的結構描述應該符合訓練資料集,但 [目標資料行] 是選用項目。
成功建立模型測試作業之後,[詳細資料] 分頁會顯示成功訊息。 選取 [測試結果] 索引標籤,以查看作業的進度。
若要檢視測試作業的結果,請開啟 [詳細資料] 頁面,並依照 檢視遠端測試作業的結果 (預覽) 區段的步驟執行。
負責任 AI 儀表板 (預覽)
若要進一步瞭解您的模型,您可以使用負責任 AI 儀表板來查看模型的各種深入解析。 此 UI 可讓您評估您最佳的自動化 ML 模型並偵錯。 負責任 AI 儀表板會評估模型錯誤和公平性問題、藉由評估您的定型和/或測試資料來診斷這些錯誤發生的原因,並遵循模型說明。 這些深入解析可協助您建立與模型的信任並通過稽核程序。 無法為現有的自動化 ML 模型產生負責任 AI 儀表板。 只有在建立新的自動化 ML 作業時,才會為最佳建議模型建立儀表板。 使用者應該繼續使用模型說明 (預覽),直到為現有模型提供支援為止。
若要針對特定模型產生負責任 AI 儀表板,請遵循下列步驟:
提交自動化 ML 作業時,請前往左側導覽列上的 [工作設定] 區段,選取 [檢視其他組態設定] 選項。
在 [其他設定] 頁面上,選取 [說明最佳模型] 選項:
切換至 [計算] 索引標籤,然後為您的計算選取 [無伺服器] 選項:
作業完成後,瀏覽至自動化 ML 作業的 [模型] 頁面,其中包含已定型的模型清單。 選取 [檢視負責任 AI 儀表板] 連結:
選取的模型的 [負責任 AI] 儀表板隨即出現:
在儀表板中,您會看到四個針對您的自動化 ML 最佳模型啟用的元件:
元件 元件會顯示什麼? 如何讀取圖表? 錯誤分析 當您需要進行下列作業時,請使用錯誤分析:
- 深入了解模型失敗在某個資料集、跨數個輸入和功能維度間的分佈情況。
- 細分彙總效能計量,以自動探索錯誤的世代,進而取得您鎖定目標的風險降低步驟。錯誤分析圖表 模型概觀和公平性 使用此元件來:
- 深入了解跨不同資料世代的模型效能。
- 藉由查看差距計量,可瞭解您的模型公平性問題。 這些計量可以評估及比較以敏感性 (或不敏感) 特徵識別的子群組間的模型行為。模型概觀和公平性圖表 模型說明 使用模型說明元件,藉由查看下列各項來產生人類可理解的機器學習模型預測描述:
- 全域說明:例如,哪些特徵會影響貸款配置模型的整體行為?
- 局部說明:例如,客戶的貸款申請為何通過核准或遭到拒絕?模型說明能力圖表 資料分析 當您需要進行下列作業時,請使用資料分析:
- 選取各種篩選條件將資料切割成不同的維度 (也稱為世代),以探索資料集統計資料。
- 了解資料集在不同世代和特徵群組之間的分佈。
- 判斷資料集的分佈是否影響您對公平性、錯誤分析和因果關係 (衍生自其他儀表板元件) 的調查結果。
- 決定在哪些方面收集更多資料,以減輕由代表性問題、標籤雜訊、特徵雜訊、標籤偏差等類似因素所引起的錯誤。資料總管圖表 您可以進一步建立世代 (即共用指定特性的資料點子群組),將分析焦點放在不同世代的每個元件上。 目前套用至儀表板的世代名稱一律會顯示在儀表板的左上方。 儀表板中的預設檢視為整個資料集,標題預設為所有資料。 如需詳細資訊,請參閱儀表板的全域控制。
編輯和提交作業 (預覽版)
在您想要根據現有實驗的設定建立新實驗的情況下,自動化 ML 提供在 Studio UI 中使用 [編輯並提交] 選項。 這項功能僅限於從 Studio UI 起始的體驗,而且需要新實驗的資料結構描述,以符合原始實驗的資料結構描述。
重要
根據現有實驗複製、編輯和提交新實驗的功能是預覽功能。 此功能是實驗性預覽功能,而且可能隨時變更。
[編輯並提交] 選項會開啟 [建立新的自動化 ML 作業] 精靈,並預先填入資料、計算和實驗設定。 您可以在精靈中的每個索引標籤上設定選項,並視需要編輯新實驗的選取項目。
部署模型
擁有最佳模型之後,您可以將模型部署為 Web 服務,以預測新資料。
注意
若要使用 Python SDK 部署透過 automl
套件產生的模型,您必須註冊模型) 至工作區。
註冊模型之後,您可以在左側功能表上選取 [模型],在工作室中尋找模型。 在模型概觀頁面上,您可以選取 [部署] 選項,並繼續前往本節中的步驟 2。
自動化 ML 可協助您部署模型,而不需要撰寫程式碼。
使用下列其中一種方法起始部署:
根據您所定義的計量準則部署最佳模型:
實驗完成之後,請選取 [作業 1],然後瀏覽至父代作業頁面。
選取 [最佳模型摘要] 區段中所列的模型,然後選取 [部署]。
若要從此實驗部署特定模型反覆項目:
- 從 [模型] 索引標籤中選取所需的模型,然後選取 [部署]。
填入 [部署模型] 窗格:
欄位 值 名稱 輸入部署的唯一名稱。 說明 輸入描述以更清楚地識別部署目的。 計算類型 選取想要部署的端點類型:Azure Kubernetes Service (AKS) 或 Azure 容器執行個體 (ACI)。 計算名稱 (僅適用於 AKS) 選取您要部署到的 AKS 叢集名稱。 啟用驗證 選取允許以權杖為基礎或以金鑰為基礎的驗證。 使用自訂部署資產 若想要上傳自己的評分指令碼和環境檔案,請啟用自訂資產。 否則,自動化 ML 會依預設來為您提供這些資產。 如需詳細資訊,請參閱 如何使用線上端點部署和為機器學習模型評分。 重要
檔案名稱必須介於 1 到 32 個字元之間。 名稱的開頭和結尾必須是英數字元,而且可以包括之間的虛線、底線、點和英數字元。 不允許空格。
進階功能表提供預設部署功能,例如:資料收集和資源使用率設定。 您可以使用此功能表中的選項來覆寫這些預設值。 如需詳細資訊,請參閱監視線上端點。
選取部署。 部署需要約 20 分鐘才能完成。
部署開始之後,[模型摘要] 索引標籤隨即開啟。 您可以在 [部署狀態] 區段底下監視部署進度。
現在您已擁有可運作的 Web 服務,可用來產生預測! 您可以從 Microsoft Fabric 中的端對端 AI 範例查詢服務,以測試預測。