获取和准备数据

已完成

数据是机器学习的基础。 数据数量和数据质量都会影响模型的准确度。

若要训练机器学习模型,需要:

  • 确定数据源和格式。
  • 选择提供数据的方式。
  • 设计数据引入解决方案。

若要获取和准备用于训练机器学习模型的数据,需要从数据源中提取数据,并将其提供给要用于训练模型或进行预测的 Azure 服务。

确定数据源和格式

首先,需要确定数据源及其当前数据格式。

确定 示例
数据源 例如,数据可以存储在客户关系管理 (CRM) 系统中、事务数据库(如 SQL 数据库)中,也可以由物联网 (IoT) 设备生成。
数据格式 你需要了解数据的当前格式,可以是表格或结构化数据、半结构化数据或非结构化数据。

然后,你需要确定需要哪些数据来训练模型,以及希望以何种格式将数据提供给模型。

设计数据引入解决方案

一般情况下,最佳做法是在分析数据前从源中提取数据。 无论是将数据用于数据工程、数据分析还是数据科学,都可能需要从数据源中提取数据,对其进行转换,并将其加载到服务层中。 此类流程也称为提取、转换和加载 (ETL) 或提取、加载和转换 (ELT)。 服务层使数据可供你用于进一步数据处理(如训练机器学习模型)的服务。

要移动和转换数据,可以使用数据引入管道。 数据引入管道是移动和转换数据的任务序列。 通过创建管道,可以选择手动触发任务,或者在希望自动执行任务时计划管道。 可以使用 Azure Synapse Analytics、Azure Databricks 和 Azure 机器学习等 Azure 服务创建此类管道。

数据引入解决方案的常用方法是:

  1. 从数据源(如 CRM 系统或 IoT 设备)中提取原始数据。
  2. 通过 Azure Synapse Analytics 复制和转换数据。
  3. 将准备好的数据存储在 Azure Blob 存储中。
  4. 使用 Azure 机器学习训练模型。

数据摄取管道示例图。

探索示例

假设你想训练一个天气预报模型。 你希望将所有每分钟的温度度量值都合并到一个表中。 你想创建数据的聚合,并拥有一个包含每小时平均温度的表。 若要创建该表,需要将从 IoT 设备(该设备按间隔测量温度)引入的半结构化数据转换为表格数据。

显示 JSON 数据转换为表格示例的图表。

例如,若要创建可用于训练预测模型的数据集,可以执行以下操作:

  1. 从 IoT 设备中提取数据度量值作为 JSON 对象。
  2. 将 JSON 对象转换为表。
  3. 转换数据以获取每分钟每台机器的温度。

接下来,让我们探索可用于训练机器学习模型的服务。