现实世界中的机器学习

公平性

识别训练数据和模型中的偏差,选择合适公平指标并制定缓解与监控方案。

1 小时 10 分钟 纯学习时间 已去掉互动练习与测试
本模块学完后,你能够
  • 识别人为偏差来源
  • 按群体切片评估
  • 理解多种公平定义
  • 选择合适缓解策略
01
预计 5 分钟

简介

总体指标可能掩盖某些群体的严重错误。公平性工作从明确影响对象、风险和可接受差异开始。

公平性不是一个单独数字,而是“哪类错误会伤害谁”的业务和社会问题。模型总体准确率很高,也可能对某个群体持续误判。先界定受影响群体、决策场景和错误后果。

群体公平指标之间可能无法同时满足,因此要记录选择理由、约束和人工复核途径。指标用于发现和讨论问题,不能替代法律与领域专家判断。

图示可左右滑动查看总体表现相近时,两个群体的召回率仍可能不同
总体表现相近时,两个群体的召回率仍可能不同

你需要理解

  • 公平不是一个单一数字。
  • 受影响群体应参与目标和评估设计。
再看一个实际场景

招聘模型总体准确率 90%,仍可能对某一群体漏掉更多合格候选人。只看总体分数看不出来。

02
预计 15 分钟

偏差类型

历史偏差、采样偏差、测量偏差、标签偏差和反馈循环都可能进入模型。

历史偏差来自过去本就不公平的分配;报告偏差来自人们记录行为的方式;选择和覆盖偏差表示某些群体没有进入数据;测量和标签偏差表示同一概念在不同群体中被不同方式观察。自动化偏差则是人过度相信模型输出。

群体归因偏差把个体行为归结为所属群体;群内偏差更愿意相信与自己相似的人;群外同质性偏差把外群体看成“都一样”。这些人类判断会影响标签收集和产品设计。

你需要理解

  • 历史数据可能忠实记录不公平现实。
  • 缺失代表性会让少数群体误差更高。
  • 代理变量可能间接泄露敏感属性。
  • 部署后的模型决策会改变下一轮数据。
再看一个实际场景

历史上某地区很少获得贷款,训练数据中该地区“成功还款”的样本自然很少。这不等于该地区所有申请人风险高。

03
预计 10 分钟

识别偏差

在训练前检查群体覆盖、缺失率、标签质量和特征分布;训练后按群体计算混淆矩阵和校准。

训练前比较各群体的样本量、缺失率、标签来源和特征分布。训练后按群体分别计算混淆矩阵、召回率、误报率与校准情况;还要检查交叉切片,如年龄与地区同时划分。

缺失值和异常值不一定随机。某群体的关键字段更常缺失,会让模型在该群体上系统性变差。需要调查采集流程,而不是统一删掉这些样本。

你需要理解

  • 不要只删除敏感属性。
  • 交叉群体可能揭示总体切片看不到的问题。
  • 样本很少时同时报告不确定性。
再看一个实际场景

手机型号字段在老年用户中更常缺失;删去缺失样本后,训练集会更加缺少老年用户。

04
预计 5 分钟

减少偏差

缓解可发生在数据、训练和输出阶段,选择取决于偏差来源和产品约束。

缓解措施可放在数据阶段(补充覆盖不足样本、改善标签)、训练阶段(调整目标或权重)、输出阶段(校准、复核或合理阈值)。先弄清根因,再决定采取哪一种。

增加样本不一定消除历史偏差;强行让某个群体指标相同,也可能牺牲另一个重要指标。改动后要在独立数据上检查准确性、各群体错误和长期影响。

你需要理解

  • 改善采样与标签。
  • 使用重加权或约束优化。
  • 调整阈值或增加人工复核。
  • 缓解后重新检查总体质量和各群体影响。
再看一个实际场景

如果识别合格申请人的召回率在某群体偏低,可先核查其标签质量,再考虑调整训练或审核流程。

05
预计 5 分钟

评估偏差

先确定哪种错误最伤害用户,再选择对应指标。不同公平目标可能互相冲突。

评估时先明确更不希望哪种错误:误拒合格者,还是误批不合格者。再选对应指标;例如机会均等关心合格者被正确识别的比例,人口统计均等关心正向结果的比例。

报告应展示每组样本量和不确定性。某组只有十个样本时,百分比大幅波动很常见,不宜因为一次分数差距就做出强结论。

