图1 机器学习的公平性
目录
一、学习准备
二、数据和算法的不公平
1.公平性失衡造成的危害
①分配
②服务质量
③成见
④诋毁
⑤代表性过高或不足
三、如何改善不公平性?
1.检测不公平
2.了解并在公平的基础上构建模型
①确定危害和益处
②确定受影响的群体
③定义公平性指标
④减轻不公平性
3.用Python实现模型公平性
四、结论
在本文中,你将:
0 提高对机器学习中公平性重要性的认识。
1 了解与公平相关的危害
2 了解不公平评估和缓解措施。
我们可以发现,系统和模型在生活的日常决策中起着重要的作用,例如医疗保健诊断、欺诈检测、人脸识以及虚拟助手(Siri,小爱同学);因此,为了保证模型能够为每个人提供公平的结果,模型的创建过程也需要保证公平性。
想象一下,当你用于构建这些机器模型的数据缺少某些人口统计数据(例如种族、性别、政治观点、宗教)或比例不均(以偏概全)地代表此类人口统计数据时,会发生什么呢?。当模型的输出被解释为有利于某些人口统计数据时,情况会怎样?应用程序的后果是什么?请驻足思考一下,这将帮助你理解机器学习训练数据的处理。
"If you torture the data long enough, it will confess to anything" - Ronald Coase
如果你折磨数据足够长的时间,它会承认任何事情
这句话看起来既奇怪又难理解,但的确可以通过操纵数据来获得任何结论。尽管这种操纵有时是无意中发生的。这句话也可以这么理解:
假设在隔绝外界干扰的情况下,
若我们对一个刚诞生的孩子创造一个专门知识与概念构建的环境,孩子成长过程中就会不断的吸收学习其中的概念来适应环境, 最终孩子长大后就会适应这个环境并以灌输给他的思想思考;
保证人工智能和机器学习的公平性是一个复杂的社会技术挑战。这意味着它不能从纯粹的社会或技术角度来解决。
什么是不公平?百度词条告诉我们,不公平是收到了不公正待遇,包括对一群人的负面影响或“伤害”,例如根据种族、性别、年龄或残疾状况来定义的影响。
与不公平相关的主要危害可以分为:
0 分配不均 例如,某些人或者某些性别优先于另一群人或者性别
1 服务质量 如果为一个特定方案训练数据,但实际情况要复杂的多,最终服务性能较差
2 陈规定型观念 将给定组与预先分配的属性相关联
3 诋毁 不公平地批评和标记某事或某人
4 代表性过高或不足 这个想法意思是部分人在总体含量较低,却将它们的重要性过分夸大
尽管机器学习的某些特点在生活中表现出危害性,但在其他研究对象上缺点却是优点。
我们通过举例详细描述 :
考虑一个用于筛选贷款申请的假设系统。该系统倾向于选择白人男性作为比其他群体更好的候选人。因此,某些申请人被扣留贷款。或者一个用于销售的系统对急需的人会提出更高的价格。
又或者是某家公司用于筛选简历的招聘系统。该系统通过模型系统性的歧视一种性别或学历。导致能力完全可以弥补学历的人才被刷掉,这对某一群人是不公平的。
研究人员发现,与肤色较浅的男性图像相比,一些商业性别分类器在肤色较深的女性图像周围的错误率更高。参考
另一个臭名昭著的例子是洗手液器,它似乎无法感应到皮肤黝黑的人。参考
即使这些歧视起先是无意识的,但都会使一部分群体收到不公平的待遇。
在机器翻译中我们发现了一些刻板的性别观点。当将“他是护士,她是医生”翻译成土耳其语时,遇到了问题。土耳其语是一种无性别的语言,它有一个代词“o”来传达一个单数的第三人称,但是将句子从土耳其语翻译回英语会产生刻板印象和不正确的“她是护士,他是医生”。
图2 机器翻译(英>土)
图3 机器学习(土>英)
某种图像标记技术臭名昭著地将深色皮肤的人错误地标记为大猩猩。贴标签大部分情况下是侮辱人的。说它臭名昭著不仅仅是因为系统犯了一个错误,因为它专门设置了一个标签,这个标签长期以来一直被用来诋毁黑人。
不对称的图像搜索结果是这个危害的经典例子。当搜索男性比例高于女性的职业图像时,如在百度图片搜索“CEO”时,出现的结果更偏向于特定性别的结果。
图4 百度地图搜索"CEO"
首页唯一的女性图片还是广告,尽管中国女性CEO的比例已占到13.8%。
这五种类型的危害并不相互排斥,单个系统可以表现出多类型的危害。此外,每种情况的严重程度在不同地区,不同环境也表现不同。最重要的是,即使相对不严重的伤害,也会使人们感到疏远或被孤立;层层累计下,就如误差累计,最终也会将一群人置于严重的处境。
系统行为不公平的原因有很多。例如,社会偏见可能会反映在用于训练它们的数据集中。在招聘模型的训练中,过度依赖历史数据可能会加剧招聘不公平。通过使用10年内提交给公司的简历中的模式,该模型确定男性更有资格,因为大多数简历来自男性,这反映了过去男性在整个科技行业的主导地位。
关于某一人群的训练样本数据不足可能是不公平的原因。例如,图像分类器 a 对于深色皮肤人员的图像具有较高的错误率,因为较深的肤色在数据中的代表性不足。
在开发过程中做出的错误假设也会导致不公平。例如,旨在根据人们的面部图像预测谁将犯罪的面部分析系统可能会导致破坏性的假设。这可能会对被错误分类的人造成重大伤害。长相凶恶的人内心也不一定凶恶。
尽管公平性的特征没有定量指标来描述,并且不可能完全消除系统中的偏见,但模型构建者仍然有责任去检测和缓解公平性问题。使用机器学习模型时,通过确保模型的可解释性以及评估和缓解不公平性来了解模型非常重要。
我们以贷款选择为例,找出每个因素对预测的影响程度。
如下是评估方法:
0 确定危害和益处 第一步是确定危害和益处。想想行动和决策如何影响潜在客户和企业本身。
1 确定受影响的群体 一旦您了解可能发生的危害或好处,请确定可能受影响的群体。这些群体是按性别、种族还是社会群体定义的?
2 定义公平性指标 最后,定义一个指标,以便您在工作中有一些可以衡量的东西来改善这种情况。
与贷款相关的危害和好处是什么?我们构建了贷款的混淆矩阵:
表1 混淆矩阵
|
成功贷款(T) |
失败贷款(F) |
有资格贷款(T) |
TT |
TF |
没资格贷款(F) |
FT |
FF |
其中,TT表示有资格且贷款成功的人,TF表示有资格却贷款失败的人,FT表示没资格却贷款成功的人,FF表示没能力且贷款不成功的人.
我们可以看出,TF和FT是贷款中的危害,TT和FF是好处。
TF - 在这种情况下,能够偿还贷款的申请人被拒绝。这是一个不利事件,因为贷款资源没有被信用合格利用。
FT (误报)- 在这种情况下,申请人确实获得了贷款,但其并没有贷款资格。因此,申请人的案件将被发送到债务催收机构,这可能会影响他们未来的贷款申请。
下一步需要确定哪些群体可能受到影响。例如,在申请信用卡时,模型可以确定,在分享家庭资产的配偶里,妇女获得较低的信用额度。因此,由性别界定的整个人口结构将会受到影响。
现在已经确定了危害和受影响的群体,在本例中,按性别划分。现在,使用量化因子来分解其指标。例如,使用下面的数据,您可以看到女性的FT(误报)率最大,男性的FT(误报)率最小,而TF率则相反。
表2
FT误报率 |
TF率 |
count |
|
女性 |
0.37 |
0.27 |
54032 |
男性 |
0.31 |
0.35 |
28620 |
性别不明者 |
0.33 |
0.31 |
1266 |
表2告诉我们几件事。首先,我们注意到数据中的性别不明者相对较少。数据是不均匀的,因此需要根据数据谨慎选择模型;
为了减轻不公平,请探索模型以生成各种缓解的模型,并比较它在准确性和公平性之间做出的权衡,以选择最适宜的模型。
本入门课程不会深入探讨算法不公平缓解的细节,例如后期处理和减少方法,但这里有一个您可能想要尝试的工具。
Fairlearn是一个开源Python包,允许使用者评估系统的公平性并减轻不公平。可让人工智能(AI)系统开发人员评估其系统的公平性并减轻任何观察到的不公平问题。 Fairlearn包含缓解算法以及用于模型评估的Jupyter小部件。 除了源代码之外,该存储库还包含Jupyter笔记本,其中包含Fairlearn用法示例。
为了防止偏见首先被引入,我们应该:
0 从事系统工作的人员应具有多样化的背景和观点 避免模型构建者偏见
1 使用能反映我们社会多样性的数据集 避免数据偏见
2 开发更好的方法来检测和纠正发生偏差 避免算法偏见
想想现实生活中的场景,在这些场景中,在模型构建和使用中,不公平是显而易见的。我们还应该考虑什么?
课后测验
学习链接
“本站所有文章均为原创,欢迎转载,请注明文章出处:数据科学 机器学习系列2 机器学习的公平性_GISer Liu的博客-CSDN博客。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。”