推荐 :改善AI性别偏见的4种方法

2024-04-28 12:38

本文主要是介绍推荐 :改善AI性别偏见的4种方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者:Josh Feast 翻译:王子龙  校对:王琦

本文约2200字,建议阅读8分钟。

本文阐述导致AI偏见的原因并提出应用的解决方案。

图片来源:哈佛商业评论工作人员 / UNSPLASH

 

任何对AI偏见的审查都需要意识到一个事实:这些偏见主要源于人类固有的偏见。我们创建、训练的模型和系统就是我们人类自己的真实写照。

 

因此AI从人类那里学习到了性别偏见也就不足为奇了。例如,亚马逊的Alexa和苹果的Siri等常见AI系统的核心—自然语言处理(natural language processing, NLP)就存在性别偏见,而这并不是孤例。此前还发生了几起明显带有性别偏见色彩的案例,包括能够识别性别的计算机视觉系统,其在识别女性时报告的错误率更高,尤其是对于那些肤色较深的女性。

为了开发出更公平的技术,整个行业的研究人员和机器学习团队必须共同努力来纠正这种不平衡。幸运的是,我们开始看到有新的研究致力于解决这些问题。

 

其中需要特别提到的是目前正在进行的关于词嵌入(Word-embeddings)的偏见研究,词嵌入将词转换为数字表示,然后在自然语言处理模型中用作输入。词嵌入将词表示为序列或数字向量,如果两个词意思相近,它们的映射(associated embedding)在数学意义上也是相近的。词嵌入通过评估单词出现的上下文来编码信息。例如,AI能够客观地把“女王”一词填充到“男人是国王,女人是X”这句话中的X处。但当AI填写“父亲是医生,母亲是护士”这样的句子时,就会引起潜在的问题。这句话中固有的性别偏见反映了我们社会中对妇女的过时看法,这种看法既没有事实根据,也不平等。

 

很少有研究对情感相关的演讲中的性别偏见进行评估,而情感AI在未来的工作、营销以及几乎所有你能想到的行业中开始扮演更重要的角色。在人类社会中,当一个人对某一类人情感的误解多于另一类时,偏见就会产生。例如,错误地认为某一类人比另一类人更容易生气。目前的机器也有同样的偏见,它们将与情感相关的信息错误地分类。要理解为什么会这样,以及我们如何解决这个问题,先去了解造成AI偏见的原因就显得重要了。

 

什么导致了AI偏见?

 

在机器学习的背景下,偏见可能意味着某些人口统计类别的误差更大。因为找不到这种偏见的根源,所以在开发和训练机器学习模型时,研究人员必须考虑许多变量,包括以下因素:

 

  • 不完整的或偏斜的训练数据集:当训练数据中缺少某种人口统计类别时,就会出现这种情况。在那些有缺失人口统计类别的新数据上使用这些数据训练的模型时,则不能正确地衡量。例如,如果女性演讲者只占你训练数据的10%,那么当你将一个训练过的机器学习模型应用于女性时,很可能会产生更高程度的误差;

  • 训练模型所用的标签:绝大多数商业AI系统使用有监督机器学习,这意味着训练数据是被打上标签的,标签用来训练模型如何作出反应。通常情况下,这些标签是人类想出的,考虑到人们经常表现出偏见(既有有意识的,也有无意识的),这些偏见会无意地编码到由此产生的机器学习模型中。考虑到机器学习模型被训练出来用于估计这些标签,这种对特定性别不公平的分类将被编码到模型,这会导致偏见;

  • 特征和建模技术:机器学习模型的输入值或者实际的模型训练过程中都可能因为测量而产生偏见。例如,几十年来,语音合成,即把文本转换为语音的技术(例如:斯蒂芬·霍金的声音)和自动语音识别,即把语音转换为文本的技术(例如:CC字幕)都有该情况发生。与男性相比,女性演讲者的表现不佳,这是由于对演讲者的分析和建模对于声带较长、音调较低、个子较高的人来说更准确。因此,语音技术对于具有这些特征的演讲者(通常是男性)来说是最准确的,而对于那些音调较高的演讲者(通常是女性)来说就不那么准确了。

 

机器学习团队避免性别偏见的四个最佳解决方案

 

和生活中的许多事情一样,AI偏见的原因和解决方案并不是非黑即白的。“公平”本身甚至也必须通过量化来减轻偏见所带来的不必要影响。对于那些想要利用AI的力量,但又担心产生偏见的管理者来说,落实下面的方法对于你的机器学习团队很重要。

 

  • 确保训练样本的多样性(例如,在训练数据中使用与男性差不多数量的女性音频样本)。

  • 确保给音频打标签的人们有着多元化的背景。

  • 针对不同人口统计类别,鼓励机器学习团队分别评估模型的准确程度。并且当某个类别被不公平地对待时要能识别得出来。

  • 通过收集更多与敏感群体相关的训练数据来解决不公平的问题。在此基础上,可以应用新的机器学习去除偏见技术,该技术不仅惩罚主要变量的识别错误,还额外惩罚造成不公平的错误。

 

虽然研究这些原因和解决办法是非常重要的第一步,但仍有许多悬而未决的问题需要回答。除了训练机器学习模型之外,业界还需要开发更全面的方法以解答造成上述三个主要偏见的原因。此外,为了应对日益增加的多样性,未来的研究应该考虑性别变量的更广泛表示,如跨性别者、非二元性别等,以此来增强我们对此的理解。

 

我们有义务创造对每个人都有效和公平的技术。我相信,如果我们能够共同解决这些问题,AI的收益将超过风险。这取决于该领域的所有从业者和领袖合作、研究和开发解决方案,以减少AI对任何人的偏见。

原文标题:

4 Ways to Address Gender Bias in AI

原文链接:

https://hbr.org/2019/11/4-ways-to-address-gender-bias-in-ai

译者简介:王子龙,新加坡国立大学智能系统硕士在读。关注数据科学如何更好地创造出商业价值,感兴趣的方向有自然语言处理和智能流程自动化。希望自己能广泛地阅读好的文章并从中获得启发,也非常高兴能和大家一起学习、分享知识。

轩自: 数据派THU 公众号;

版权声明:本号内容部分来自互联网,转载请注明原文链接和作者,如有侵权或出处有误请和我们联系。


合作请加QQ:365242293  

数据分析(ID : ecshujufenxi )互联网科技与数据圈自己的微信,也是WeMedia自媒体联盟成员之一,WeMedia联盟覆盖5000万人群。

这篇关于推荐 :改善AI性别偏见的4种方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/943284

相关文章

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

Python判断for循环最后一次的6种方法

《Python判断for循环最后一次的6种方法》在Python中,通常我们不会直接判断for循环是否正在执行最后一次迭代,因为Python的for循环是基于可迭代对象的,它不知道也不关心迭代的内部状态... 目录1.使用enuhttp://www.chinasem.cnmerate()和len()来判断for

Java循环创建对象内存溢出的解决方法

《Java循环创建对象内存溢出的解决方法》在Java中,如果在循环中不当地创建大量对象而不及时释放内存,很容易导致内存溢出(OutOfMemoryError),所以本文给大家介绍了Java循环创建对象... 目录问题1. 解决方案2. 示例代码2.1 原始版本(可能导致内存溢出)2.2 修改后的版本问题在

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

Java中Object类的常用方法小结

《Java中Object类的常用方法小结》JavaObject类是所有类的父类,位于java.lang包中,本文为大家整理了一些Object类的常用方法,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. public boolean equals(Object obj)2. public int ha

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex