构建可靠的机器学习系统
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第2章 数据管理原则

在本书中,我们很少关注模型的构建方式和算法细节。上一年最令人兴奋的算法开发在下一年就变得普普通通了。相反,我们对两件事非常感兴趣:用于构建模型的数据,以及获取数据并将其传入模型的处理管道。

归根结底,机器学习系统是数据处理管道,其目的是从数据中提取可用且可复现的见解。然而,机器学习管道与传统的日志处理或分析管道之间存在一些关键的不同。机器学习管道有一些与传统分析管道非常不同的、特有的约束,并且会以不同的方式失败。它们的成功难以衡量,许多失败也难以察觉。(我们将在第9章详细介绍这些话题。)从根本上说,它们使用数据,并将使用的结果输出显示(尽管两者的形式截然不同)。因此,机器学习系统完全依赖于其底层数据系统的结构、性能、准确性和可靠性。这是从可靠性的角度考虑机器学习系统的最有用的方式。

在本章中,我们将从深入研究数据本身开始:

● 数据从哪里来

● 如何解读数据

● 数据质量

● 更新数据源(使用哪些与怎么使用)

● 将数据组装成适于应用的形式

我们将涵盖对数据的生产要求,并说明与模型一样,生产中的数据也有生命周期

● 提取

● 数据清洗和数据一致性

● 数据丰富和扩展

● 存储和复制

● 应用于训练

● 删除

数据和元数据定义的稳定性以及这些定义的版本控制至关重要,我们将解释如何实现它们[1]。我们还将涵盖数据访问约束、隐私和可审计性问题,并展示一些确保数据起源(数据从哪里来)和数据血缘(自我们获得数据以来谁一直对其负责)的方法。在本章结束时,我们希望你对“使数据处理链可靠且易管理”所涉及的主要问题有一个完整但浅层的理解。