你需要理解

  • 记录决策理由和可接受范围。
  • 持续监控而不是上线前检查一次。
再看一个实际场景

两组召回率为 90% 与 70%,若后一组只有 10 个真实阳性样本,还需要更长时间或更多样本确认差异。

06
预计 10 分钟

人口统计均等

人口统计均等要求不同群体获得正向结果的比例接近。它不考虑每组真实标签比例是否不同。

人口统计均等比较不同群体获得正向结果的比例。例如 A、B 两组各有 100 人,分别有 40 人和 20 人被批准,正向率是 40% 与 20%。

它不考虑各组真实合格比例。若合格率本身不同,强制正向率一样可能带来其他错误。因此它适合某些资源分配目标,但不能单独证明整个系统公平。

P(ŷ=1 | group=A) ≈ P(ŷ=1 | group=B)

你需要理解

  • 适合关注资源分配结果比例的场景。
  • 可能牺牲校准或错误率一致性。
再看一个实际场景

在宣传机会分配中,检查不同地区获得展示机会的比例可能很有用;在疾病诊断中,单靠比例相同却可能掩盖漏诊。

07
预计 10 分钟

机会均等

机会均等要求真正符合条件的人在不同群体中被识别出来的概率接近,也就是召回率接近。

机会均等要求真正符合条件的人,在不同群体中被选中的概率接近。它比较的是各组真阳性率 TPR = TP / (TP + FN),也就是召回率。

它聚焦漏掉合格者的风险,却不直接约束误报率和正向总比例。应用时应和其他指标一起报告,并说明阈值如何选择。

TPR_A ≈ TPR_B

你需要理解

  • 重点控制漏报差异。
  • 常用于机会、资格或风险检测场景。
再看一个实际场景

A 组 100 名合格者找到 90 人,B 组 100 名合格者只找到 70 人;两组 TPR 为 90% 和 70%,机会不均等值得调查。

08
预计 10 分钟

反事实公平性

如果只改变个体的敏感属性而保持其他相关条件不变,预测应尽量不变。

反事实公平性提出一个个体层面问题:假设只改变其敏感属性,而相关能力和条件保持合理一致,模型决策会不会改变?关键难点是现实中属性与其他变量常有关联,不能简单替换数据库一列就宣称得到了真实反事实。

需要明确因果假设,区分应该保持不变的能力与可能受历史偏差影响的代理变量。它适合审查具体决策逻辑,但难以仅靠观察数据直接验证。

你需要理解

  • 需要因果假设,实施难度高。
  • 可用于检查代理变量路径。
  • 结论依赖反事实模型是否可信。
再看一个实际场景

同一份工作经历和技能,若仅把姓名改成不同性别暗示就改变筛选结果,应进一步排查模型或流程偏差。

注意

反事实测试是诊断线索,不应代替群体统计或对数据采集过程的调查。

整章演算案例

用两组混淆矩阵识别风险

模型识别符合某项申请条件的人。A、B 两组各有 100 名真实符合者和 100 名真实不符合者;这里的数值仅演示指标,不作真实资格判断。

  1. 先列四种结果

    A 组 TP=90、FN=10、FP=20、TN=80;B 组 TP=70、FN=30、FP=10、TN=90。TP 是符合且被识别,FN 是符合却被漏掉,FP 是不符合却被识别。

  2. 看合格者被识别的机会

    A 组召回率为 90/(90+10)=90%,B 组为 70/(70+30)=70%。如果漏掉符合者代价很高,这 20 个百分点的差距值得调查。

    TPRₐ=90%;TPRᵦ=70%
  3. 也看另一种错误

    A 组误报率 20/(20+80)=20%,B 组 10/(10+90)=10%。只把 B 组阈值调低也可能增加误报,不能只优化一个数字。

    FPRₐ=20%;FPRᵦ=10%
  4. 追查与复测

    检查样本覆盖、标签可靠性、缺失率与业务流程,再考虑补数据或改模型。用新数据复测,报告样本数、阈值、总体质量及各群体错误。

把它串起来:群体指标是发现问题的线索,不会自动给出唯一“公平答案”;要结合错误代价、实际场景和专业审查。

参考与许可

本页依据 Google Machine Learning Crash Course 的课程结构与概念重新编写,文字和图示经过中文化重构。查看 Google 官方对应模块。Google 页面文字通常采用 CC BY 4.0,代码示例采用 Apache 2.0;第三方图片未直接复制。