衡量训练前偏差 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

衡量训练前偏差

衡量机器学习模型中的偏差是减少偏差的第一步。每种偏差衡量标准都对应于不同的公平概念。即使考虑简单的公平概念,也会导致许多不同的衡量标准适用于各种背景的情况。例如,考虑年龄方面的公平性,为了简单起见,中年和其他年龄组是两个相关的人口统计,称为分面。就贷款的机器学习模型而言,我们可能希望向两种人口统计中的同等数量的人发放小企业贷款。或者,在处理求职者时,我们可能希望看到每种人口统计中都有同等数量的人被录用。不过,这种方法可能会假定两个年龄组申请这些工作的人数相等,因此我们可能希望对申请人数设定条件。此外,我们要考虑的可能不是申请人数是否相等,而是我们是否有同等数量的合格申请人。或者,我们可以认为公平是指两个年龄组的合格申请人的录取率相同,和/或申请人的拒绝率相同。您可以使用相关属性数据比例不同的数据集。这种不平衡可能会混淆您选择的偏差衡量标准。这些模型对一个分面的分类可能比对另一分面的分类更准确。因此,您需要选择在概念上适合应用和情况的偏差指标。

我们使用以下表示法来讨论偏差指标。此处描述的概念模型适用于二进制分类,即事件被标记为在其样本空间中只有两种可能的结果,分别称为阳性结果(值为 1)和阴性结果(值为 0)。这一框架通常可以直接扩展到多类别分类,或在需要时扩展到涉及持续有价值结果的情况。在二进制分类的情况下,分别为原始数据集中记录的结果中的有利分面 a 和不利分面 d 分配阳性标签和阴性标签。这些标签 y 称为观测标签,以区别于机器学习模型在机器学习生命周期的训练或推理阶段分配的预测标签 y'。这些标签用于定义各自分面结果的概率分布 Pa(y) 和 Pd(y)。

  • 标签:

    • y 表示训练数据集中观测到的事件结果的 n 个标签。

    • y' 表示经过训练的模型对数据集中 n 个观测标签的预测标签。

  • 结果:

    • 样本的阳性结果(值为 1),例如申请被接受。

      • n(1) 是阳性结果(接受)的观测标签数量。

      • n'(1) 是阳性结果(接受)的预测标签数量。

    • 样本的阴性结果(值为 0),例如申请被拒绝。

      • n(0) 是阴性结果(拒绝)的观测标签数量。

      • n'(0) 是阴性结果(拒绝)的预测标签数量。

  • 分面值:

    • 分面 a - 定义偏差有利的人口统计的特征值。

      • na 是有利分面值的观测标签数:na = na(1) + na(0) 分面值 a 的阳性和阴性观测标签之和。

      • n'a 是有利分面值的预测标签数:n'a = n'a(1) + n'a(0) 分面值 a 的阳性和阴性预测结果标签之和。请注意,n'a = na

    • 分面 d - 定义偏差不利的人口统计的特征值。

      • nd 是不利分面值的观测标签数:nd = nd(1) + nd(0) 分面值 d 的阳性和阴性观测标签之和。

      • n'd 是不利分面值的预测标签数:n'd = n'd(1) + n'd(0) 分面值 d 的阳性和阴性预测标签之和。请注意,n'd = nd

  • 标注的分面数据结果的概率分布:

    • Pa(y) 是分面 a 的观测标签的概率分布。对于二进制标注的数据,该分布由分面 a 中标注为阳性结果的样本数与总样本数之比 Pa(y1) = na(1)/ na,以及标注为阴性结果的样本数与总样本数之比 Pa(y0) = na(0)/ na 得出。

    • Pd(y) 是分面 d 的观测标签的概率分布。对于二进制标注的数据,该分布由分面 d 中标注为阳性结果的样本数与总样本数之比 Pd(y1) = nd(1)/ nd,以及标注为阴性结果的样本数与总样本数之比 Pd(y0) = nd(0)/ nd 得出。

