包容性机器学习指南 - AutoML

在 Google,我们一直在认真思考那些激励并深刻影响我们在人工智能 (AI) 领域的工作的原则。我们致力于采用以人为本的方法,推进适合所有用户和使用情境的负责任的 AI 做法和产品。这些关于负责任的包容性 AI 的价值观是 AutoML 机器学习产品套件的核心,表现在以下方面。

快速上手使用

AutoML 通过简单易用的无代码用户体验让 AI 可以为更多组织和个人所用,而不需要他们具备机器学习经验。

AutoML 题图

利用迁移学习 (Transfer Learning) 和学会学习 (Learning to Learn) 等算法技术,AutoML 使组织能够使用比通常所需更小的数据集来构建自定义模型,从而降低了使用门槛。

服饰

借助 AutoML,您能够轻松构建有意义且贴合使用情境的机器学习系统。例如,如果您发现我们的通用模型未涵盖您所属领域中专有的词汇或术语,则可以创建一个自定义模型来纳入您关注的语言特征。如果您发现宽泛的服饰分类模型不适合您的受众群体的服饰风格,则可以训练一个表现更好的模型。

机器学习公平性

为了达成我们让机器学习惠及所有人的使命,我们非常关注化解那些围绕着构成并影响我们所有人生活的社会类别而形成的固有偏见。在 Google,这个研究领域称为机器学习公平性。在本文中,我们将分享 Google 目前对这一主题的看法,以及我们关于如何在涉及机器学习公平性的领域中应用 AutoML 的建议。

世界各地的公平性

什么是机器学习的公平性?

机器学习的公平性是学术界、从业者和广大公众研究和讨论的一个激动人心的活跃领域,目标是了解当具有不同种族、收入、性取向、宗教、性别以及历史上与歧视和边缘化相关的其他特征出现在算法系统或算法辅助决策中时,机器学习对于与这些特征相关的人群表现出的不公正或有偏见的对待方式,并对这种对待方式加以防止。

这些算法挑战的表现方式多种多样,包括嵌入在训练数据集内的社会偏见、在机器学习系统开发期间做出的决策,以及机器学习系统部署在现实世界中时出现的复杂反馈环。

在研究机器学习的公平性时,我们会看到各种各样合理的见解和目标。例如,我们可以训练机器学习分类器,使其在所有社会群体中实现同样好的预测效果。或者,根据对历史不公平现象的影响的研究结果,我们可能想要设计一种尽力在未来更正或减轻不利影响的机器学习系统。这些以及其他许多方法都很重要,而且往往相互关联。

如需了解更多信息,请查看 Google 负责任的 AI 做法推荐的公平性做法Google 有关机器学习和人为偏见的视频以及 Moritz Hardt 和 Solon Barocas 的“机器学习公平性教程”

鞋子

机器学习公平性和 AutoML

在 AutoML 中,我们可以通过不同的方式增强包容性和公平性。如前所述,如果您目前能够使用的机器学习模型由于缺乏历史数据或数据表示不当而无法完全满足您的社区或用户的需求,您可以创建更合适的自定义模型。在使用 AutoML 创建的任何自定义模型中,您还可以添加数据来帮助模型在与您的使用场景相关的所有类别中实现同样的预测效果,以此来实现公平性目标。这些与公平性相关的措施可能有助于降低与某些机器学习系统相关的以下类型负面后果的风险。

天线

代表性伤害

当机器学习系统夸大或反映关于特定群体的负面刻板印象时,就会发生这种类型的伤害。例如,生成图片搜索结果或自动文本建议的机器学习模型往往根据先前的用户行为(例如,常用搜索字词或评论)进行训练,因而可能导致令人反感的搜索结果。除了在当下对个人用户造成冒犯之外,这种代表性伤害还会扩散至更广泛的人群中,并产生长期的社会影响。

礼服

机会剥夺

机器学习系统越来越多地用于做出预测和决策,这些预测和决策会在个人机会、资源和整体生活质量方面产生实际后果和持久影响。

感叹号

产品故障比例失调

在有些情况下,不公平性涉及基本的易用性和可用性。例如,公共卫生间使用的某些皂液器已被证明在识别肤色较暗的个人时故障率偏高。

接下来,我们将讨论您在 AutoML 中构建自定义模型时可以采取的能增强公平性的步骤,并将其运用到您的机器学习系统中。我们将专注于消除训练数据集中存在的偏见,评估自定义模型的性能差异,并注意在使用自定义模型时要考虑的一些事项。

针对机器学习公平性评估您的使用场景时,首先要执行哪些步骤?

考虑您的产品的使用情境和用途。

易用性

如上所述,在有些情况下,公平性涉及基本的易用性和可用性。

