你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
比较机器学习产品和技术
了解 Microsoft 的机器学习产品和技术。 比较各个选项可帮助你选择如何最有效地构建、部署和管理机器学习解决方案。
基于云的机器学习产品
为 Azure 云中的机器学习提供了以下选项。
云选项 | 介绍 | 作用 |
---|---|---|
Azure 机器学习 | 用于机器学习的托管平台 | 使用预先训练的模型,或使用 Python 和 CLI 在 Azure 上训练、部署和管理模型。 包括自动化机器学习(AutoML)、提示流、模型目录和 MLflow 集成等功能。 跟踪和了解生产期间的模型性能 |
Microsoft Fabric | 统一的分析平台 | 管理整个数据生命周期(从引入到见解)与一个全面的平台,为数据专业人员(包括数据工程师、数据科学家和业务分析师)集成各种服务和工具 |
Azure AI 服务 | 通过 REST API 和 SDK 实现的预建 AI 功能 | 使用标准编程语言生成智能应用程序,这些编程语言调用提供推理的 API。 虽然机器学习和数据科学专业知识仍然很理想,但此平台也可以由没有此类技能的工程团队采用 |
Azure SQL 托管实例机器学习服务 | 适用于 SQL 的数据库内机器学习 | 在 Azure SQL 托管实例中训练和部署模型 |
Azure Synapse Analytics 中的机器学习 | 分析服务与机器学习 | 在 Azure Synapse Analytics 中训练和部署模型 |
Azure Databricks | 基于 Apache Spark 的分析平台 | 使用与开源机器学习库和 MLflow 平台的集成来生成和部署模型以及数据工作流。 |
本地机器学习产品
以下选项可用于本地机器学习。 本地服务器也可以在云端的虚拟机中运行。
本地 | 介绍 | 作用 |
---|---|---|
SQL Server 机器学习服务 | 适用于 SQL 的数据库内机器学习 | 使用 Python 和 R 脚本在 SQL Server 中训练和部署模型 |
开发平台和工具
为机器学习提供了以下开发平台和工具。
平台/工具 | 介绍 | 作用 |
---|---|---|
Azure AI Studio | 适用于 AI 和 ML 方案的统一开发环境 | 开发、评估和部署 AI 模型和应用程序。 促进跨各种 Azure AI 服务的协作和项目管理,甚至可以在多个工作负荷团队中用作常见环境。 |
Azure Machine Learning Studio | 用于机器学习的协作拖放工具 | 使用最少的编码生成、测试和部署预测分析解决方案。 支持各种机器学习算法和 AI 模型。 它具有用于数据准备、模型训练和评估的工具。 |
Azure Data Science Virtual Machine | 使用预安装的数据科学工具的虚拟机映像 | 使用 Jupyter、R 和 Python 等工具在自己的 VM 上开发机器学习解决方案。 |
ML.NET | 开源的跨平台机器学习 SDK | 开发适用于 .NET 应用程序的机器学习解决方案。 |
Windows AI | Windows 设备上的已训练模型的推理引擎 | 将人工智能功能集成到 Windows 应用程序中的平台,使用 Windows 机器学习(WinML)和 Direct 机器学习(DirectML)等组件进行本地实时 AI 模型评估和硬件加速。 |
SynapseML | 适用于 Apache Spark 的开源分布式机器学习和微服务框架 | 创建和部署适用于 Scala 和 Python 的可缩放机器学习应用程序。 |
Azure Data Studio 的机器学习扩展 | 适用于 Azure Data Studio 的开源跨平台机器学习扩展 | 管理包、导入机器学习模型、进行预测以及创建笔记本以运行 SQL 数据库试验 |
Azure 机器学习
Azure 机器学习服务是一项完全托管的云服务,用于大规模训练、部署和管理机器学习模型。 它完全支持开源技术,可让你使用数以万计的开源 Python 包,例如 TensorFlow、PyTorch 和 scikit-learn。 还可以使用丰富的工具,例如计算实例、Jupyter 笔记本或 Visual Studio Code (VS Code) 扩展的Azure 机器学习,这是一个免费扩展,可用于管理 Visual Studio Code 中的资源、模型训练工作流和部署。 Azure 机器学习服务包含多项功能,使用这些功能可以轻松、高效和准确地自动执行模型生成和优化。
使用 Python SDK、Jupyter 笔记本、R 和 CLI 实现云规模机器学习。 对于少代码或无代码的选项,请使用 Azure 机器学习工作室中的交互式设计器,轻松快速地使用预建的机器学习算法来构建、测试和部署模型。 此外,Azure 机器学习提供与 Azure DevOps 和 GitHub Actions 的集成,用于机器学习模型的持续集成和持续部署(CI/CD)。
项 | 描述 |
---|---|
Type | 基于云的机器学习解决方案 |
支持的语言 | Python、R |
机器学习阶段 | 数据准备 模型训练 部署 MLOps/管理 负责任 AI |
主要优势 | Code First (SDK)、工作室和拖放式设计器 Web 界面创作选项。 集中管理脚本和运行历史记录,轻松比较模型版本。 轻松部署和管理云中或边缘设备上的模型。 提供可缩放的机器学习模型的训练、部署和管理。 |
注意事项 | 需要对模型管理模型有一定的了解。 |
Azure AI 服务
Azure AI 服务 是一套全面的预构建 API,使开发人员和组织能够快速创建智能、市场就绪的应用程序。 这些服务提供现成且可自定义的 API 和 SDK,这些 API 和 SDK 允许应用使用最少的代码查看、听到、说话、理解和解释用户需求,因此无需引入数据集或数据科学专业知识来训练模型。 可以向应用添加智能功能,例如:
- 视觉:对象检测、人脸识别、光学字符识别 (OCR) 等。 有关详细信息,请参阅计算机视觉、人脸、文档智能。
- 语音:语音转文本、文本转语音、说话人识别等。 有关详细信息,请参阅语音服务。
- 语言:翻译、情绪分析、关键短语提取、语言理解等。 有关详细信息,请参阅 Azure OpenAI 服务、翻译器、沉浸式阅读器、机器人服务和语言服务。
- 决策: 检测不需要的内容并做出明智的决策 内容安全。
- 搜索和知识: 将 AI 支持的云搜索和知识挖掘功能引入应用。 有关详细信息,请参阅 Azure AI 搜索。
使用 Azure AI 服务可以开发跨设备和平台的应用。 API 不断改进,且易于设置。
项 | 描述 |
---|---|
Type | 用于生成智能应用程序的 API |
支持的语言 | 多个选项,具体取决于服务。 标准语言包括 C#、Java、JavaScript 和 Python。 |
机器学习阶段 | 部署 |
主要优点 | 使用通过 REST API 和 SDK 提供的预训练模型生成智能应用程序。 适用于自然通信方法的各种模型,包括视觉、语音、语言和决策。 不需要或最少的机器学习或数据科学专业知识。 可伸缩性和灵活性。 各种模型。 |
SQL 机器学习
SQL 机器学习为本地和云中的关系数据添加了采用 Python 和 R 语言的统计分析、数据可视化和预测分析。 当前的平台和工具包括:
需要对 SQL 中的关系数据使用内置 AI 和预测分析时,可以使用 SQL 机器学习。
项 | 描述 |
---|---|
Type | 关系数据的本地预测分析 |
支持的语言 | Python、R 和 SQL |
机器学习阶段 | 数据准备 模型训练 部署 |
主要优点 | 在数据库函数中封装预测逻辑可以轻松加入数据层逻辑。 |
注意事项 | 采用 SQL 数据库作为应用程序的数据层。 |
Azure AI Studio
Azure AI Studio 是一个统一的平台,用于开发和部署生成式 AI 应用程序和 Azure AI API。 它提供了一套全面的 AI 功能、简化的用户界面和代码优先体验,使其成为构建、测试、部署和管理智能解决方案的一站式商店。 Azure AI Studio 旨在帮助开发人员和数据科学家使用 Azure 广泛的 AI 产品高效创建和部署生成式 AI 应用程序,并强调负责任的 AI 开发,并遵循公平、透明和问责的嵌入式原则。 该平台包括用于偏差检测、可解释性和隐私保留机器学习的工具,确保 AI 模型强大、可信且符合法规要求。 作为Microsoft Azure 生态系统的一部分,AI Studio 提供强大的工具和服务,以满足各种 AI 和机器学习需求,从自然语言处理到计算机视觉。 它与其他 Azure 服务的集成可确保无缝的可伸缩性和性能,使其非常适合企业。 Azure AI Studio 还促进协作和创新,支持具有共享工作区、版本控制和集成开发环境等功能的协作环境。 通过集成常用的开源框架和工具,Azure AI Studio 加速了开发过程,使组织能够推动创新,并在竞争激烈的 AI 环境中保持领先。
项 | 描述 |
---|---|
类型 | 适用于 AI 的统一开发环境 |
支持的语言 | 仅 Python |
机器学习阶段 | 数据准备 部署(模型即服务) |
主要优势 | 跨各种 Azure AI 服务促进协作和项目管理。 提供用于生成、训练和部署 AI 模型的综合工具。 通过用于偏见检测、可解释性和隐私保留机器学习的工具强调负责任的 AI。 支持与常用的开源框架和工具集成。 包括用于创建和管理基于提示的工作流的提示流Microsoft,简化了由大型语言模型(LLM)提供支持的 AI 应用程序的开发周期。 |
Azure 机器学习工作室
Azure 机器学习 Studio 是一种协作式拖放工具,用于在数据上生成、测试和部署预测分析解决方案。 它专为数据科学家、数据工程师和商业分析师设计。 Azure 机器学习工作室支持各种机器学习算法和工具,用于数据准备、模型训练和评估。 它还提供一个可视化界面,用于连接交互式画布上的数据集和模块。
项 | 描述 |
---|---|
类型 | 用于机器学习的协作拖放工具 |
支持的语言 | Python、R、Scala 和 Java (有限体验) |
机器学习阶段 | 数据准备 模型训练 部署 |
主要优势 | 无需编码即可生成机器学习模型。 支持各种机器学习算法和工具,用于数据准备、模型训练和评估。 提供用于连接交互式画布上的数据集和模块的可视界面。 支持与高级机器学习任务的Azure 机器学习集成。 |
有关 Azure 机器学习 Studio 和 Azure AI Studio 的压缩比较,请参阅 AI Studio 或 Azure 机器学习 Studio。 下面是两者之间的一些主要区别:
类别 | 功能 | Azure AI Studio | Azure 机器学习工作室 |
---|---|---|---|
数据存储 | 存储解决方案 | 否 | 是(云文件系统、OneLake、Azure 存储) |
数据准备 | 数据集成 | 是(Blob 存储、OneLake、ADLS) | 是(使用Azure 存储帐户复制和装载) |
开发 | 代码优先工具 | 是(Visual Studio Code (VS Code)) | 是(笔记本、Jupyter、VS Code、R Studio) |
语言 | 支持的语言 | 仅 Python | Python、R、Scala、Java |
培训 | AutoML | 否 | 是(回归、分类、预测、CV、NLP) |
计算目标 | 训练计算 | 无服务器 (MaaS, 提示流) | Spark 群集、ML 群集、Azure Arc |
生成式 AI | LLM 目录 | 是(Azure OpenAI,拥抱人脸,元) | 是(Azure OpenAI,拥抱人脸,元) |
部署 | 实时和批处理服务 | 实时 (MaaS) | Batch 终结点,Azure Arc |
治理 | 负责任的 AI 工具 | 否 | 是(负责任的 AI 仪表板) |
Microsoft Fabric
Microsoft Fabric 是一个端到端的统一分析平台,汇集了组织所需的所有数据和分析工具。 它集成了各种服务和工具,为数据专业人员(包括数据工程师、数据科学家和业务分析师)提供无缝体验。 Microsoft Fabric 提供数据集成、数据工程、数据仓库、数据科学、实时分析和商业智能的功能。
如果需要全面的平台来管理整个数据生命周期,从引入到见解,请使用 Microsoft Fabric。
项 | 描述 |
---|---|
类型 | 统一的分析平台 |
支持的语言 | Python、R、SQL、Scala |
机器学习阶段 | 数据准备 模型训练 部署 实时分析 |
主要优势 | 适用于所有数据和分析需求的统一平台。 与其他Microsoft 服务无缝集成。 可缩放且灵活。 支持各种数据和分析工具。 促进组织中不同角色之间的协作。 从引入到见解的端到端数据生命周期管理。 实时分析和商业智能功能。 支持机器学习模型训练和部署。 与常用的机器学习框架和工具集成。 提供用于数据准备和特征工程的工具。 启用实时机器学习推理和分析。 |
Azure Data Science Virtual Machine
Azure Data Science Virtual Machine 是 Microsoft Azure 云上的自定义虚拟机环境。 它提供适用于 Windows 和 Linux Ubuntu 的版本。 该环境专为进行数据科学研究和开发机器学习解决方案而生成。 它预装并预配置了许多常用的数据科学框架、机器学习框架和其他工具,可快速生成用于高级分析的智能应用程序。
需要在单个节点上运行或托管作业时,可以使用数据科学 VM。 或者,需要在单个计算机上远程提高处理能力时,也可以使用它。
项 | 描述 |
---|---|
Type | 用于数据科学的自定义虚拟机环境 |
主要优点 | 减少安装、管理数据科学工具和框架及其故障排除的时间。 包含所有常用工具和框架的最新版本。 虚拟机选项包括高度可缩放的映像和图形处理单元 (GPU) 功能,可用于密集型数据建模。 |
注意事项 | 脱机时无法访问虚拟机。 运行虚拟机会产生 Azure 费用,因此请注意,只在有需要时才运行。 |
Azure Databricks
Azure Databricks 是一个基于 Apache Spark 的分析平台,针对 Microsoft Azure 云平台进行了优化。 Databricks 与 Azure 集成,以提供一键式安装程序、简化的工作流程以及交互式工作区,从而使数据科学家、数据工程师和业务分析员之间可以进行协作。 在基于 Web 的 Notebook 中使用 Python、R、Scala 和 SQL 代码可以查询、可视化数据以及为其建模。
想要在 Apache Spark 中协作生成机器学习解决方案时,可以使用 Databricks。
项 | 描述 |
---|---|
Type | 基于 Apache Spark 的分析平台 |
支持的语言 | Python、R、Scala 和 SQL |
机器学习阶段 | 数据准备 数据预处理 模型训练 模型优化 模型推理 管理 部署 |
主要优势 | 一键式设置和简化的工作流,方便使用。 用于协作的交互式工作区。 与 Azure 无缝集成。 处理大型数据集和密集计算的可伸缩性。 支持各种语言,并与常用工具集成。 |
ML.NET
ML.NET 是一个开源的跨平台机器学习框架。 使用 ML.NET,可以构建自定义机器学习解决方案并将其集成到 .NET 应用程序中。 ML.NET 提供了与 TensorFlow 和 ONNX 等常用框架的不同级别的互操作性,用于对机器学习模型和深度学习模型进行训练和评分。 对于资源密集型任务(例如训练图像分类模型),可以利用 Azure 在云中训练模型。
想要将机器学习解决方案集成到 .NET 应用程序时,可以使用 ML.NET。 可以选择使用 API 以实现代码优先体验,也可以选择使用 Model Builder 或 CLI 以实现少代码体验。
项 | 描述 |
---|---|
Type | 开源的跨平台框架,用于使用 .NET 来开发自定义机器学习应用程序 |
支持的语言 | C# 和 F# |
机器学习阶段 | 数据准备 培训 部署 |
主要优势 | 不要求具备数据科学和机器学习经验 使用熟悉的工具(Visual Studio、Microsoft Visual Studio Code)和语言 部署到运行 .NET 的位置 可扩展 可缩放 本地优先体验 用于自动化机器学习任务的 AutoML |
Windows AI
Windows AI Windows AI 是一个功能强大的平台,它使用 Windows 机器学习 (WinML) 和 Direct 机器学习 (DirectML) 的优势将人工智能功能集成到 Windows 应用程序中,以提供本地、实时 AI 模型评估和硬件加速。 WinML 允许开发人员将训练的机器学习模型直接集成到其 Windows 应用程序中。 它有助于对模型进行本地实时评估,实现强大的 AI 功能,而无需云连接。
DirectML 是用于执行机器学习模型的高性能硬件加速平台。 它利用 DirectX API 跨各种硬件(包括 GPU 和 AI 加速器)提供优化的性能。
如果要在 Windows 应用程序中使用经过训练的机器学习模型,请使用 Windows AI。
项 | 描述 |
---|---|
Type | 适用于在 Windows 设备中评估已训练的模型的推理引擎 |
机器学习阶段 | 数据准备 模型训练 部署 |
支持的语言 | C#/C++ 和 JavaScript |
主要优势 | 本地实时 AI 模型评估 跨各种硬件类型实现高性能 AI 处理,包括 CPU、GPU 和 AI 加速器 确保不同 Windows 硬件的行为和性能一致。 |
SynapseML
SynapseML(以前称为 MMLSpark)是一个开源库,可简化大规模可缩放机器学习管道的创建。 SynapseML 为各种不同的机器学习任务(例如文本分析、视觉、异常情况检测等)提供 API。 SynapseML 基于 Apache Spark 分布式计算框架而构建,与 SparkML/MLLib 库共享相同的 API,可将 SynapseML 模型无缝地嵌入现有 Apache Spark 工作流。
SynapseML 为 Spark 生态系统添加了许多深度学习工具和数据科学工具,包括 Spark 机器学习管道与 Light Gradient Boosting Machine (LightGBM)、LIME(模型可解释性)以及 OpenCV 的无缝集成。 可以使用这些工具在任何 Spark 群集(例如 Azure Databricks 或 Cosmic Spark)上创建功能强大的预测模型。
SynapseML 还为 Spark 生态系统带来了网络功能。 借助 HTTP on Spark 项目,用户可以将任何 Web 服务嵌入到其 SparkML 模型。 此外,SynapseML 还为大规模编排 Azure AI 服务提供了各种易于使用的工具。 对于生产级部署,Spark Serving 项目可通过 Spark 群集提供具有高吞吐量和亚毫秒级延迟的 Web 服务。
项 | 描述 |
---|---|
Type | 适用于 Apache Spark 的开源分布式机器学习和微服务框架 |
支持的语言 | Scala、Java、Python、R 和 .NET |
机器学习阶段 | 数据准备 模型训练 部署 |
主要优点 | 可伸缩性 流式处理 + 服务兼容 容错 |
注意事项 | 需要 Apache Spark |
作者
本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。
主要作者:
- Mahdi Setayesh | 首席软件工程师
后续步骤
- 了解Microsoft提供的所有人工智能(AI)开发产品: Microsoft AI 平台。
- 使用 Microsoft 获取有关开发 AI 和机器学习解决方案的培训:Microsoft Learn 培训。
- 详细了解 Microsoft Fabric: Microsoft Fabric。
- 发现 Azure AI 服务: Azure AI 服务。
- 浏览Azure 机器学习:Azure 机器学习。
- 了解 Azure Databricks: Azure Databricks。
- 发现 Azure Synapse Analytics: Azure Synapse Analytics。
- 浏览Azure SQL 托管实例 机器学习服务:Azure SQL 托管实例 机器学习服务。