Azure Databricks 数据科学和机器学习功能

Azure Databricks有一个统一的平台,用于完整的数据科学(DS)和机器学习(ML)生命周期,从原始数据引入到特征工程、模型训练、部署和生产监视。 Azure Databricks与常用的开源 ML 框架集成,添加企业级治理、可观测性和运营工具,统称为 MLOps。

此页面列出了按工作流阶段组织的主要 DS 和 ML 功能。

探索性数据分析

Azure Databricks通过为数据科学家提供交互式、协作和 AI 辅助工具,简化了探索数据分析(EDA)。 数据科学家可以使用自然语言聊天、UI 或代码浏览数据,并且可以使用实时共同编辑和基于 Git 的代码共享进行协作。 Genie Code 可以执行完全自动化的 EDA 或充当交互式助手。

Category Features
用户界面
  • 笔记本 为 EDA 的探索、可视化和文档提供了协作空间。
  • 仪表板 提供基于 SQL 和可视化效果的 EDA。
  • Genie Chat 具有一个自然语言界面,用于询问数据问题。
协作
AI 助手

准备并提供特征

Azure Databricks 通过统一治理数据和机器学习工作负载,简化了机器学习的数据管理。 借助在 Unity Catalog 中通过细粒度访问控制统一管理的所有数据,您可以灵活调整数据工程与机器学习之间的边界,以适应您的组织需求。 可以使用任何 数据工程工具 (如 Lakeflow 管道)为 ML 做好准备。 功能在 功能存储 中管理,用于批量和实时服务,并且功能具有一个受管理的事实来源。

Genie Code 通过浏览 Unity 目录来发现相关表、建议功能转换以及生成用于引入和功能管道的代码,从而加速数据发现和准备。

功能类型 Features
批处理功能
  • 特征表在 Unity Catalog 中存储预先计算好的批量特征,并提供自动沿袭追踪和治理功能。 团队会发现并复用现有功能,而不是从头重新构建流水线。
  • 功能视图 提供了一个新的 API,用于定义功能,然后可用于批处理或实时特征计算。
实时功能
  • 对于预计算特征,在线特征存储为实时模型推理用例提供特征表。
  • 当特征化输入仅在服务时间可用时, 特征服务 具有按需特征计算来补充特征表。 特征被定义为函数,而不是预先计算好的结果。
  • 功能视图 提供了一个新的 API,用于定义功能,然后可用于批处理或实时特征计算。
非结构化数据 AI 搜索 允许提供非结构化数据和运行语义搜索。

训练 ML 模型

Azure Databricks具有用于训练 ML 和深度学习模型的灵活工具。 预配置和可自定义的环境允许使用自定义 ML 库,无服务器 CPU 和 GPU 加速计算资源允许按需纵向扩展和横向扩展。 Genie Code 提供智能 AutoML,可接收自然语言请求,并构建完整的多笔记本工作流,用于特征工程、训练、调优、评估和部署。

Category Features
机器学习的类型 Azure Databricks支持所有类型的 ML,包括:
  • 经典 ML:使用 scikit-learn、XGBoost、LightGBM、Apache Spark MLlib 和其他 ML 框架进行监督和非监督式学习
  • 深度学习:使用 PyTorch、TensorFlow 和 Hugging Face Transformer 进行神经网络训练,包括跨多个 GPU 的分布式训练
  • 超参数优化:使用 Optuna 和 Ray 等工具跨算法和超参数空间自动搜索

有关生成 AI,请参阅Azure Databricks生成 AI 功能
计算
  • 无服务器计算可为交互式笔记本和定时工作流提供即时启动,支持自动扩缩容,无需进行集群管理。 它支持 CPU 和 GPU 加速群集。
  • 经典计算 具有单台计算机和群集管理,适用于 CPU 和 GPU 工作负载。
环境和库
AI 编码助手

跟踪和管理试验