根据人口统计差异偏差数据训练的模型可能会学习甚至加剧这些差异。为了在花费资源训练模型之前识别数据中的偏差, SageMaker Clarify 提供了数据偏差指标,您可以在训练前对原始数据集进行计算。所有预训练指标都与模型无关,因为它们不依赖于模型输出,因此对任何模型都有效。第一个偏差指标检查分面不平衡,但不检查结果。它根据应用的需要,确定训练数据量在不同分面的代表性程度。其余的偏差指标以不同方式比较了数据中分面 a 和分面 d 的结果标签分布情况。在负值范围内的指标可以检测到阴性偏差。下表包含快速指导的备忘单以及指向训练前偏差指标的链接。

训练前偏差指标
偏差指标 描述 示例问题 解析指标值
类别不平衡 (CI) 衡量不同分面值之间成员数量的不平衡。

由于没有足够的中年分面以外的人口统计数据,是否会出现基于年龄的偏差?

标准化范围:[-1,+1]

解释:

  • 正值表示分面 a 在数据集中有更多的训练样本。

  • 接近零的值表示各分面在数据集中的训练样本数量上平衡。

  • 负值表示分面 d 在数据集中有更多的训练样本。

标签比例差异 (DPL) 衡量不同分面值之间阳性结果的不平衡性。 由于数据中分面值的标注存在偏差,ML 预测中是否存在基于年龄的偏差?

标准化二进制和多类别分面标签的范围:[-1,+1]

连续标签的范围:(-∞, +∞)

解释:

  • 正值表示分面 a 的阳性结果比例更高。

  • 接近零的值表示各分面的阳性结果比例较为均衡。

  • 负值表示分面 d 的阳性结果比例更高。

Kullback-Leibler 分歧 (KL) 衡量不同分面的结果分布在熵上的彼此差异程度。 不同人口统计群体的贷款申请结果分布有何不同?

二进制、多类别、连续结果的范围:[0, +∞)

解释:

  • 接近零的值表示标签的分布情况类似。

  • 正值表示标签分布存在差异,正值越大,差异就越大。

Jensen-Shannon 分歧 (JS) 衡量不同分面的结果分布在熵上的彼此差异程度。 不同人口统计群体的贷款申请结果分布有何不同?

二进制、多类别、连续结果的范围:[0, +∞)

解释:

  • 接近零的值表示标签的分布情况类似。

  • 正值表示标签分布存在差异,正值越大,差异就越大。

Lp-范数 (LP) 衡量数据集中不同分面相关结果的不同人口统计分布之间的 p-范数差异。 不同人口统计群体的贷款申请结果分布有何不同?

二进制、多类别、连续结果的范围:[0, +∞)

解释:

  • 接近零的值表示标签的分布情况类似。

  • 正值表示标签分布存在差异,正值越大,差异就越大。

总变差距离 (TVD) 衡量数据集中不同分面相关结果的不同人口统计分布之间的 L1-范数差异的一半。 不同人口统计群体的贷款申请结果分布有何不同?

二进制、多类别和连续结果的范围:[0, +∞)

  • 接近零的值表示标签的分布情况类似。

  • 正值表示标签分布存在差异,正值越大,差异就越大。

Kolmogorov-Smirnov (KS) 衡量数据集中不同分面的分布结果之间的最大差异。 按人口统计群体划分,哪些大学申请结果的差异最大? 二进制、多类别和连续结果的 KS 值范围:[0,+1]
  • 接近零的值表示标签在所有结果类别的各分面之间均匀分布。

  • 接近一的值表示一个类别的标签都集中在一个分面,因此非常不平衡。

  • 间歇值表示最大标签不平衡的相对程度。

条件人口统计差异 (CDD) 从整体上衡量不同分面的结果差异,同时也按子组进行衡量。 某些群体在大学录取结果中被拒绝的比例是否高于其被录取的比例?

CDD 的范围:[-1, +1]

  • 正值表示分面 d 被拒绝次数多于被接受次数的结果。

  • 接近零的值表示平均而言没有人口统计差异。

  • 负值表示分面 a 被拒绝次数多于被接受次数的结果。

有关偏差指标的更多信息,请参阅金融领域机器学习的公平性衡量标准