什麼是 Azure Machine Learning?

Azure 機器學習 是一項雲端服務,可加速和管理機器學習 (ML) 專案生命週期。 ML 專業人員、數據科學家和工程師可以在日常工作流程中使用它,來定型及部署模型及管理機器學習作業 (MLOps)。

您可以在 機器學習 中建立模型,或使用從開放原始碼平臺建置的模型,例如 PyTorch、TensorFlow 或 scikit-learn。 MLOps 工具可協助您監視、重新定型和重新部署模型。

提示

免費試用! 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶。 試用免費或付費版本的 Azure Machine Learning。 您會獲得在 Azure 服務上花費的點數。 用完帳戶之後,您可以保留帳戶並使用 免費的 Azure 服務。 除非您明確變更您的設定並要求付費,否則您的信用卡永遠不會收費。

Azure 機器學習 是否 神秘?

機器學習 適用於在組織內實作 MLOps 的個人和小組,以在安全且可稽核的生產環境中將 ML 模型帶入生產環境。

數據科學家和 ML 工程師可以使用工具來加速並自動化其日常工作流程。 應用程式開發人員可以使用工具將模型整合到應用程式或服務中。 平台開發人員可以使用一組強固的工具,由長期 Azure Resource Manager API 支援,以建置進階 ML 工具。

在 Microsoft Azure 雲端中工作的企業可以使用熟悉的安全性和角色型訪問控制進行基礎結構。 您可以設定項目來拒絕存取受保護的數據,並選取作業。

團隊中每個人的生產力

ML 專案通常需要具有各種技能集的小組,才能建置和維護。 機器學習 有工具可協助您:

  • 透過共用筆記本、計算資源、無伺服器計算、數據和環境與您的小組共同作業

  • 開發公平性和可解釋性、追蹤和稽核能力以符合譜系和稽核合規性需求的模型

  • 快速且輕鬆地大規模部署 ML 模型,並使用 MLOps 有效率地管理並加以管理

  • 使用內建治理、安全性和合規性,在任何地方執行機器學習工作負載

符合需求的跨相容平臺工具

ML 小組中的任何人都可以使用慣用的工具來完成工作。 無論您是執行快速實驗、超參數微調、建置管線或管理推斷,都可以使用熟悉的介面,包括:

當您在 機器學習 開發週期的其餘部分,調整模型並與其他人共同作業時,您可以在 機器學習 Studio UI 上共用和尋找專案的資產、資源和計量。

Studio

機器學習 Studio 會根據專案類型和過去的 ML 體驗層級,提供多個撰寫體驗,而不需要安裝任何專案。

  • 筆記本:在直接整合於 Studio 的受控 Jupyter Notebook 伺服器中撰寫並執行您自己的程序代碼。

  • 可視化執行計量:使用視覺效果來分析和優化您的實驗。

    Screenshot that shows metrics for a training run.

  • Azure 機器學習 設計工具:使用設計工具來定型和部署 ML 模型,而不需要撰寫任何程序代碼。 拖放數據集和元件以建立 ML 管線。

  • 自動化機器學習UI:瞭解如何使用易於使用的介面建立 自動化ML實驗

  • 數據標記:使用 機器學習 數據標記,以有效率地協調影像標籤文字標記專案。

企業整備和安全性

機器學習 與 Azure 雲端平臺整合,以將安全性新增至 ML 專案。

安全性整合包括:

  • 具有網路安全組的 Azure 虛擬網絡。
  • Azure 金鑰保存庫,您可以在其中儲存安全性秘密,例如記憶體帳戶的存取資訊。
  • 在虛擬網路後方設定 Azure Container Registry。

如需詳細資訊,請參閱 教學課程:設定安全工作區

適用於完整解決方案的 Azure 整合

其他與 Azure 服務的整合支援從端到端的 ML 專案。 其中包含:

  • Azure Synapse Analytics,用來使用 Spark 處理和串流數據。
  • Azure Arc,您可以在其中在 Kubernetes 環境中執行 Azure 服務。
  • 儲存體 和資料庫選項,例如 Azure SQL 資料庫 和 Azure Blob 儲存體。
  • Azure App 服務,可用來部署和管理 ML 支援的 app。
  • Microsoft Purview 可讓您探索和編錄整個組織的數據資產。

重要

Azure 機器學習 不會在您部署的區域以外儲存或處理您的數據。

機器學習專案工作流程

一般而言,模型會開發為具有目標和目標的專案的一部分。 專案通常牽涉到一個以上的人員。 當您實驗數據、演算法和模型時,開發是反覆的。

專案生命週期

專案生命週期可能會因項目而異,但通常看起來像此圖表。

Diagram that shows the machine learning project lifecycle

