生产型机器学习系统:要提出的问题

本课将重点介绍您应针对生产系统中的数据和模型提出的问题。

每项功能是否实用?

您应持续监控模型,以移除对模型预测能力贡献不大或没有贡献的特征。如果该特征的输入数据突然发生变化,模型的行为也可能会以不理想的方式突然发生变化。

另请考虑以下相关问题:

  • 该功能的实用性是否足以证明添加该功能的费用?

我们总是想向模型添加更多特征。例如,假设您发现添加一项新特征后,模型的预测结果略有改进。预测结果略好一点显然比略差一点要好;不过,额外的功能会增加您的维护负担。

您的数据源是否可靠?

以下是针对输入数据的可靠性询问的一些问题:

  • 信号是否始终可用?信号来源是否不可靠?例如:
    • 信号是否来自在高负载下崩溃的服务器?
    • 信号是否来自每年 8 月都去度假的用户?
  • 计算模型输入数据的系统是否会发生变化?如果是,请执行以下操作:
    • 频率如何?
    • 您如何得知该系统发生变化?

不妨考虑为您从上游进程收到的数据创建自己的副本。然后,仅在您确定可以安全地升级到上游数据的下一个版本时,才执行升级。

您的模型是否属于反馈环?

有时,模型可能会影响自己的训练数据。例如,某些模型的结果反过来会(直接或间接地)成为该模型的输入特征。

有时,一个模型可能会影响另一个模型。例如,假设有以下两个用于预测股票价格的模型:

  • 模型 A,这是一个效果不佳的预测模型。
  • 模型 B。

由于模型 A 存在 bug,因此错误地决定购买股票 X。这些购买交易会推高股票 X 的价格。模型 B 使用股票 X 的价格作为输入特征,因此可能会得出一些关于股票 X 价值的错误结论。因此,模型 B 可以根据模型 A 的错误行为来买入或卖出股票 X 的股票。反过来,模型 B 的行为可能会影响模型 A,可能会触发郁金香热潮或导致公司 X 的股票价格下跌。

练习:检查您的理解情况

以下哪三种模型容易受到反馈环的影响?
一种选举结果模型,通过在投票结束后对 2% 的选民进行调查,预测市长竞选的胜出者。
住宅价值预测模型 - 使用建筑面积(以平方米为单位计算的面积)、卧室数量和地理位置作为特征预测房价。
交通状况预测模型 - 使用海滩上的人群规模作为特征之一预测海滩附近各个高速公路出口的拥堵情况。
大学排名模型 - 将选择率(即申请某所学校并被录取的学生所占百分比)作为一项学校评分依据。
用于检测照片中人物是否在微笑的面部属性模型,该模型会定期使用每月自动更新的照片库数据库进行训练。
图书推荐模型 - 根据小说的受欢迎程度(即图书的购买量)向用户推荐其可能喜欢的小说。