技术指南

类不平衡和重采样

阶级不平衡是指一种结果的数量远远多于另一种结果——比如 99。

概述

类别不平衡是指一种结果的数量远远超过另一种结果(例如 99.9% 的合法交易与 0.1% 的欺诈交易),这会欺骗模型忽略罕见但重要的类别。重新采样会重新平衡训练数据,因此模型实际上学会了发现少数。

类不平衡和重采样是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。

深入探讨

当类别存在偏差时,模型可以通过始终预测大多数并且从不发现任何欺诈行为来达到 99.9% 的准确率,但这是无用的。重采样通过两种主要方式修复训练分布。过采样会重复或合成少数样本 - 经典的 SMOTE(合成少数过采样技术)通过在少数样本与其最近的少数样本邻居之间进行插值而不是复制它们来创建新点。相反,欠采样会丢弃大多数示例(随机地或通过 Tomek links 或 NearMiss 等方法巧妙地丢弃)以均匀分布,但代价是丢弃数据。避免接触数据的替代方案包括类别加权(在损失函数中更多地惩罚少数错误)和在训练后调整决策阈值。

技术洞察

一个关键规则:仅对训练集重新采样,而不对验证集或测试集重新采样,并且始终在交叉验证折叠内重新采样。分割之前的过采样会将接近重复的点泄漏到测试集中并夸大分数。因为准确度在这里毫无意义,所以评估应该依赖于精确度、召回率、F1、精确召回率 AUC 或马修斯相关系数——当正类很少时保持诚实的指标。

掌握类不平衡和重采样

类别不平衡是指一种结果的数量远远超过另一种结果(例如 99.9% 的合法交易与 0.1% 的欺诈交易),这会欺骗模型忽略罕见但重要的类别。重新采样会重新平衡训练数据,因此模型实际上学会了发现少数。类不平衡和重采样是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。为了建立深入的理解,请将类不平衡和重采样视为一种操作模型,而不是单个功能:定义期望的结果,澄清假设,并将系统可以可靠地完成的任务与仍需要专家判断的任务分开。

在实践中,强大的团队使用类不平衡和重采样来根据可靠性和成本优化架构、数据和基础设施选择。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

多年来,架构决策决定着性能和运营成本。与此同时,优化一个基准测试可以隐藏更广泛的系统弱点。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

多年来,架构决策决定着性能和运营成本。

多年来,架构决策决定着性能和运营成本。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

更好的工程选择可以减少生产中的可靠性事故。

更好的工程选择可以减少生产中的可靠性事故。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

类不平衡和重采样的未来

机器学习管道内的重采样越来越自动化,像不平衡学习这样的库直接集成到交叉验证中。研究正在转向成本敏感的学习和定制的损失函数(例如焦点损失,它会降低简单多数示例的权重),这些函数通常优于深度网络上的粗略重采样。对于表格和图像数据,合成现实少数样本的生成模型正在成为 SMOTE 式插值的更复杂的后继者。

现实世界的实施

训练信用卡欺诈检测器,其中真实欺诈远低于交易的 1%,使用 SMOTE 放大罕见的欺诈案例

为仅少数患者出现的罕见疾病建立医学模型,应用类别权重,因此错过的病例将受到严厉处罚

检测生产线上的缺陷物品,几乎所有产品都通过检验,对“好”物品进行抽样以平衡培训

在以正常流量为主的网络安全日志中标记罕见的网络入侵,并使用 Precision-Recall AUC 而不是准确性进行评估

实施模式

实践中的类不平衡和重采样

使用 SMOTE 来放大罕见的欺诈案例,训练信用卡欺诈检测器,使真实欺诈远低于交易的 1%。

训练信用卡欺诈检测器,其中真正的欺诈远低于交易的 1%,使用 SMOTE 放大罕见的欺诈案例。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中的类不平衡和重采样

为仅少数患者出现的罕见疾病建立医学模型,应用类别权重,因此错过的病例将受到严厉处罚。

为仅少数患者出现的罕见疾病建立医学模型,应用类别权重,因此错过的病例会受到严厉处罚。当团队预先定义质量阈值、为边缘病例保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

实践中的类不平衡和重采样

检测生产线上的缺陷物品,几乎所有产品都通过检查,对“好”物品进行抽样以平衡培训。

在几乎所有产品都通过检查的生产线上检测有缺陷的产品,对“好的”产品进行欠采样以平衡培训。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中的类不平衡和重采样

在以正常流量为主的网络安全日志中标记罕见的网络入侵,并使用 Precision-Recall AUC 而不是准确性进行评估。

在以正常流量为主的网络安全日志中标记罕见的网络入侵,并使用 Precision-Recall AUC 而不是准确性进行评估。当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力增益和错误成本时,通常会获得更好的结果。

风险与防护栏

!

优化一项基准测试可以隐藏更广泛的系统弱点。

!

基础设施和维护成本常常被低估。

!

随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

1

在实施之前定义延迟、质量和成本目标。

在实施之前定义延迟、质量和成本目标。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

在实际负载和数据条件下进行基准测试。

在实际负载和数据条件下进行基准测试。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

仪器监控错误、漂移和用户影响。

仪器监控错误、漂移和用户影响。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

在扩展之前准备回滚和事件响应路径。

在扩展之前准备回滚和事件响应路径。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索