工作區會組織專案,並允許許多使用者共同作業以達成共同目標。 工作區中的使用者可以輕鬆地從 Studio 使用者介面中的實驗共用其執行結果。 或者,它們可以針對環境和記憶體參考等作業使用版本化資產。

如需詳細資訊,請參閱管理 Azure 機器學習 工作區

當專案準備好進行作業時,使用者的工作可以在ML管線中自動化,並依排程或 HTTPS 要求觸發。

您可以將模型部署至受控推斷解決方案,以進行即時和批次部署,將部署模型通常需要的基礎結構管理抽象化。

定型模型

在 Azure 機器學習 中,您可以在雲端中執行定型腳本,或從頭開始建置模型。 客戶通常會在開放原始碼架構中建置和定型模型,讓他們可以在雲端中運作。

開放且互通

數據科學家可以在 Azure 機器學習 中使用在一般 Python 架構中建立的模型,例如:

  • PyTorch
  • TensorFlow
  • scikit-learn
  • XGBoost
  • LightGBM

也支援其他語言和架構:

  • R
  • .NET

如需詳細資訊,請參閱開放原始碼與 Azure 機器學習 整合。

自動化特徵化和演算法選取

在重複且耗時的程式中,在傳統 ML 中,數據科學家會使用先前的經驗和直覺來選取正確的數據特徵化和演算法來進行定型。 自動化 ML (AutoML) 會加快此程式的速度。 您可以透過 機器學習 Studio UI 或 Python SDK 來使用它。

如需詳細資訊,請參閱 什麼是自動化機器學習?

超參數優化

超參數優化或超參數微調可以是乏味的工作。 機器學習 可以針對任意參數化命令自動執行這項工作,而不需要修改作業定義。 結果會在 Studio 中視覺化。

如需詳細資訊,請參閱 微調超參數

多節點分散式定型

深度學習訓練的效率,有時傳統機器學習訓練工作可以透過多節點分散式訓練大幅改善。 Azure 機器學習 計算叢集和無伺服器計算提供最新的 GPU 選項。

透過 Azure 機器學習 Kubernetes、Azure 機器學習 計算叢集和無伺服器計算支援:

  • PyTorch
  • TensorFlow
  • Mpi

您可以針對 Horovod 或自訂多節點邏輯使用 MPI 散發。 透過使用 Azure Synapse Analytics Spark 叢集的無伺服器 Spark 計算和連結的 Synapse Spark 集區支援 Apache Spark。

如需詳細資訊,請參閱使用 Azure 機器學習 的分散式訓練。

尷尬的平行訓練

調整 ML 專案可能需要調整尷尬的平行模型定型。 此模式很常見於預測需求等案例,其中模型可能會針對許多商店進行定型。

部署模型

若要將模型帶入生產環境,請部署模型。 Azure 機器學習 受控端點會抽象化批次或即時(在線)模型評分所需的基礎結構(推斷)。

即時和批次評分(推斷)

批次評分批次推斷牽涉到叫用具有數據參考的端點。 批次端點會以異步方式執行作業,以平行處理計算叢集上的數據,並儲存數據以供進一步分析。

即時評分在線推斷牽涉到叫用具有一或多個模型部署的端點,以及透過 HTTPS 近乎即時地接收回應。 流量可以分割成多個部署,藉由一開始轉移一些流量,並在建立新模型的信心之後增加,以測試新的模型版本。

如需詳細資訊,請參閱

MLOps:適用於機器學習的DevOps

適用於 ML 模型的 DevOps,通常稱為 MLOps,是開發生產模型的程式。 如果無法重現,模型從定型到部署的生命週期必須可稽核。

ML 模型生命週期

Diagram that shows the machine learning model lifecycle * MLOps.

深入瞭解 Azure 機器學習 中的 MLOps。

啟用 MLOP 的整合

機器學習 是以模型生命周期為考慮而建置。 您可以將模型生命週期稽核到特定的認可和環境。

啟用 MLOps 的一些重要功能包括:

  • git 整合。
  • MLflow 整合。
  • 機器學習管線排程。
  • 自定義觸發程式的 Azure 事件方格 整合。
  • 輕鬆搭配 GITHub Actions 或 Azure DevOps 等 CI/CD 工具使用。

機器學習 也包含監視和稽核的功能:

  • 作業成品,例如程式代碼快照集、記錄和其他輸出。
  • 作業與資產之間的譜系,例如容器、數據和計算資源。

如果您使用 Apache Airflow,airflow-provider-azure-machinelearning 套件是可讓您從 Apache AirFlow 將工作流程提交至 Azure 機器學習 的提供者。

下一步

開始使用 Azure 機器學習: