Azure 机器学习 v1 中的数据
Azure 机器学习使你可以轻松连接到云中的数据。 它在基础存储服务上提供抽象层,这样你便可以安全地访问和使用数据,而无需编写特定于存储类型的代码。 Azure 机器学习还提供了以下数据功能:
- 与 Pandas 和 Spark DataFrames 的互操作性
- 数据世系的版本控制和跟踪
- 数据标记
- 数据偏差监视
数据工作流
若要在基于云的存储解决方案中使用数据,建议使用此数据发送工作流。 此工作流假设你拥有 Azure 存储帐户,并在 Azure 基于云的存储服务中拥有数据。
创建 Azure 机器学习数据存储以将连接信息存储到 Azure 存储
在该数据存储中,创建一个 Azure 机器学习数据集以指向基础存储中的特定文件
若要在机器学习试验中使用该数据集,可采用以下方法
将该数据集装载到试验的计算目标以进行模型训练
或
在自动化机器学习(自动化 ML)试验运行、机器学习管道或 Azure 机器学习设计器等 Azure 机器学习解决方案中直接使用该数据集。
为模型输出数据集创建数据集监视器以检测数据偏移
如果检测到数据偏移,请更新输入数据集,并相应地重新训练模型
此屏幕截图显示了建议的工作流:
通过数据存储连接到存储
Azure 机器学习数据存储将你的数据存储连接信息安全地托管在 Azure 上,因此你无需将该信息放入脚本中。 有关连接到基础存储服务中的存储帐户并进行数据访问的详细信息,请访问注册和创建数据存储。
这些受支持的 Azure 基于云的存储服务可以注册为数据存储:
- Azure Blob 容器
- Azure 文件共享
- Azure Data Lake
- Azure Data Lake Gen2
- Azure SQL 数据库
- Azure Database for PostgreSQL
- Databricks 文件系统
- Azure Database for MySQL
提示
可以创建使用基于凭据(例如服务主体或共享访问签名 (SAS) 令牌)的身份验证来访问存储服务的数据存储。 对工作区具有“读取者”访问权限的用户可以访问这些凭据。
如果对此存在顾虑,请访问创建一个使用基于标识的数据访问的数据存储以详细了解与存储服务的连接。
通过数据集引用存储中的数据
Azure 机器学习数据集不是你的数据的副本。 “数据集创建”操作本身会创建对其存储服务中的数据的引用及其元数据的副本。
由于数据集是延迟计算的,并且数据仍保留在其现有位置,因此
- 不会产生额外的存储成本
- 不会冒无意中更改原始数据源的风险
- 会提高 ML 工作流性能速度
若要与存储中的数据进行交互,请创建一个数据集以将数据打包成机器学习任务可用的对象。 将该数据集注册到你的工作区可在不同的试验中共享和重用该数据集,而不会造成数据引入复杂性。
可以从本地文件、公共 URL、Azure 开放数据集或经由数据存储的 Azure 存储服务创建数据集。
有两种类型的数据集:
FileDataset 引用数据存储或公共 URL 中的单个或多个文件。 如果数据已经过清理并且可用于训练试验,则可以下载或装载 FileDataset 引用的文件到计算目标
TabularDataset 通过分析提供的文件或文件列表来以表格格式表示数据。 可以将 TabularDataset 加载到 Pandas 或 Spark DataFrame 中,以便进一步处理和清理。 有关可从中创建 TabularDataset 的数据格式的完整列表,请访问 TabularDatasetFactory 类
这些资源提供有关数据集功能的详细信息:
使用数据
使用数据集可以通过与 Azure 机器学习功能的无缝集成来完成机器学习任务。
使用数据标记项目标记数据
在机器学习项目中,标记大量数据可能会成为一件很麻烦的事情。 涉及计算机视觉组件的项目(如图像分类或对象检测)通常需要数千个图像和对应的标签。
Azure 机器学习提供了一个中心位置,用于创建、管理和监视标记项目。 标记项目有助于协调数据、标签和团队成员,使你能够更有效地管理标记任务。 当前支持的任务涉及图像分类(多标签或多类)以及使用边界框进行物体识别。
创建图像标记项目或文本标记项目,并输出数据集以用于机器学习试验。
利用数据偏移监视模型性能
在机器学习的上下文中,数据偏移涉及模型输入数据中导致模型性能下降的变化。 这是模型准确度随着时间的推移而下降的主要原因,而数据偏移监视有助于检测模型性能问题。
如需详细信息,请访问创建数据集监视器来了解如何检测数据集内新数据的数据偏移并发出警报。
后续步骤
- 在 Azure 机器学习工作室中或使用 Python SDK 创建数据集
- 试用示例笔记本中的数据集训练示例