Azure Databricks托管的 MLflow为可重现、可审核的 ML 开发提供了基础。 其与 Unity Catalog 和 Git 的集成,为数据和代码资产提供了追踪和血统管理功能。 注册表中的每个模型版本都可追溯到生成该版本的训练运行、数据集、环境和 Git 提交,从而为任何已部署的模型提供完整的审计追踪。

Category Features
试验跟踪 MLflow 追踪会记录每次训练运行的参数、指标和构建产物。 比较 MLflow UI 中的运行,以确定性能最佳的配置。
模型注册表 Unity 目录中的模型 提供与 Unity 目录集成的 MLflow 模型注册表。 版本化的模型工件通过生命周期别名(StagingProduction)、访问控制、血缘关系和跨工作区共享进行管理。
可复现性 笔记本和代码可以使用 Databricks Git 文件夹 进行版本控制,并与任何 Git 提供程序集成。

部署和提供模型

Azure Databricks支持批处理推理实时服务。 批处理推理有效地将模型应用于大型数据集,而实时服务提供模型作为低延迟 API 终结点。 Genie Code 可以生成用于模型部署的代码,以及 诊断模型服务终结点的问题和性能

服务模式 Features
批量推理
实时服务 模型服务提供低延迟、高可用性的托管 REST 端点,并支持无服务器自动扩缩容。 这支持任何 ML 框架的 CPU 和 GPU 服务,你可以使用 Genie 来评估和排查服务终结点的问题
SQL 本机推理
  • AI 函数提供 SQL 可访问的 ML 预测,用于预测、异常检测和驱动程序分析,无需Python或模型部署。
  • 对于自定义模型,AI 函数 ai_query 提供由 模型服务终结点支持的高效批处理推理。

评估和监视

Azure Databricks为生产的培训和持续监视提供灵活的评估。 实时服务会将日志记录到由 Unity Catalog 管理的推理表中,而数据质量监控则通过自定义指标、仪表板和警报提供监控功能。

Category Features
Evaluation
  • MLflow ML 评估 可用于定义要记录到 MLflow 的指标,或者 MLflow 跟踪 可以记录使用自定义框架计算的指标。
  • Genie Code 可以帮助选择评估指标和编写评估代码。
预测日志 推理表记录服务请求和响应,支持监控、分析和训练集构建。
监视和警报

MLOps 和治理

Azure Databricks提供了用于 ML 操作(MLOps)和治理的完整工具套件。 MLOps Stacks 提供了模板,用于使用基础结构即代码实现从开发到生产的自动化可重复升级。 数据、功能、模型和终结点完全受 Unity 目录AI 网关的约束。

Category Features
机器学习的 CI/CD MLOps Stacks 基于 声明性自动化捆绑包,提供基于代码的管理和部署 ML 基础结构和工作流。 这包括用于自动执行训练、评估和部署的 CI/CD 模板。
工作流管理 Lakeflow Jobs 将多步骤机器学习工作流作为按计划或触发式管道进行编排。
数据和模型资产治理 Unity 目录 为数据、功能和已注册的模型提供统一的治理。 精细的访问控制、世系跟踪和审核日志适用于所有资产。
模型终结点治理 AI 网关 为模型终结点提供集中式治理和监视,包括速率限制、使用情况跟踪和有效负载日志记录。

开源支持

Azure Databricks为开源 ML 生态系统提供完全支持。

可以在 Azure Databricks上使用任何开源 ML 框架:scikit-learn、XGBoost、LightGBM、PyTorch、TensorFlow、Hugging Face Transformers、Ray 等。 MLflow 或您的自定义工具可以以开放格式存储模型工件,这些格式可导出并在 Azure Databricks 外部运行。

MLflow是开源的,由Azure Databricks创建,由 10,000 多个组织使用。 您的实验跟踪数据、模型工件和管道定义均以开放格式存储。

数据和 AI 治理基于开源 Unity 目录 API 构建,数据存储基于开放式 Delta Lake 格式。 您的特征数据和训练数据集仍以开放、可移植的文件格式保存。

其他资源