法律

在其他情况下,公平性会涉及到那些限制使用直接表明敏感特征或与这些特征高度相关的数据的法律和法规,即使这些数据具有统计相关性也是如此。具有其中某些特征的人群在某些情况下还可能在法律的歧视保护范围内(例如,“受保护的人群类别”)。

气泡

而在其他的情况下,不公平性并不那么显而易见,而需要针对您的机器学习系统可能的实际运用方式,或者在其长期运用中让偏见得以渗入的可能性,提出一些微妙的社会、政治和道德问题。例如,如果您使用 AI 生成自动文本或翻译,则务必要考虑哪些类型的偏见或刻板印象可能在道德上存在问题(例如,将性别与工作类型相关联,或将宗教与政治观点相关联)。

当您开始构建自己的机器学习系统时,请查看您所在区域和您的应用所服务的地区与歧视相关的法规,以及您所属领域的现有研究或产品信息,以了解常见的公平性问题。

请考虑以下关键问题。

以下是其他一些值得提出的关键问题。如果您对其中任何问题的回答是肯定的,则可能需要考虑对您的使用场景进行更彻底的分析,以发现潜在的偏见相关问题。

您的使用场景或产品是否明确使用以下任何数据:生物特征、种族、肤色、宗教、性取向、社会经济状况、收入、国家/地区、地理位置、健康状况、语言或方言?

您的使用场景或产品是否使用可能与上面列出的任何个人特征高度相关的数据?例如,邮政编码或其他地理空间数据通常与社会经济状况和/或收入相关;同样,图片/视频数据可以揭示有关种族、性别和年龄的信息。

您的使用场景或产品会对个人的经济或其他重要生活机会产生负面影响吗?

接下来,我们来看看您在完成 AutoML 工作流中的不同步骤时可以采取哪些方法来增强机器学习公平性。

数据指南

我们从 AutoML 的第一步开始:整理您的训练数据。虽然任何训练数据都不可能完全“无偏见”,但如果您仔细考虑数据中潜在的偏见来源并采取措施解决这些问题,就可以大大提高构建出更好、包容性更强的产品的可能性。

数据中可能存在哪些偏见?

有偏见的分布

有偏见的数据分布

当您的训练数据未能真正代表您的产品所服务的人群时,就会发生这种情况。请仔细考虑您的数据的收集方式。例如,如果您有一个用户提交的照片数据集,并且为保证图片清晰度而对其进行过滤,则可能会过度代表拥有高价相机的用户,从而使您的数据出现偏向性。通常,应考虑如何根据您的产品所服务的用户群组分配数据。您是否为每个相关群组提供了足够的数据?经常存在着微妙的系统性原因,有可能导致您的数据集未能涵盖现实世界使用场景的完整多样性。

为了缓解此问题,您可以尝试从多个来源获取数据。或者仔细过滤数据,确保只从过度代表的群组中提取那些最有用的示例。

有偏见的描绘

有偏见的数据描绘

有可能出现这种情况:对于您能想到的每个受众特征群组,您都有适当数量的数据,但对某些群组的描绘可能不如其他群组正面。设想一个关于演员的微博帖子数据集。您可能出色完成了收集男演员和女演员数据(各占一半)的工作,但是当您深入研究内容时,您发现关于女演员的帖子往往比男演员的帖子更具负面性。这可能会导致您的模型学到某种形式的性别偏见。

对于某些应用,群组之间的描绘差异可能不是问题。例如,在医学分类中,捕捉细微的人口统计差异对实现更准确的诊断非常重要。但对于其他应用,有偏见的负面关联可能会产生财务或教育方面的影响、限制经济机会,并带来情感和内心上的痛苦。

如果可行,请考虑亲自检查您的数据是否存在这些负面关联,或者可使用基于规则的过滤条件来移除负面表达(如果您认为这种方法适合自己的应用)。

代理变量

人们很容易有这么一种错误的想法:只要移除了包含受保护受众特征信息的变量,模型就必然不存在偏见。但实际上,许多变量都与受众特征密切相关,包括地理位置、教育水平和收入等(仅举数例)。如果您可以查看与您的数据相关的受众特征信息,请务必根据这些信息分析结果,以确保您的模型公平对待不同的群体。

有偏见的标签

有偏见的标签

为 AutoML 创建训练数据的一个关键步骤是根据相关类别来为数据加标签。最大限度地减少这些标签中的偏见与确保数据具有代表性同等重要。您需要了解您的标签团队。他们住在哪里?他们的母语是什么?他们的年龄和性别怎样?过于均质化的标注者群体可能会使标签出现一时难以察觉的错误或偏见。

