探索 Azure ML 中的自動化機器學習

在此練習中,您將使用 Azure 機器學習 中的自動化機器學習功能來定型和評估機器學習模型。 接著,您將部署及測試定型的模型。

此練習大約需要 30 分鐘才能完成。

注意 若要完成此實驗室,您需要一個具備系統管理存取權的 Azure 訂用帳戶。

建立 Azure Machine Learning 工作區

若要使用 Azure 機器學習,您必須在 Azure 訂用帳戶中布建 Azure 機器學習 工作區。 然後,您將能夠使用 Azure Machine Learning 工作室 來處理工作區中的資源。

提示:如果您已經有 Azure 機器學習 工作區,您可以使用該工作區並跳至下一個工作。

  1. 使用您的 Microsoft 認證登入 Azure 入口網站https://portal.azure.com

  2. 選取 [+ 建立資源]、搜尋 機器學習,並使用下列設定建立新的 Azure 機器學習 資源:
    • 訂用帳戶您的 Azure 訂用帳戶
    • 資源群組:建立或選取資源群組**。
    • 名稱輸入工作區的唯一名稱。
    • 區域:選取最接近的地理區域**。
    • 儲存體帳戶:留意將為您的工作區建立的預設新儲存體帳戶**。
    • 金鑰保存庫:留意將為您的工作區建立的預設新金鑰保存庫**。
    • 應用程式見解:留意將為您的工作區建立的預設新應用程式見解資源**。
    • 容器登錄:無 (第一次將模型部署到容器時會自動建立**)。
  3. 選取 [檢閱 + 建立]**,然後選取 [建立]**。 等候工作區建立 (可能需要幾分鐘),然後移至已部署的資源。

  4. 選取 [啟動工作室]** (或開啟新的瀏覽器索引標籤,並瀏覽至 https://ml.azure.com,然後使用您的 Microsoft 帳戶登入 Azure Machine Learning 工作室)。 關閉顯示的任何訊息。

  5. 在 Azure Machine Learning 工作室中,您應該會看到新建立的工作區。 如果沒有,請選取 左側功能表中的 [所有工作區 ],然後選取您剛才建立的工作區。

啟用預覽功能

Azure 機器學習 的某些功能處於預覽狀態,而且必須在工作區中明確啟用。

  1. 在 Azure 機器學習 Studio 中,按兩下 [管理預覽功能] (大聲喇叭圖示 - 🕫]。

    功能表上 [管理預覽功能] 按鈕的螢幕快照。

  2. 開啟下列預覽功能:

    • 使用無伺服器計算提交定型作業的引導式體驗

使用自動化機器學習來定型模型

自動化機器學習可讓您嘗試多個演算法和參數來定型多個模型,並找出數據的最佳演算法和參數。 在此練習中,您將使用歷史自行車租用詳細數據的數據集來定型模型,以根據季節性和氣象特徵預測應該在指定一天預期的自行車租用數量。

引文本練習中使用的數據衍生自 Capital Bikeshare ,且會根據已發佈的數據 許可協定 使用。

  1. [Azure Machine Learning 工作室] 中,檢視 [自動化 ML] 頁面 (在 [撰寫 ] 底下)。

  2. 使用下列設定建立新的自動化 ML 作業,並視需要使用 Next 來逐步執行使用者介面:

    基本設定

    • 作業名稱:mslearn-bike-automl
    • 新的實驗名稱:mslearn-bike-rental
    • 描述:適用於自行車出租預測的自動化機器學習
    • ** 標籤:

    工作類型與資料

    • 選取工作類型:回歸
    • 選取資料集:使用下列設定建立新的資料集:
      • 資料類型
        • 名稱:bike-rentals
        • 描述:歷史自行車出租數據
        • 類型:表格式
      • 資料來源
        • 選取 [從 Web 檔案]**
      • Web URL
        • Web URLhttps://aka.ms/bike-rentals
        • 略過資料驗證請不要選取
      • 設定
        • 檔案格式:分隔
        • 分隔符號:逗號
        • 編碼:UTF-8
        • 資料行標題:只有第一個檔案有標題
        • 跳過資料列:無
        • 資料集包含多行資料:請勿選取**
      • 結構描述
        • 包含 [路徑]** 以外的所有欄
        • 檢閱自動偵測到的類型

      建立 自行車出租 數據集之後,請選取它。

    工作設定

    • 工作類型:回歸
    • 資料集:bike-rentals
    • 目標資料列:出租(整數)
    • 其他組態設定:
      • 主要計量:標準化根均平方誤差
      • 說明最佳模型未選取
      • 使用所有支援的模型選取。 您將限制作業只嘗試幾個特定演算法。**
      • 允許的模型:只選取 RandomForestLightGBM - 通常建議盡可能嘗試,但每新增一個模型就會增加執行作業所需的時間。**
    • 限制展開本節
      • 最大試用版:3
      • 並行試用版上限:3
      • 最大節點數:3
      • 計量分數臨界值:0.85(因此,如果模型達到標準化根均方誤差度量分數為0.085或更少,作業就會結束。
      • 逾時:15
      • 反覆專案逾時:5
      • 啟用早期終止已選取
    • 驗證與測試
      • 驗證類型:定型驗證分割
      • 驗證數據的百分比:10
      • 測試數據集:無

    計算

    • 選取計算類型:無伺服器
    • 虛擬機器類型:CPU
    • 虛擬機器層:專用
    • 虛擬機大小:Standard_DS3_V2
    • 實例數目:1
  3. 提交訓練作業。 它會自動啟動。

  4. 請等候作業完成。 這可能需要一些時間,現在或許是喝咖啡休息的好時機!

檢閱最佳模型

當自動化機器學習作業完成時,您可以檢閱其定型的最佳模型。

  1. 在自動化機器學習作業的 [概觀]** 索引標籤上,留意最佳模型摘要。 螢幕擷取畫面:自動化機器學習的最佳模型摘要,其中已框住演算法名稱。

    注意 您可能會看到狀態為「警告:使用者指定的結束分數已達到…」的訊息。 這是預期的訊息。 請繼續下一個步驟。

  2. 選取最佳模型 [演算法名稱]** 下方的文字,以檢視其詳細資料。

  3. 選取 [計量]** 索引標籤,然後選取殘差與 **predicted_true 圖表 (如果尚未選取)。

    檢閱顯示模型效能的圖表。 殘差圖表會將殘差(預測值與實際值之間的差異)顯示為直方圖。 ** predicted_true圖表會比較預測值與 true 值。

部署和測試模型

  1. [模型 ] 索引標籤上,針對自動化機器學習作業所定型的最佳模型,選取 [部署 並使用 Web 服務 ] 選項,以下列設定來部署模型:
    • 名稱:predict-rentals
    • 描述:預測自行車租借
    • 計算類型:Azure 容器執行個體
    • 啟用驗證已選取
  2. 等待部署啟動,這可能需要幾秒鐘的時間。 預測租用端點的 [部署狀態] 將會在頁面的主要部分中指出為 [執行中]。
  3. 等候 [部署狀態 ] 變更為 [ 成功]。 這可能需要 5-10 分鐘的時間。

測試已部署的服務

現在您可以測試已部署的服務。

  1. 在 Azure Machine Learning 工作室 的左側功能表上,選取 [端點],然後開啟預測租用即時端點。

  2. 在預測 租用 即時端點頁面上,檢視 [ 測試 ] 索引卷標。

  3. 在 [ 要測試端點 的輸入資料] 窗格中,以下列輸入數據取代範本 JSON:

     {
       "Inputs": { 
         "data": [
           {
             "day": 1,
             "mnth": 1,   
             "year": 2022,
             "season": 2,
             "holiday": 0,
             "weekday": 1,
             "workingday": 1,
             "weathersit": 2, 
             "temp": 0.3, 
             "atemp": 0.3,
             "hum": 0.3,
             "windspeed": 0.3 
           }
         ]    
       },   
       "GlobalParameters": 1.0
     }
    
  4. 按兩下 [ 測試] 按鈕。

  5. 檢閱測試結果,其中包含根據輸入特徵的預測租用數目 – 如下所示:

     {
       "Results": [
         444.27799000000000
       ]
     }
    

    測試窗格取得輸入資料,並使用您定型的模型,以傳回預測的租賃次數。

讓我們檢閱您已完成的工作。 您已使用歷程記錄自行車租借資料的資料集來定型模型。 此模型會根據季節性和氣象特徵,預測指定一天預期的自行車租借數量。

清理

您建立的 Web 服務會裝載在 Azure 容器執行個體中。 如果您不打算進一步試驗此服務,則應刪除端點,以避免產生不必要的 Azure 使用量。

  1. Azure Machine Learning Studio 的 [端點]** 索引標籤上,選取 **predict-rentals 端點。 然後,選取 [刪除] **,並確認您想要刪除該端點。

    刪除計算可確保您的訂用帳戶不會針對計算資源收費。 不過,只要您的訂用帳戶中有 Azure Machine Learning 工作區,您就必須為了資料儲存空間支付少量的費用。 如果您已完成探索 Azure Machine Learning,則可刪除 Azure Machine Learning 工作區及其相關的資源。

若要刪除您的工作區:

  1. Azure 入口網站的 [資源群組]** 頁面中,開啟在建立 Azure Machine Learning 工作區時所指定的資源群組。
  2. 按一下 [刪除資源群組]**、輸入資源群組名稱以確認要刪除,然後選取 [刪除]**。