Azure 機器學習初學者指南
在我們的初學者指南中探索Azure機器學習,了解如何設置、部署模型以及在Azure生態系統中使用AutoML & ML Studio。Azure 機器學習 (Azure ML) 是一項全面的云服務,專為機器學習項目生命周期而設計,面向數據科學家、機器學習專業人員和工程師。它與 Azure 生態系統無縫集成,為構建、部署和管理機器學習模型提供了一個強大的平臺。
Azure 機器學習概述
Azure 機器學習 (ML) 可加速機器學習生命周期,提供用于模型訓練、部署和管理的工具。它支持協作,允許用戶通過機器學習工作室 UI 共享和查找項目的資產、資源和指標。
該平臺是開放且可互作的,支持常見的 Python 框架,如 PyTorch、TensorFlow、scikit-learn 等,以及 R 和 .NET 支持。
Azure ML 通過提供企業級安全性(包括與 Azure 虛擬網絡、Azure Key Vault 和 Azure 容器注冊表的集成)而脫穎而出,確保機器學習項目的安全性和協作性。
設置 Azure ML 工作區的分步指南
登錄到 Azure 門戶:首先登錄到 Azure 門戶帳戶,或根據需要創建一個帳戶。
在 g 中查找 Azure 機器學習:使用門戶的搜索在服務中查找并選擇“機器學習”。
啟動工作區創建:按“創建”開始設置新的機器學習工作區。
配置基本設置:
- 訂閱:選擇計費 Azure 訂閱。
- 資源組:使用現有組或建立新組來組織 Azure 資源。
- 工作區名稱:為您的工作區分配一個唯一的名稱。
- Region(區域):選擇一個區域,最好靠近您或您的數據源。
設置資源詳細信息:
- 存儲帳戶:為項目文件存儲分配現有帳戶或新帳戶。
- Key Vault:選擇或創建用于安全存儲機密的 Key Vault。
- Application Insights:選擇 Application Insights 資源進行監視。
- Container Registry:為任何容器化模型或服務指定 Container Registry。
查看并部署:檢查您的設置,然后單擊 Azure 的“查看 + 創建”以驗證您的設置。
Azure 機器學習工作室
Azure 機器學習工作室是 Azure 機器學習 (ML) 的核心組件之一。它是一個圖形界面集成開發環境 (IDE),專為在 Azure 上開發和作機器學習工作流而設計。
它簡化了從數據準備到模型部署的過程,提供無代碼或低代碼體驗,使機器學習可供更廣泛的用戶使用,從初學者到經驗豐富的數據科學家。
Azure ML Studio 的核心吸引力在于其簡單性和強大功能。它提供了一個用戶友好的拖放式界面,無需深入的編程知識即可簡化機器學習模型的創建、訓練和部署。
然而,它仍然足夠強大,適用于復雜的工作流程,提供自動化 ML (AutoML) 和 ML Designer 等功能,以實現更可控的自定義管道結構。
ML Studio 還與 Azure 生態系統無縫集成,提供用于監視應用程序和服務、安全存儲機密和管理計算資源的工具。它支持通過共享筆記本和實驗進行協作,增強團隊在機器學習項目上有效協作的能力。
對于喜歡編碼的數據科學家,ML Studio 提供了 Azure SDK,它允許 Python 代碼與 ML Studio 資源和試驗交互,從而在無代碼/低代碼和以代碼為中心的機器學習方法之間架起了一座橋梁。
這種靈活性確保 Azure ML Studio 可以滿足各種需求和偏好,從喜歡可視化編程和簡單拖放作的人,到喜歡編碼提供的控制和可自定義性的人。
Azure 自動化機器學習 (AutoML)
自動化 ML (AutoML) 是 Azure 機器學習的核心組件之一。它以其能夠自動選擇算法和超參數的能力而聞名,從而簡化了模型訓練過程。
用戶只需指定數據集、機器學習任務(例如分類、回歸)和一些可選參數,Azure ML Studio 會處理其余工作,根據提供的標準提供性能最佳的模型。
這不僅加快了開發周期,還使機器學習的訪問民主化,使具有不同專業知識水平的用戶能夠參與 ML 項目。
在 Azure ML 中使用 AutoML 服務非常簡單。請執行以下步驟:
- 導航:轉到“Authoring”部分下的“Automated ML”。
- **New Job(新建作業):**單擊“+ New automated ML job”(新建自動化 ML 作業)。
- 選擇數據:選擇現有數據資產或創建新數據資產,確保其采用表格形式并存在目標列。
- Experiment Setup(實驗設置):為實驗命名并選擇作業的計算類型。
- 配置任務:選擇您的任務類型(分類、回歸或預測)并配置主要指標和阻止模型等設置。
- Launch:完成配置并開始實驗。
使用 Azure ML 中的代碼開發機器學習模型
雖然 Azure ML Studio 的無代碼拖放界面對許多人來說是一個主要吸引力,但它并不總是足以滿足每個場景。對于需要更多自定義和控制的情況,Azure ML 支持通過其 SDK(主要使用 Python)進行開發。
這使數據科學家和開發人員能夠以編程方式構建和管理他們的機器學習工作流程,從而靈活地與現有代碼庫集成并使用高級機器學習技術。
通過 SDK,用戶可以自動執行數據準備、模型訓練、超參數調優和部署等任務,從而滿足更復雜的項目要求。
使用 Azure ML SDK 時,用戶可以直接在本地開發環境(如 VS Code)中使用標準 ML 代碼開發和評估機器學習模型。
此設置允許利用 Azure 的計算資源來執行訓練作業。該過程從創建一個 ml_client 作為與 Azure 工作區的連接開始,從而促進該環境中的資源管理和作業編排。
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential# authenticate
credential = DefaultAzureCredential()SUBSCRIPTION="<SUBSCRIPTION_ID>"
RESOURCE_GROUP="<RESOURCE_GROUP>"
WS_NAME="<AML_WORKSPACE_NAME>"
# Get a handle to the workspace
ml_client = MLClient(credential=credential,subscription_id=SUBSCRIPTION,resource_group_name=RESOURCE_GROUP,workspace_name=WS_NAME,
)
結論
Azure 機器學習因其簡化機器學習項目生命周期的能力而脫穎而出,提供從模型訓練到部署的廣泛功能。它迎合了從數據科學家到應用程序開發人員的廣泛受眾,提供可提高生產力和創新能力的工具。
通過集成到 Azure 生態系統中,Azure ML 可確保項目不僅先進而且安全。該平臺平衡了可訪問性與深度,在 ML Studio 中提供用戶友好的界面,并通過 SDK 提供全面的編碼功能,鞏固了其作為機器學習領域基石的地位