理想情况下,请确保您的标签团队是您所在领域的专家,或者提供相关说明对他们进行有关的培训,并实施二次审核流程,以便对标签质量进行抽查。需要加标签的数据越复杂,就越要努力确保标签团队理解自己的工作;绘制边界框和为文本实体加标签可能不一定对每个人而言都直观明了,因此,请务必分解每项任务并预期常见问题。其目的是为了在制定决策时针对客观性而非主观性进行优化。对标签团队进行“无意识偏见”培训也被证实有助于提高标签在多样性目标方面的质量。此外,请允许标签团队自我报告问题和要求澄清相关说明,这也有助于最大限度地减少标签流程中的偏见。

提示:如果您使用 AutoML 中的人工标签服务,请在编写说明时参考以下准则。

规划本

确保您的标签说明和培训材料包含有关您的使用场景的详细具体背景信息、最终用户说明,以及有助于标签团队记住您的用户群的多样性的说明性示例。

扬声器

查看来自标注者的任何评论,以确定哪些方面存在混淆和误解,并在抽查、批准和拒绝您收到的数据标签时密切关注任何敏感类别。

数据集准备就绪后,请考虑指定测试/训练拆分

在机器学习新手指南(VisionNatural LanguageTranslationVideo IntelligenceTables)中,我们讨论了数据集在机器学习过程中的划分方式。如指南所述,在 AutoML 中,您可以让 Google 自动拆分数据集,也可以手动指定测试/训练拆分方式。如果您的使用场景需要,不妨考虑第二种方案。

数据测试

在手动拆分数据时,请按照我们在上面介绍的原则创建多样化的包容性测试集。如果您将所有具备包容性的最佳数据都用来训练,并且看起来模型对于未被充分代表的子群组的表现非常理想,则可能会在测试时出现问题。如果关于特定子群组的数据稀缺,那么,手动执行训练/测试拆分有助于确保在训练集和测试集之间有代表性地分配这些数据。在某些 AutoML 产品(如 AutoML Tables)中,您还可以尝试为稀有类型的数据指定自定义权重,以增强其在训练过程中的重要性。

审核您的训练数据

  • 所有类别的数据量都符合建议吗?您的类别和图片/视频/文本能否代表您的用户群的多样性?所有类别中的分布情况是大致均匀的吗?您的训练数据(图片、视频、文本、句子对)是否与您希望模型对其执行预测的数据类型相匹配?
  • 评估:考察模型的性能

    在评估模型的公平性时,您需要深入思考您的具体使用场景以及当模型给出错误结果时可能会对最终用户产生的影响。这意味着,您需要了解不同类型的错误对不同用户组的影响。请务必在这些方面考虑潜在的公平性问题。例如,模型错误对所有用户产生的影响相同,还是对特定用户组产生的危害更大一些?

    仔细思考这一问题后,您将能够更好地决定要优化哪些性能指标(如精确率与召回率),评估它们之间的权衡,并审核错误示例以检查偏见。

    使用场景:护照照片评估

    假设您要制作一个工具来帮助人们编辑和打印护照照片。对于照片尺寸、取景、可接受的背景颜色、可接受的面部表情以及照片中可以包含或不得包含的其他内容,每个国家/地区都有自己的规则。您希望在用户发送护照申请之前,提醒他们自己的照片可能不会被接受。

    假正例

    假正例:

    此场景中的一个假正例是系统将照片标记为不可接受,而实际上该国家/地区的护照管理机构会接受它。这没什么大不了,重拍的照片更可能被接受。

    假负例

    假负例:

    此场景中的一个假负例是未能检测到不会被接受的图片。客户负担了打印照片和提交申请的费用,但却被拒绝。最糟糕的情况是,他们因无法及时获得护照而错过了一次规划好的旅行。

    有关公平性的注意事项:在本例中,请务必检查模型是否会对特定人群(例如特定种族或性别的人群)更频繁地产生假负例。为此,在 AutoML 中,可以通过检查个别假负例来寻找有问题的模式。

    优化:在本例中,您需要针对召回率进行优化。这旨在减少假负例(在本例中是影响更大的错误)的数量。

    使用场景:儿童内容过滤器

    假设您要制作一个面向儿童的阅读应用,并希望添加一个数字化书库,其中包含适合儿童的图书。您希望设计一个文本分类器,根据每本图书的标题和说明,从包含成人和儿童图书的数据库中选出儿童图书。

    测试假正例

    假正例:

    此场景中的一个假正例是一本成人图书被错误地标记为儿童图书,因此被添加到儿童的阅读应用中,进而可能使儿童接触不合适其年龄的内容。家长会因不安而删除该应用。

    测试假负例

    假负例:

    此场景中的一个假负例是一本儿童图书被错误地标记为成人图书,因此被排除在应用书库之外。根据图书的不同,这可能会带来一些轻微的不便(例如将某个冷门图书系列的不知名续集排除在外)或者大得多的问题(例如某本儿童图书中包含被一些人认为有争议的内容,但大众通常认为这本书具有明确的教育意义或社会价值)。

    有关公平性的注意事项:虽然乍一看这似乎是一个简单的案例,但它清楚地展示了评估使用场景的公平性中的一些复杂性。一方面,显然需要避免假正例(尽量减少儿童接触不适合其年龄的内容的可能性)。另一方面,假负例也可能会造成危害。例如,如果文本分类器倾向于将具有 LGBTQ 主题的儿童图书(例如,关于有两个同性父母的儿童的故事)标记为不当内容,则会带来问题。同样,与其他图书相比,如果介绍某些文化或地点的图书更普遍地被排除在外,这同样令人担忧。

    优化:在本例中,您需要针对精确率进行优化。在全球所有儿童图书中,您的应用只会展示其中的一小部分,因此在选择向用户展示哪些图书时,您可以严格一些。但是,您也需要考虑制定相关的用户体验方案,以确定如何展示那些可能需要家长辅导的图书。例如,您可以添加一项功能来建议父母与孩子一起阅读某些图书,这样他们就可以讨论书中存在的问题。

    使用场景:调查问卷分发

    假设您正在分发一份调查问卷,并希望建立一个模型来选择最有可能回复的参与者。您不能将收入用作选择参与者的因素,但您的数据具有“收入”列。在 AutoML Tables 中,您在训练时未使用“收入”列。但是,当您按收入划分数据以确认它未影响到结果时,您发现自己的模型未能从各收入区间均匀选择数据。这是如何发生的?

    代理变量:虽然您未考虑“收入”列,但您的数据可能仍包含其他许多变量,它们提供的线索可表明数据集内个人的收入情况。您是否知晓他们的邮政编码、教育水平,甚至年龄?这些变量中的任何一个都可能与收入相关联。如需确保模型选择的样本在所有受众特征统计切片中均匀分布,请仔细查看 AutoML Tables 的“分析”标签,以检查相关性。请务必仔细评估模型是否存在偏见,然后再在生产环境中使用。

    预测:对模型进行冒烟测试

    核对清单

    使用 AutoML 中的机器学习指标评估模型的公平性后,您可以在“预测”标签页中评估一下您的自定义模型在新内容中的表现。在此过程中,请考虑以下有关公平性的建议:

    图表

    仔细考虑您的问题领域及其潜在的不公平和偏见。您最了解自己的领域:您的图片或视频分类器是否可能受到内容中人物的种族或性别的影响?您的文本分类器是否可能对涉及受众特征群组的字词较为敏感?您正在为其构建翻译器的语言对是否可能存在突出的文化差异,或者存在可能最终暴露潜在社会偏见的不匹配的代词集?提出一些可能对用户产生负面影响的场景(如果在生产环境中找到了这些场景),并在“预测”页面或您自己的单元测试中对其进行测试。

    请记住,您的用户可能不仅会受到冒犯性或不公平预测的负面影响,而且还会受到缺乏明确预测(假负例)的负面影响。如果您发现结果与您希望为所有最终用户打造的体验不一致,则可以通过向相关类别添加更多数据来进一步消除数据集内的偏见,或者以能够更正所发现的任何问题的方式来使用模型。

    在生产环境中使用您的模型

    剪刀

    实施简单的修复。如果模型不完美,使用新数据重新进行训练并不是唯一的解决方案。有时,通过一个简单的预处理或后处理步骤移除某些类型的字词或图片可能是一种有效的解决方案。

    阈值

    根据您对不同错误类型对用户的影响的理解,调整模型的得分阈值,以便在精确度和召回率之间找到可接受的“公平”权衡点。

    声音控制台

    您的模型构建完毕并开始进行预测后,您的数据分布可能会随着时间的推移而有细微变化,且您的模型可能无法再准确反映应用的相关环境。请务必监控模型性能随时间变化的情况,以确保其性能符合预期,并收集用户的反馈以确定可能需要新数据和重新训练的潜在问题。

    救生圈

    有时会出现您事先未曾考虑到的边角案例。如果您担心自己模型的行为可能会对您的用户和业务产生负面影响,可制订一套突发事件响应方案。

    反馈

    随着我们学到的东西越来越多,本文档会不断更新。欢迎您对我们在此处提供的指导给出反馈意见。请发送电子邮件至 inclusive-ml-feedback@google.com,告诉我们您在创建自定义模型时的体验以及可行和不可行的方面。我们期待您的反馈!