2020-11-12 吴恩达DL学习-C5 序列模型-W2 自然语言处理与词嵌入(2.10 词嵌入除偏)

274 篇文章 24 订阅
233 篇文章 0 订阅

1.视频网站:mooc慕课https://mooc.study.163.com/university/deeplearning_ai#/c
2.详细笔记网站(中文):http://www.ai-start.com/dl2017/
3.github课件+作业+答案:https://github.com/stormstone/deeplearning.ai

2.10 词嵌入除偏 Debiasing Word Embeddings

现在ML和人工智能算法正渐渐地被信任用以辅助或是制定极其重要的决策,因此我们想尽可能地确保它们不受非预期形式偏见影响,比如说性别歧视、种族歧视等等。

本节课中我会向你展示词嵌入中一些有关减少或是消除这些形式的偏见的办法。

本节课中当我使用术语bias时,我不是指bias本身这个词,或是偏见这种感觉,而是指性别、种族、性取向方面的偏见,那是不同的偏见,同时这也通常用于ML的学术讨论中。
在这里插入图片描述

不过我们讨论的大部分内容是词嵌入是怎样学习类比,像Man:Woman,像King:Queen,不过如果你这样问,如果Man对应Computer Programmer,那么Woman会对应什么呢?

所以这篇论文(Bolukbasi T, Chang K W, Zou J, et al. Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings[J]. 2016.)的作者Tolga Bolukbasi、Kai-Wei Chang、James Zou、Venkatesh Saligrama和 Adam Kalai发现了一个十分可怕的结果,就是说

  • 一个已经完成学习的词嵌入可能会输出Man:Computer Programmer,同时输出Woman:Homemaker,那个结果看起来是错的,并且它执行了一个十分不良的性别歧视。
    • 如果算法输出的是Man:Computer Programmer,同时Woman:Computer Programmer这样子会更合理。
  • 同时他们也发现如果Father:Doctor,那么Mother应该对应什么呢?一个十分不幸的结果是,有些完成学习的词嵌入会输出Mother:Nurse。

因此根据训练模型所使用的文本,词嵌入能够反映出性别、种族、年龄、性取向等其他方面的偏见,一件我尤其热衷的事是,这些偏见都和社会经济状态相关,我认为每个人不论你出身富裕还是贫穷,亦或是二者之间,我认为每个人都应当拥有好的机会,同时因为ML算法正用来制定十分重要的决策,它也影响着世间万物,从大学录取到人们找工作的途径,到贷款申请,不论你的的贷款申请是否会被批准,再到刑事司法系统,甚至是判决标准,学习算法都在作出非常重要的决策,所以我认为我们尽量修改学习算法来尽可能减少或是理想化消除这些非预期类型的偏见是十分重要的。

至于词嵌入,它们能够轻易学会用来训练模型的文本中的偏见内容,所以算法获取到的偏见内容就可以反映出人们写作中的偏见。在漫长的世纪里,我认为人类已经在减少这些类型的偏见上取得了进展,幸运的是对于人工智能来说,实际上我认为有更好的办法来实现更快地减少AI领域中相比与人类社会中的偏见。虽然我认为我们仍未实现人工智能,仍然有许多研究许多难题需要完成来减少学习算法中这些类型的偏见。

本节课里我想要做的是与你们分享一个例子,它是一篇论文的一套办法,就是下面引用的这篇由Bolukbasi和其他人共同撰写的论文,它是研究减少词嵌入中偏见问题的。
在这里插入图片描述

就是这些,假设说我们已经完成一个词嵌入的学习,那么babysitter就是在这里,doctor在这里,grandmother在这里,grandfather在这里,也许girl嵌入在这里,boy嵌入在这里,也许she嵌在这里,he在这里,所以首先我们要做的事就是辨别出我们想要减少或想要消除的特定偏见的趋势(Identify bias direction)。

为了便于说明,我会集中讨论性别歧视,不过这些想法对于所有我在上面提及的其他类型的偏见都是通用的。这个例子中,你会怎样辨别出与这个偏见相似的趋势呢?

主要有以下三个步骤:

一、对于性别歧视这种情况来说,我们能做的是 e h e − e s h e e_{he}-e_{she} eheeshe,因为它们的性别不同,然后将 e m a l e − e f e m a l e e_{male}-e{female} emaleefemale,然后将这些值取平均,将这些差简单地求平均。
在这里插入图片描述

