公平性:减少偏见

在训练数据中发现偏差来源后,我们就可以采取主动措施来减轻其影响。机器学习 (ML) 工程师通常采用以下两种主要策略来消除偏差:

  • 扩充训练数据。
  • 调整模型的损失函数。

扩充训练数据

如果对训练数据进行审核发现数据缺失、不正确或有偏差,解决问题的最直接方法通常是收集更多数据。

然而,虽然扩充训练数据非常理想,但这种方法的缺点也可能是不可行的,原因可能是缺少可用数据或阻碍数据收集的资源限制。例如,收集更多数据可能成本过高或耗时,或者因法律/隐私限制而不可行。

调整模型的优化函数

如果无法收集更多训练数据,另一种减少偏差的方法是调整模型训练期间损失的计算方式。我们通常使用对数损失函数等优化函数来惩罚错误的模型预测。但是,对数损失不会考虑子组成员资格。因此,我们可以选择优化函数,而不是使用对数损失,而设计以公平性意识的方式惩罚错误,以抵消我们在训练数据中发现的不平衡。

TensorFlow Model Remediation 库提供了一些实用程序,用于在模型训练期间应用两种不同的偏见缓解技术:

  • MinDiff:MinDiff 旨在通过对这两组的预测分布差异增加惩罚项,来平衡两类不同数据片段(男/女学生与非二元学生)的错误。

  • Counterfactual Logit Pairing:Counterfactual Logit Pairing (CLP) 旨在确保更改给定样本的敏感属性不会改变模型对该样本的预测。例如,如果训练数据集包含两个特征值相同的示例,但其中一个的 gender 值为 male,另一个的 gender 值为 nonbinary,如果这两个示例的预测结果不同,CLP 会增加惩罚项。

您选择用于调整优化函数的技术取决于模型的用例。在下一部分中,我们将通过考虑这些用例来深入了解如何完成模型公平性评估任务。

练习:检查您的理解情况

以下关于减少偏见技术的说法中,哪些是正确的?
MinDiff 和 CLP 都会惩罚与敏感属性相关的模型性能差异
这两种技术都旨在通过对由于训练数据中敏感属性表示方式不平衡而导致的预测错误进行惩罚来减少偏差。
MinDiff 会惩罚不同数据片段的预测结果在整体分布上的差异,而 CLP 会惩罚个别示例对的预测结果差异。
MinDiff 通过使两个子群组的分数分布保持一致来解决偏差问题。CLP 通过确保不会仅因子群组成员身份而对个别示例进行不同的处理来解决偏差问题。
向训练数据集添加更多示例始终有助于抵消模型预测中的偏差。
添加更多训练示例是一种有效的减少偏见策略,但新训练数据的组成很重要。如果其他训练样本表现出与原始数据类似的不平衡情况,它们可能无法帮助减少现有偏差。
如果您通过添加更多训练数据来减少偏见,则不应在训练期间也应用 MinDiff 或 CLP。
增强训练数据和应用 MinDiff 或 CLP 等技术可以相辅相成。例如,机器学习工程师或许能够收集足够的额外训练数据,将性能差异降低 30%,然后使用 MinDiff 进一步将差异再降低 50%。