如何消除机器学习模型中的性别偏见:NLP和单词嵌入

2020-09-08 21:14:42

大多数使用的单词嵌入都是明显的性别歧视,让我们看看一些方法来消除这种嵌入的偏见。

注--本文提供了Bolukbasi等人的评论和论点。在这篇论文中,“男人之于计算机程序员就像女人之于家庭主妇?去偏向单词嵌入“。所有图形绘图都是使用dra.io绘制的。

单词嵌入是NLP应用程序的核心,通常,由于他们接受培训的大型文本语料库中存在固有的刻板印象,这些应用程序最终会对某一性别产生偏见。当这种模式投入生产时,可能会导致性别不平等进一步扩大,并可能对我们整个社会产生深远的影响。

为了领会我所说的要点,这里有一段来自Bolukbasi等人的片段,2016“男人之于计算机程序员就像女人之于家庭主妇?去偏向单词嵌入“,

例如,假设搜索查询是针对卡内基梅隆大学计算机科学博士生的“CMU计算机科学博士生”。现在,该目录为学生 - 提供了127个几乎相同的网页,这些网页的不同之处只是学生的名字不同。-…。然而,单词嵌入也将与计算机科学相关的术语排序为更接近男性名称,而不是女性名称。结果是,在只有玛丽和约翰两个名字不同的两个页面之间,单词嵌入会影响搜索引擎将约翰的网页排在比玛丽更高的位置。

单词嵌入是词汇的一种表示形式。它们是代表单词的向量,其中空间接近度决定了单词之间的相似性或上下文。

作为参考,这里有四个用矢量表示的单词。不出所料,“狗”和“猫”更接近,因为它们都代表动物,而“芒果”和“苹果”更接近,因为它们代表水果。相反,这两个群体都相距甚远,因为他们彼此并不相似。

在此图中,为便于可视化,向量是二维的,但是,大多数单词嵌入模型,如word2vec、手套等都是几百维的。对于本文,我们将对所有示例使用word2vec。

在我们的词汇表中,有些词是中性的,例如,“足球”和“接待员”,而有些词是特定性别的,比如“兄弟”和“父亲”。通过各种研究[1],性别中性词的嵌入获得了刻板印象和偏见。

像“接待员”这样的词与女性关系密切,而“足球”与男性关系更密切。这就是所谓的直接偏向。也有许多情况下,偏差不是直接的,而是通过链接高级功能而已知的,称为间接偏差。与“足球”相比,“簿记”这样的词更接近“垒球”,这可能是因为女性间接地与“簿记员”、“接待员”和“垒球”联系在一起。

男性和外科医生之间的矢量距离与女性和护士之间的矢量距离相同,这表明存在直接的性别偏见。

我们的主要目标是减少性别中立词中的偏见,保留性别特定词中的性别因素,同时保留词嵌入的有用属性。

在此图中,x轴反映了单词嵌入he和he之间的差异,而y轴表示性别中立,其中轴以上的单词本质上是性别中立的,轴以下的单词是特定于性别的。我们的目标是将水平线上方的单词折叠到y轴上,以消除所有偏差。

按照Bolukbasi等人的建议,该方法分为识别性别子空间、中和和均衡三个步骤。[1]。

一个词的嵌入由数百个维度组成。为了消除性别偏见,我们首先需要识别在嵌入中捕捉到偏见的维度(也称为子空间)或维度(可以有多个维度)。

我们首先考虑定义性别概念的单词嵌入集(用e表示)之间的差异(例如,“男性”和“女性”、“他”和“她”等)。然后,利用这些差值的奇异值分解(SVD)计算偏差子空间。直观地说,一种更简单的方法是取差异的平均值来概括地捕捉性别。

在获得偏向b之后,我们将通过减去嵌入在偏向轴b上的投影(使用e&;b的点积)来去除所有中性单词(如接待员和外科医生)中的偏向成分。

对于最后一步,我们将处理特定于性别的单词。像男孩和女孩这样的词应该在性别上一视同仁,也就是说,“男孩”这个词不应该更男性化,因为“女孩”这个词是女性化的。

直觉 - 对于每个性别特定的词,我们使它们的向量长度相等,这样,在所有的词对中,性别成分都会以相等的强度保留下来。此外,它还强制所有性别中立的词与性别相关的词是等距离的。接待员与男孩和女孩的距离相等。

通过这些步骤,我们可以消除词嵌入中的性别偏见,同时保留其有用的属性。一些人认为,这种单词嵌入是在大型词库上训练的,反映了统计上的现实,而不是偏见,是可以接受的,例如,更多的计算机程序员是男性,所以可以说“程序员”这个词更接近男性而不是女性。

归根结底,这完全取决于使用这些嵌入的上下文。有一些场景,比如大学应用程序,单词嵌入要没有偏见和性别中立是很重要的,而有些场景根本不需要去偏见。你认为如何?