摘要
公平是决策的关键特征。随着机器学习模型越来越多地用于敏感的应用领域(例如教育和就业)中以进行决策,因此至关重要的是,由此类模型计算出的决策必须避免意外的偏差。但是我们如何自动验证任意机器学习模型的公平性呢?对于给定的机器学习模型和一组敏感的输入参数,我们的 Aequitas 方法会自动发现歧视性输入,并突出违反公平性的部分。Aequitas 的核心是三种新颖的策略,用于在输入空间上进行概率搜索,目的是发现公平性违规。我们的 Aequitas 方法利用常见机器学习模型中固有的鲁棒性属性来设计和实现可扩展的测试生成方法。我们生成的测试输入的一个吸引人的功能是可以将它们系统地添加到基础模型的训练集中并提高其公平性。为此,我们设计了一个完全自动化的模块,以确保提高模型的公平性。
我们实现了 Aequitas,并在六个最新的分类器上对其进行了评估。我们的主题还包括在设计时考虑到公平性的分类器。我们表明,Aequitas 有效地生成了输入,以发现所有主题分类器中的公平性违规,并使用生成的测试输入来系统地提高各个模型的公平性。在我们的评估中,Aequitas 产生高达 70%的歧视性投入,并利用这些输入将公平性提高至 94%。
介绍
不歧视是实现社会保护和平等人权的最关键因素之一。不歧视背后的基本思想是消除基于种族,性别或宗教等敏感属性的任何社会偏见。
由于过去几十年来机器学习的巨大进步,它的应用现已扩展到包括教育和就业在内的各种敏感领域。关键的见解主要是通过机器学习模型使决策自动化。另一方面,由于模型的训练数据集中存在偏见,因此此类模型可能会引入意外的社会偏见。反过来,这违反了各自组织或国家旨在争取的非歧视政策。因此,验证机器学习模型以检查可能的歧视至关重要。
在本文中我们关注的是,在决策过程中,任何两个在手头工作上相似的人也应该得到类似的待遇。因此,我们关注个体的公平性。因为这对于消除社会偏见至关重要,我们的目标是检查可能违反个体公平性的歧视。这种歧视的确切性质取决于机器学习模型及其输入特征。因此,给定一个机器学习模型和模型的输入特征,就有可能系统地探索输入空间并发现诱发歧视的输入。我们把这种输入称为歧视性输入。本文的主要目标是设计可扩展的技术,以促进快速发现歧视性输入。特别是给定一个机器学习模型和一组歧视性输入特征(如种族、宗教等),我们的 Aequitas 方法可以自动发现输入,以清楚地突出被测模型的歧视性。
例如,考虑图 1 所示分类器的决策边界。假设两个点 A 和 B 仅在 GenderA 或 GenderB 上有所不同。尽管在性别方面非常相似,但是该模型对点 A 和点 B 进行了不同的分类。如果我们认为使用这样的分类器来预测薪水水平,那么它肯定会引入基于性别的意外社会偏见。这种不公平的社会偏见不仅影响当今的决定,而且可能会为后代放大。如点 A 和点 B 所示,造成歧视(即不公平)的原因可能是由于过时的训练数据无意中对分类器模型的某些属性(图 1 中的性别)造成了偏见。使用 Aequitas 方法,我们自动发现存在概率很高的类似于 A 和 B 的输入。这些输入将用于系统地重新训练模型并减少其不公平性。
本文工作包括:
(1)我们提出了 Aequitas,这是一种新颖的方法,可以系统地生成歧视性的测试输入并发现机器学习模型中的公平性违规行为。为此,我们提出了三种具有不同复杂程度的策略。
(2)我们提出一种全自动技术,以利用生成的歧视性输入并系统地重新训练机器学习模型以提高其公平性。
(3)我们提供基于 Python 的 Aequitas 的实现。我们的实施和所有实验数据都是公开可用的。
(4)我们使用六个最先进的分类器评估 Aequitas 方法,其中包括一个考虑公平性的分类器。我们的评估表明,Aequitas 可有效产生歧视性输入并提高被测分类器的公平性。特别是,Aequitas 产生了高达 70%的歧视性投入,并且将公平性提高了 94%。
方法概览
我们提出、设计和评估三种具有不同复杂度的方案,以系统地发现软件公平性问题。 我们的方法的关键组成部分概述如下。
为什么 Aequitas 有用?Aequitas 之所以工作,是因为常见的机器学习模型具有鲁棒性。 特别是,如果我们以较小的 δ 干扰模型的输入,则预期输出不会发生巨大变化。 正如我们期望被测机器学习模型相对可靠一样,我们可以利用其固有的鲁棒性属性来系统地生成表现出相似特征的测试输入。 在我们的 Aequitas 方法中,我们专注于给定输入的歧视性。 我们旨在利用鲁棒性在已经发现的歧视性输入附近发现更多歧视性输入。
如何使用 Aequitas 改善软件公平性?我们设计了一个完全自动化的模块,该模块可以利用 Aequitas 产生的歧视性输入并重新训练被测机器学习模型。经验表明,这种策略为开发人员提供了有用的功能。具体来说,Aequitas 方法通过重新培训自动提高了机器学习模型的公平性。例如,在某些决策树分类器中,我们的 Aequitas 方法将歧视性输入的比例降低了 94%。
结果
我们使用三种不同的测试生成方法,即 Aequitas 随机,Aequitas 半定向和 Aequitas 完全定向。在系统地搜索输入空间方面,这些方法在提高复杂性方面有所不同。 特别是,Aequitas 完全定向在搜索输入空间时涉及到最高水平的复杂性。正如预期的那样,从图 5 可以看出,完全控制的 Aequitas 始终优于随机的 Aequitas 和半自动的 Aequitas。但是,与随机的 Aequitas 相比,全方向的 Aequitas 和 Aequitas 的半定向需要更多的计算资源。 因此,与我们的其余方法相比,Aequitas random 更适合用于单位时间计算资源有限的测试。 图 5 中使用的测试对象是 Fair SVM。
为了说明我们的 Aequitas 方法在最新的公平性测试中的强大功能,我们还将我们的方法与最新的方法进行了比较,后者通过图 5 中的“ Random”捕获。很明显,即使在我们的 Aequitas 方法中实施的最不强大的技术(即 Aequitas random)也明显优于最新技术。在我们的评估中,我们发现 Aequitas 比最新的 random 更有效。测试的平均效率是 9.6,最高是 20.4,我们通过测试生成技术生成的歧视性输入的数量来衡量有效性。Aequitas 还提供了自动重新训练机器学习模型的功能,其目的是减少歧视性输入的数量。结果是 Aequitas 平均减少了 43.2%的歧视性输入,最大减少了 94.36%。
RQ1: Aequitas 在寻找歧视性输入方面有多有效?
就产生的歧视性输入数量而言,Aequitas 完全定向方法优于纯随机方法,最高可达 20.4 倍。它的性能也比 Aequitas 半定向的性能好 56.7%,后者又比我们最不复杂的方法 Aequitas 的随机性能好 64.9%。
RQ2: Aequitas 查找歧视性输入的效率如何?
完全定向的 Aequitas 比现有技术快 83.27%,在多层感知器的情况下,最大改进可达到 96.62%。
RQ3:生成的测试输入对提高模型的公平性有多大用处?
使用 Aequitas 进行再培训可将中的歧视性百分比平均降低 43.2%,最高可降低 94.36%。
结论
在本文中,我们提出了一种完全自动化的定向测试生成策略(Aequitas),可以在机器学习模型中快速生成歧视性输入。Aequitas 背后的关键见解是利用常见机器学习模型的鲁棒性,并用其系统地指导测试生成过程。Aequitas 提供有关被测模型中歧视性输入数量的统计证据。此外,Aequitas 结合了策略来系统地利用生成的测试输入来提高模型的公平性。我们使用最新的分类器对 Aequitas 进行评估,并证明 Aequitas 在产生歧视性测试输入以及提高机器学习模型的公平性方面有效。但是在当前状态下,Aequitas 没有能力在模型中定位歧视原因。需要进一步的工作以找出模型中的歧视原因。
致谢
本文由南京大学软件学院 2019 级硕士张朱佩田翻译转述。