教學課程:在 Azure Machine Learning 工作室中以無程式碼自動化機器學習預測需求

您會瞭解如何使用 Azure Machine Learning 工作室中的自動化機器學習,建立時間序列預測模型,而不需要撰寫任何一行程式碼。 此模型將會預測自行車共用服務的出租需求。

您將不會在本教學課程中撰寫任何程式碼,而是使用工作室介面來執行定型。 您將了解如何執行下列工作:

  • 建立和載入資料集。
  • 設定和執行自動化 ML 實驗。
  • 指定預測設定。
  • 探索實驗結果。
  • 部署最佳模型。

也請嘗試這些其他模型類型的自動化機器學習:

Prerequisites

登入工作室

在本教學課程中,您會在 Azure Machine Learning Studio 中建立自動化 ML 實驗執行,Azure Machine Learning Studio 是一種整合 Web 介面,可為所有技能等級的資料科學從業人員,提供用以執行資料科學案例的機器學習工具。 Internet Explorer 瀏覽器不支援 Studio。

  1. 登入 Azure Machine Learning Studio

  2. 選取訂用帳戶與您建立的工作區。

  3. 選取 [馬上開始]。

  4. 在左側窗格中,選取 [撰寫] 區段下的 [自動化 ML]。

  5. 選取 [+ 新增自動化 ML 執行]。

建立和載入資料集

在設定實驗之前,請先將資料檔案以 Azure Machine Learning 資料集的形式上傳到工作區。 如此一來,您就可以確保資料會格式化為適合進行實驗。

  1. 在[選取資料集] 表單上,從 [+建立資料集] 下拉式清單中選取 [從本機檔案]。

    1. 在 [基本資訊] 表單上,為資料集提供名稱,並提供選擇性描述。 Azure Machine Learning 工作室中的自動化 ML 目前僅支援表格式資料集,因此資料集類型應預設為 [表格式]。

    2. 選取左下方的 [下一步]。

    3. 在 [資料存放區和檔案選取] 表單上,選取在建立工作區時自動設定的預設資料存放區 [workspaceblobstore (Azure Blob 儲存體)]。 這是您將在其中上傳資料檔案的儲存位置。

    4. 從 [上傳] 下拉式功能表中,選取 [上傳檔案]。

    5. 選擇本機電腦上的 bike-no.csv 檔案。 這是您作為必要條件下載的檔案。

    6. 選取 [下一步]

      上傳完成時,系統會根據檔案類型,預先填入 [設定與預覽] 表單。

    7. 確認 [設定與預覽] 表單的填入方式如下,然後選取 [下一步]

      欄位 描述 教學課程的值
      檔案格式 定義檔案中所儲存資料的版面配置和類型。 Delimited (分隔檔)
      分隔符號 一或多個字元,其用來指定純文字或其他資料流中個別獨立區域之間的界限。 Comma (逗號)
      編碼 識別要用來讀取資料集之字元結構描述資料表的位元。 UTF-8
      資料行標題 指出資料集標題 (如果有的話) 的處理方式。 只有第一個檔案具有標頭
      Skip rows (略過資料列) 指出資料集內略過多少資料列 (如果有的話)。 None
    8. [Schema] \(結構描述\) 表單可讓您進一步設定此實驗的資料。

      1. 在此範例中,請選擇忽略 [臨時] 和 [已註冊] 資料行。 這些資料行是 cnt 資料行的明細,因此不會納入。

      2. 此外,在此範例中,保留 [屬性] 和 [類型] 的預設值。

      3. 選取 [下一步] 。

    9. 在 [確認詳細資料] 表單上,確認資訊符合先前在 [基本資訊] 與 [設定和預覽] 表單上填入的內容。

    10. 選取 [建立] 以完成資料集的建立。

    11. 當您的資料集出現在清單中時,請加以選取。

    12. 選取 [下一步] 。

設定執行