这个趋势(上图横轴)看起来就是性别趋势或说是偏见趋势(bias),然后这个趋势(上图纵轴)与我们想要尝试处理的特定偏见并不相关,因此这就是个无偏见趋势(non-bias direction)。

在这种情况下,偏见趋势可以将它看做1D子空间,所以这个无偏见趋势就会是299D的子空间。我已经略微简化了,原文章中的描述这个偏见趋势可以比1维更高,同时相比于取平均值,如同我在这里描述的这样,实际上它会用一个更加复杂的算法叫做SVU,也就是奇异值分解,如果你对主成分分析(Principle Component Analysis)很熟悉的话,奇异值分解这个算法的一些方法和主成分分析 (PCA)其实很类似。

二、中和步骤(Neutralize),对于那些定义不确切的词可以将其处理一下,避免偏见。
在这里插入图片描述

有些词本质上就和性别有关,像grandmother、grandfather、girl、boy、she、he,他们的定义中本就含有性别的内容,不过也有一些词像doctor和babysitter我们想使之在性别方面是中立的。

同时在更通常的情况下,你可能会希望像doctor或babysitter这些词成为种族中立的,或是性取向中立的等等,不过这里我们仍然只用性别来举例说明。对于那些定义不明确的词,它的基本意思是不像grandmother和grandfather这种定义里有着十分合理的性别含义的,因为从定义上来说grandmothers是女性,grandfather是男性。

所以对于像doctor和babysitter这种单词我们就可以将它们在这个轴(纵轴)上进行处理,来减少或是消除他们的性别歧视趋势的成分,也就是说减少他们在水平方向上的距离。这就是第二个中和步。

三、均衡步(Equalize pairs),意思是说你可能会有这样的词对,grandmother和grandfather,或者是girl和boy,对于这些词嵌入,你只希望性别是其区别。那为什么要那样呢?
在这里插入图片描述

在这个例子中,babysitter和grandmother之间的距离或者说是相似度实际上是小于babysitter和grandfather之间的(上图紫色线所示),因此这可能会加重不良状态,或者可能是非预期的偏见,也就是说grandmothers相比于grandfathers最终更有可能输出babysitting。
在这里插入图片描述

所以在最后的均衡步中,我们想要确保的是像grandmother和grandfather这样的词都能够有一致的相似度,或者说是相等的距离,和babysitter或是doctor这样性别中立的词一样。这其中会有一些线性代数的步骤,但它主要做的就是将grandmother和grandfather移至与中间轴线等距的一对点上,现在性别歧视的影响也就是这两个词与babysitter的距离就完全相同了(上图绿色线)。

所以总体来说,会有许多对像grandmother-grandfather,boy-girl,sorority-fraternity,girlhood-boyhood,sister-brother,niece-nephew,daughter-son这样的词对,你可能想要通过均衡步来解决他们。

最后一个细节是你怎样才能够决定哪个词是中立的呢?

对于这个例子来说,doctor看起来像是一个应该对其中和(Neutralize)的单词,来使之性别不确定或是种族不确定。相反地,grandmother和grandfather就不应是性别不确定的词。也会有一些像是beard词,一个统计学上的事实是男性相比于比女性更有可能拥有胡子,因此也许beard应该比female更靠近male一些。

因此论文作者做的就是训练一个分类器来尝试解决哪些词是有明确定义的,哪些词是性别确定的,哪些词不是。结果表明英语里大部分词在性别方面上是没有明确定义的,意思就是说性别并不是其定义的一部分,只有一小部分词像是grandmother-grandfather,girl-boy,sorority-fraternity等等,不是性别中立的。因此一个线性分类器能够告诉你哪些词能够通过中和步来预测这个偏见趋势,或将其与这个本质是299D的子空间进行处理。

最后,你需要平衡的词对的数实际上是很小的,至少对于性别歧视这个例子来说,用手都能够数出来你需要平衡的大部分词对。完整的算法会比我在这里展示的更复杂一些,你可以去看一下这篇论文了解详细内容,你也可以通过编程作业来练习一下这些想法。

总结一下,减少或者是消除学习算法中的偏见问题是个十分重要的问题,因为这些算法会用来辅助制定越来越多的社会中的重要决策,在本节课中分享了一套如何尝试处理偏见问题的办法,不过这仍是一个许多学者正在进行主要研究的领域。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值