比較 Microsoft 機器學習產品和技術
瞭解 Microsoft 提供的機器學習產品和技術。 比較選項以協助您選擇如何有效地建置、部署和管理機器學習解決方案。
雲端式機器學習產品
下列選項適用於 Azure 雲端中的機器學習。
雲端選項 | 內容 | 產品用途 |
---|---|---|
Azure Machine Learning | 機器學習的受控平臺 | 使用預先定型的模型。 或者,使用 Python 和 CLI 在 Azure 上定型、部署和管理模型 |
Azure 認知服務 | 透過 REST API 和 SDK 實作的預先建置 AI 功能 | 使用標準程式設計語言快速建置智慧型應用程式。 不需要機器學習和數據科學專業知識 |
Azure SQL 受控執行個體 機器學習 服務 | SQL 的資料庫內機器學習服務 | 在 Azure SQL 受控執行個體 內定型和部署模型 |
Azure Synapse Analytics 中的機器學習服務 | 使用機器學習分析服務 | 在 Azure Synapse Analytics 內定型和部署模型 |
在 Azure SQL Edge 中使用 ONNX 的機器學習和 AI | IoT 上的 SQL 機器學習 | 在 Azure SQL Edge 內定型和部署模型 |
Azure Databricks | Apache Spark 型分析平臺 | 使用與開放原始碼機器學習連結庫和 MLflow 平臺整合來建置和部署模型和數據工作流程。 |
內部部署機器學習產品
下列選項適用於內部部署機器學習服務。 內部部署伺服器也可以在雲端的虛擬機中執行。
內部部署選項 | 內容 | 產品用途 |
---|---|---|
SQL Server Machine Learning 服務 | SQL 的資料庫內機器學習服務 | 在 SQL Server 內定型和部署模型 |
SQL Server 巨量資料叢集 上的 機器學習 服務 | 巨量資料叢集 中的機器學習 | 在 SQL Server 巨量資料叢集 上定型和部署模型 |
開發平臺和工具
下列開發平臺和工具可供機器學習使用。
平臺/工具 | 內容 | 產品用途 |
---|---|---|
Azure 資料科學虛擬機器 | 具有預安裝數據科學工具的虛擬機 | 在預先設定的環境中開發機器學習解決方案 |
ML.NET | 開放原始碼、跨平台機器學習 SDK | 開發適用於 .NET 應用程式的機器學習解決方案 |
Windows 機器學習 | Windows 10 機器學習平臺 | 評估 Windows 10 裝置上的定型模型 |
SynapseML | 適用於 Apache Spark 的開放原始碼、分散式、機器學習和微服務架構 | 建立及部署 Scala 和 Python 的可調整機器學習應用程式。 |
適用於 Azure Data Studio 的 機器學習 延伸模組 | 適用於 Azure Data Studio 的開放原始碼和跨平臺機器學習延伸模組 | 管理套件、匯入機器學習模型、進行預測,以及建立筆記本來執行 SQL 資料庫的實驗 |
Azure Machine Learning
Azure 機器學習 是完全受控的雲端服務,可用來大規模定型、部署和管理機器學習模型。 它完全支持開放原始碼技術,因此您可以使用數以萬計的開放原始碼 Python 套件,例如 TensorFlow、PyTorch 和 scikit-learn。 您也可以使用豐富的工具,例如計算實例、Jupyter Notebook 或適用於 Visual Studio Code 的 Azure 機器學習 擴充功能,這是一個免費的擴充功能,可讓您在 Visual Studio Code 中管理資源、模型定型工作流程和部署。 Azure 機器學習 包含能夠輕鬆、效率和精確度自動化模型產生和微調的功能。
使用 Python SDK、Jupyter Notebook、R 和 CLI 進行雲端規模的機器學習。 對於低程式代碼或無程式代碼選項,請使用 Studio 中的 Azure 機器學習 互動式設計工具,以使用預先建置的機器學習演演算法輕鬆快速地建置、測試及部署模型。
免費試用 Azure 機器學習。
項目 | 描述 |
---|---|
類型 | 雲端式機器學習解決方案 |
支援的語言 | Python、R |
機器學習階段 | 模型訓練 部署 MLOps/Management |
主要優點 | 程序代碼第一個 (SDK) 和 Studio 和拖放設計工具 Web 介面撰寫選項。 集中管理文本和執行歷程記錄,讓您輕鬆地比較模型版本。 輕鬆地將模型部署和管理到雲端或邊緣裝置。 |
考量 | 需要熟悉模型管理模型。 |
Azure AI 服務
Azure AI 服務 是一組 預先建置 的 API,可讓您建置使用自然通訊方法的應用程式。 預先建置的字詞建議您不需要攜帶數據集或數據科學專業知識,即可將模型定型在應用程式中使用。 這一切都為您完成,並封裝為 API 和 SDK,讓您的應用程式只需幾行程式代碼即可查看、聆聽、說話、瞭解和解譯使用者需求。 您可以輕鬆地將智慧型手機功能新增至您的應用程式,例如:
- 視覺: 對象偵測、臉部辨識、光學字元辨識(OCR)等。 如需詳細資訊,請參閱 電腦視覺、臉部、Azure AI 檔智慧。
- 語音: 語音轉換文字、文字到語音轉換、說話者辨識等等。 如需詳細資訊,請參閱 語音服務。
- 語言: 翻譯、情感分析、關鍵詞組擷取、語言理解等等。 請參閱 翻譯工具、文字分析、Language Understanding、QnA Maker
- 決策:異常偵測、con 帳篷模式 ration、增強式學習。 如需詳細資訊,請參閱 異常偵測程式、Content Moderator、個人化工具。
使用 Azure AI 服務跨裝置和平台開發應用程式。 API 會持續改善,而且很容易設定。
項目 | 描述 |
---|---|
類型 | 建置智慧型應用程式的 API |
支援的語言 | 視服務而定的各種選項。 標準為 C#、Java、JavaScript 和 Python。 |
機器學習階段 | 部署 |
主要優點 | 使用透過 REST API 和 SDK 提供的預先定型模型來建置智慧型手機應用程式。 各種具有視覺、語音、語言和決策的自然通訊方法模型。 不需要機器學習或數據科學專業知識。 |
SQL 機器學習
SQL 機器學習 會在 Python 和 R 中針對內部部署和雲端中的關係型數據新增統計分析、數據視覺效果和預測性分析。 目前的平臺和工具包括:
- SQL Server Machine Learning 服務
- SQL Server 巨量資料叢集 上的 機器學習 服務
- Azure SQL 受控執行個體 機器學習 服務
- Azure Synapse Analytics 中的機器學習服務
- 在 Azure SQL Edge 中使用 ONNX 的機器學習和 AI
- 適用於 Azure Data Studio 的 機器學習 擴充功能
當您需要 SQL 中關係型資料的內建 AI 和預測性分析時,請使用 SQL 機器學習服務。
項目 | 描述 |
---|---|
類型 | 關係型數據的內部部署預測性分析 |
支援的語言 | Python、R、SQL |
機器學習階段 | 資料準備 模型訓練 部署 |
主要優點 | 將預測邏輯封裝在資料庫函式中,讓您輕鬆地納入數據層邏輯。 |
考量 | 假設 SQL 資料庫是應用程式的數據層。 |
Azure 資料科學虛擬機器
Azure 資料科學虛擬機器 是 Microsoft Azure 雲端上的自定義虛擬機環境。 適用於 Windows 和 Linux Ubuntu 的版本。 環境專為執行數據科學及開發機器學習解決方案而建置。 它有許多熱門的數據科學、機器學習架構,以及其他預安裝及預先設定的工具,可開始建置智慧型手機應用程式以進行進階分析。
當您需要在單一節點上執行或裝載作業時,請使用 資料科學 VM。 或者,如果您需要在單一計算機上遠端相應增加處理。
項目 | 描述 |
---|---|
類型 | 適用於數據科學的自定義虛擬機環境 |
主要優點 | 縮短安裝、管理及疑難解答數據科學工具和架構的時間。 包含所有常用工具和架構的最新版本。 虛擬機選項包括具有圖形處理單位 (GPU) 功能的高度可調整影像,以進行密集的數據模型化。 |
考量 | 離線時無法存取虛擬機。 執行虛擬機會產生 Azure 費用,因此您必須小心,只在需要時才執行。 |
Azure Databricks
Azure Databricks 是以 Apache Spark 為基礎的分析平臺,已針對 Microsoft Azure 雲端平台優化。 Databricks 與 Azure 整合,可提供單鍵設定、簡化的工作流程,以及互動式工作區,可讓數據科學家、數據工程師和商務分析師共同作業。 在 Web 型筆記本中使用 Python、R、Scala 和 SQL 程式代碼來查詢、可視化和模型數據。
當您想要在 Apache Spark 上建置機器學習解決方案時,請使用 Databricks。
項目 | 描述 |
---|---|
類型 | Apache Spark 型分析平臺 |
支援的語言 | Python、R、Scala、SQL |
機器學習階段 | 資料準備 資料前置處理 模型訓練 模型微調 模型推斷 管理 部署 |
ML.NET
ML.NET 是開放原始碼和跨平臺機器學習架構。 透過 ML.NET,您可以建置自定義機器學習解決方案,並將其整合到 .NET 應用程式中。 ML.NET 提供不同層級的互操作性與 TensorFlow 和 ONNX 等熱門架構的互操作性,以進行定型和評分機器學習和深度學習模型。 對於定型影像分類模型等資源密集型工作,您可以利用 Azure 在雲端中定型模型。
當您想要將機器學習解決方案整合到 .NET 應用程式中時,請使用 ML.NET。 針對程式代碼優先體驗和模型產生器,或針對低程式代碼體驗選擇 CLI。
項目 | 描述 |
---|---|
類型 | 使用 .NET 開發自定義機器學習應用程式的開放原始碼跨平台架構 |
支援的語言 | C#、F# |
機器學習階段 | 資料準備 訓練 部署 |
主要優點 | 不需要數據科學和機器學習體驗 使用熟悉的工具 (Visual Studio、Microsoft Visual Studio Code) 和語言 部署 .NET 執行的位置 可延伸 可調整 本機優先體驗 |
Windows 機器學習
Windows 機器學習 推斷引擎可讓您在應用程式中使用定型機器學習模型,在 Windows 10 裝置本機評估定型模型。
當您想要在 Windows 應用程式中使用定型機器學習模型時,請使用 Windows 機器學習服務。
項目 | 描述 |
---|---|
類型 | Windows 裝置中定型模型的推斷引擎 |
支援的語言 | C#/C++、JavaScript |
SynapseML
SynapseML (先前稱為 MMLSpark) 是一個開放原始碼連結庫,可簡化建立可大幅調整的機器學習管線。 SynapseML 為各種不同的機器學習工作提供 API,例如文字分析、視覺、異常偵測,以及其他許多工作。 SynapseML 建置在 Apache Spark 分散式運算架構上,並共用與 SparkML/MLLib 連結庫相同的 API,可讓您順暢地將 SynapseML 模型內嵌至現有的 Apache Spark 工作流程。
SynapseML 會將許多深度學習和數據科學工具新增至 Spark 生態系統,包括將 Spark 機器學習 管線與淺漸層提升機器(LightGBM)、LIME(模型可解釋性)和 OpenCV 緊密整合。 您可以使用這些工具在任何 Spark 叢集上建立功能強大的預測模型,例如 Azure Databricks 或 Cosmic Spark。
SynapseML 也會為 Spark 生態系統帶來網路功能。 透過 Spark 上的 HTTP 專案,使用者可以將任何 Web 服務內嵌至其 SparkML 模型。 此外,SynapseML 提供易於使用的工具,可大規模協調 Azure AI 服務 。 針對生產等級的部署,Spark 服務專案會啟用由 Spark 叢集支援的高輸送量、子延遲 Web 服務。
項目 | 描述 |
---|---|
類型 | 適用於 Apache Spark 的開放原始碼分散式機器學習和微服務架構 |
支援的語言 | Scala 2.11、Java、Python 3.5+、R (beta) |
機器學習階段 | 資料準備 模型訓練 部署 |
主要優點 | 延展性 串流 + 服務相容 容錯 |
考量 | 需要 Apache Spark |
參與者
本文由 Microsoft 維護。 原始投稿人如下。
主體作者:
- 佐納·特賈達 | 首席執行官 (CEO) 和建築師
下一步
- 若要瞭解 Microsoft 提供的所有人工智慧 (AI) 開發產品,請參閱 Microsoft AI 平臺。
- 如需使用 Microsoft 開發 AI 和 機器學習 解決方案的訓練,請參閱 Microsoft Learn 訓練。