載入並設定資料之後,請設定遠端計算目標,並選取資料中所要預測的資料行。

  1. 如下所示填入 [設定執行] 表單:
    1. 輸入實驗名稱:automl-bikeshare

    2. 選取 [cnt] 作為您要預測的目標資料行。 此資料行代表自行車共享租賃總數。

    3. 選取 [計算叢集] 作為計算類型。

    4. 選取 [+新增] 以設定您的計算目標。 自動化 ML 僅支援 Azure Machine Learning 計算。

      1. 填入 [選取虛擬機器] 表單,以設定您的計算。

        欄位 描述 教學課程的值
        虛擬機器階層 選取您的實驗應具備的優先順序 專用
        虛擬機器類型 為您的計算選取虛擬機器類型。 CPU (中央處理器)
        虛擬機器大小 為您的計算選取虛擬機器大小。 系統會根據您的資料和實驗類型提供建議的大小清單。 Standard_DS12_V2
      2. 選取 [下一步],以填入 [設定設定表單]。

        欄位 描述 教學課程的值
        計算名稱 可識別您計算內容的唯一名稱。 bike-compute
        最小/最大節點數 若要分析資料,您必須指定一個或多個節點。 最小節點數:1
        最大節點數:6
        縮小之前的閒置秒數 叢集自動縮小至最小節點計數之前的閒置時間。 120 (預設值)
        進階設定 用於設定和授權虛擬網路以進行實驗的設定。 None
      3. 選取 [建立] 以取得計算目標。

        這需要幾分鐘來完成。

      4. 建立完成後,請從下拉式清單選取新的計算目標。

    5. 選取 [下一步] 。

選取預測設定

藉由指定機器學習工作類型和組態設定,來完成自動化 ML 實驗的設定。

  1. 在 [工作類型和設定] 表單上,選取 [時間序列預測] 作為機器學習工作類型。

  2. 選取 [日期] 作為 [時間資料行],並讓 [時間序列識別碼] 保持空白。

  3. 頻率是歷程資料的收集頻率。 保持選取 [自動偵測]。

  4. [預測範圍] 是您想要預測到多久以後的未來。 取消選取 [自動偵測],然後在欄位中輸入 14。

  5. 選取 [檢視其他組態設定] 並填入欄位,如下所示。 這些設定可讓您更有效地控制訓練作業,並指定預測的設定。 否則會根據實驗選取範圍和資料來套用預設值。

    其他組態 描述 教學課程的值
    主要計量 用於測量機器學習演算法的評估計量。 標準化均方根誤差
    解釋最佳模型 自動在自動化 ML 所建立的最佳模型上顯示可解釋性。 啟用
    封鎖的演算法 您要從定型作業中排除的演算法 極端隨機樹狀結構
    其他預測設定 這些設定有助於改善模型的正確性。

    預測目標延隔: 您想要將目標變數的延隔往回建構多久
    目標滾動時間範圍:指定將會產生特徵 (例如「最大值」、「最小值」和「總和」) 的滾動時間範圍大小。


    預測目標延隔:無
    目標移動視窗大小:無
    結束準則 如果符合條件,訓練作業就會停止。 訓練作業時間 (小時):3
    計量分數閾值:無
    並行 每個反覆運算已執行的平行反覆運算數目上限 並行反覆項目上限:6

    選取 [儲存]。

  6. 選取 [下一步] 。

  7. [選擇性] 驗證和測試表單,

    1. 選取 [K 折交叉驗證] 作為 驗證類型
    2. 選取 [5] 作為 交叉驗證次數

執行實驗

若要執行實驗,請選取 [完成]。 [執行詳細資料] 畫面隨即開啟,且在頂端的執行編號旁會顯示 [執行狀態]。 此狀態會隨著實驗的進行而更新。 通知也會出現在 Studio 的右上角,以通知您實驗的狀態。

重要

準備實驗執行需要 10-15 分鐘的時間。 執行之後,每個反覆項目需要 2-3 分鐘以上的時間

在生產環境中,此程序需要進行一段時間,因此您可以先離開一會。 在等待時,建議您開始探索 [模型] 索引標籤上已完成測試的演算法。

探索模型

瀏覽至 [模型] 索引標籤,以查看已測試的演算法 (模型)。 根據預設,模型會在完成時依計量分數排序。 在本教學課程中,根據所選計量而獲得最高評分的模型會顯示在清單頂端。

當您等候所有實驗模型完成時,可選取已完成模型的演算法名稱來探索其效能詳細資料。

以下範例在 [詳細資料] 與 [計量] 索引標籤中進行瀏覽,以查看所選模型的屬性、計量與效能圖表。

Run detail

部署模型

Azure Machine Learning Studio 中的自動化機器學習可讓您透過幾個步驟,將最佳模型部署為 Web 服務。 部署是模型的整合,因此可以根據新資料進行預測,並找出潛在的商機區域。

在此實驗中,部署至 Web 服務表示自行車共享公司現在具有可反覆進行且可擴充的 Web 解決方案,而可預測自行車共享租賃需求。

一旦執行完成後,就請選取畫面頂端的 [執行 1],瀏覽回到父執行頁面。

在 [最佳模型摘要] 區段中,會根據標準化根平均平方誤差計量來選取此實驗內容中的最佳模型。

我們會部署此模型,但提醒您部署大約需要 20 分鐘的時間才能完成。 部署程序需要幾個步驟,包括註冊模型、產生資源,以及為 Web 服務設定這些資源。

  1. 選取 最佳模型 以開啟模型特定頁面。

  2. 選取位於畫面左上方區域的 [部署] 按鈕。

  3. 填入 [部署模型] 窗格,如下所示:

    欄位
    部署名稱 bikeshare-deploy
    部署描述 自行車共享需求部署
    計算類型 選取 Azure 計算執行個體 (ACI)
    啟用驗證 停用。
    使用自訂部署資產 停用。 停用可讓系統自動產生預設騎乘者檔案 (評分指令碼) 和環境檔案。

    在此範例中,我們使用 [進階] 功能表中提供的預設值。

  4. 選取 [部署]。

    [執行] 畫面頂端會出現一個綠色的成功訊息,指出已成功啟動部署。 部署進度可以在 [模型摘要] 窗格的 [部署狀態] 底下找到。

一旦部署成功,您就會有可運作的 Web 服務來產生預測。

若要深入了解如何取用新的 Web 服務及如何使用 Power BI 內建的 Azure Machine Learning 支援來測試您的預測,請繼續進行後續步驟

清除資源

部署檔案比資料和實驗檔案大,因此儲存的成本會較高。 如果您想要保留工作區和實驗檔案,那麼僅刪除部署檔案可將成本降到最低。 或者,如果您不打算使用任何檔案,您可以刪除整個資源群組。

刪除部署執行個體

如果您想要保留資源群組與工作區以進行其他教學課程和探索,您可以只從 Azure Machine Learning Studio 刪除部署執行個體。

  1. 移至 Azure Machine Learning Studio。 瀏覽至您的工作區,並在左側的 [資產] 窗格下,選取 [端點]。

  2. 選取您想要刪除的部署,然後選取 [刪除]。

  3. 選取 [繼續]。

刪除資源群組

重要

您所建立的資源可用來作為其他 Azure Machine Learning 教學課程和操作說明文章的先決條件。

如果不打算使用您建立的任何資源,請刪除以免產生任何費用:

  1. 在 Azure 入口網站中,選取最左邊的 [資源群組] 。

  2. 從清單中,選取您所建立的資源群組。

  3. 選取 [刪除資源群組]。

    Screenshot of the selections to delete a resource group in the Azure portal.

  4. 輸入資源群組名稱。 然後選取 [刪除]。

後續步驟

在本教學課程中,您已在 Azure Machine Learning Studio 中使用自動化 ML 來建立及部署可預測自行車共享租賃需求的時間序列預測模型。

請參閱下面這篇文章中的步驟,來了解如何建立 Power BI 支援的結構描述以便能夠取用新部署的 Web 服務:

注意

此自行車共享資料集已因應本教學課程而做了修改。 此資料集當初是從 Kaggle 競賽中取得的,原本則可透過 Capital Bikeshare 來取得。 您也可以在 UCI Machine Learning 資料庫中找到此資料集。

來源:Fanaee-T, Hadi, and Gama, Joao, Event labeling combining ensemble detectors and background knowledge, Progress in Artificial Intelligence (2013): pp. 1-15, Springer Berlin Heidelberg.