以下是构建可信机器学习解决方案而不陷入道德陷阱的一些指导原则。.

阅读我们的文章

.

导言

现在,使用机器学习作为决策手段已变得无处不在。我们每天使用的许多服务输出都是机器学习决策的结果。因此,在影响我们日常生活方方面面的领域,我们看到人工干预逐渐减少,而算法模型的任何判断失误都可能产生不利影响。因此,必须制定适当的指导方针,以建立值得信赖、负责任的机器学习解决方案,并将道德规范作为核心支柱。.

近年来,机器学习中的伦理问题在学术研究中得到了极大的发展,主要会议有 FACCT 和 AIES, 以及大型科技公司,这些公司正在组建快速发展的团队,以应对道德挑战。.

人工智能伦理是一个宽泛的话题,涵盖隐私、data governance、社会和环境福祉、算法责任等多个主题。在本文中,我们将主要关注机器学习伦理的以下内容: 公平性、可解释性和可追溯性. .我们将首先讨论利害攸关的问题,以及为什么必须关注道德问题,然后探讨如何在设计和开发机器学习项目时考虑到道德问题,以及在部署到生产中后如何跟进道德问题。.

我们为什么要关注伦理

随着机器学习算法及其背后的抽象概念和假设变得越来越复杂,要完全掌握和理解整个系统可能产生的所有后果已成为一项挑战。.
在现实世界中,有几个备受瞩目的例子表明,不公平的机器学习算法导致了次优的判别结果。其中,众所周知的例子是 COMPAS。COMPAS 是一款广泛使用的商业软件,用于衡量一个人再次犯罪的风险,在一项研究中与正常人的判断进行了比较。 研究 后来发现该系统对非裔美国人有偏见:与具有相同特征的白种人相比,COMPAS 更有可能给非洲裔美国罪犯打出更高的风险分。.

在 NLP 领域,谷歌翻译的早期版本中检测到了性别偏误,并在 2018 年和最近得到了解决。.

在信贷归因领域,高盛正在接受调查,原因是其使用的人工智能算法涉嫌歧视 women ,即在苹果卡上给予男性比 women 更大的信用额度。.

在医疗保健领域,一种针对美国 2 亿多人的风险预测算法显示出种族偏见。.

由于没有明确界定如何分析、识别和减少偏差的框架,陷入道德陷阱的风险可能相当高。因此,制定适当的指导原则,以建立能产生适当、公平结果的模型,尤其是在涉及人的领域,变得越来越重要。建立值得信赖的人工智能能让最终用户在使用时感到安全,也能让公司对人工智能的使用进行更多控制,从而在提高效率的同时避免任何伤害。. 要想让人工智能值得信赖,其实在处理 data 和开发算法之前,就需要开始考虑伦理问题。.

如何在项目开始前就考虑道德问题

新项目伊始,尤其是在问题框架阶段,就必须考虑道德问题。您应牢记目标最终用户以及建议解决方案的目标,以建立正确的分析和风险管理框架,识别解决方案可能导致的直接或间接伤害。. 你应该问自己,在这种情况下,我的解决方案会不会导致决策向特定的最终用户子群倾斜?

因此,建立关键绩效指标来跟踪实施风险管理策略的方法是否有效至关重要。在可能的情况下,稳健的框架还可以纳入道德风险降低机制。.
在处理具有高风险可能性的敏感问题时,有必要延长分配给探索和建设阶段的时 间,以便进行彻底的伦理评估分析,并在这一过程中,考虑到伦理问题。 偏差缓解 战略。.

您还必须建立机制,促进人工智能系统的 可审计性 和  再现性 . .逻辑跟踪必须可供检查,以便对任何问题进行审查或进一步调查。要做到这一点,就必须执行良好的 溯源性 通过文档、日志、跟踪和版本管理。.

每个 data 源和 data 转换都必须记录在案,使 data 处理过程中做出的选择具有透明度和可追溯性。这样就有可能找出可能注入或加强了偏差的步骤。.

如何在开发 data 项目时纳入道德规范

要在开发 data 项目时纳入道德规范,至少要包括三个组成部分:公平性、可解释性和可追溯性。.

公平性

大多数机器学习项目的第一步通常是收集 data。无论是通过 data 采集过程还是使用现有的 data 集,了解采集方式都至关重要。通常情况下,不可能包含整个目标人群,因此可以从子集中抽取特征和标签,根据某些标准进行筛选或汇总。所有这些步骤都可能带来统计偏差,从而可能产生伦理后果。.

代表性偏见

这源于我们对人群的定义和取样方式。例如,ImageNet 等 datasets 中缺乏地域多样性,这表明它们偏向于西方国家。由于 抽样偏差, 如果对一个人群的趋势进行了估计,那么从一个新的人群中收集的 data 可能并不具有普遍性。.

因此,有必要制定适当的 data 收集规程,分析收到的 data 的多样性,并向团队报告发现的任何差距或风险。您需要尽可能客观地收集 data。例如,通过一些统计分析,确保样本能够代表您正在研究的人群或群体,并尽可能将多个来源的输入结合起来,以确保 data 的多样性。.
必须将调查结果和整个 data 收集过程记录在案。.

事实上,偏差的可能来源有很多,它们可以以多种形式存在,其中有些会导致不同下游学习任务中的不公平现象。.
由于监督式机器学习算法的核心是训练 data,因此模型可以从 data 中学习其行为,而 data 可能会因包含意外的历史或统计偏差而受到影响。. 历史偏见 即使采样和特征选择完美无缺,data 生成过程中也会渗入这些偏见。这些偏见的持续存在可能导致对某些群体或个人的意外歧视,从而加剧偏见和边缘化。.

并非所有的偏差来源都源于 data,整个机器学习管道涉及从 data 预处理到模型部署的一系列选择和实践。.
要从一开始就确定问题是否会出现以及如何出现,并非易事。需要进行全面分析,以确定出现的问题。根据使用情况、data 的类型和任务目标,将采用不同的方法。.
在本节中,我们将通过一个示例来探讨一些识别和减少道德偏差的技术。我们将首先陈述问题,然后了解如何衡量偏差,最后使用一些技术来减少预处理、处理中和处理后的偏差。.

问题陈述

假设您正在银行业构建一种评分算法,以自动计算客户的 targeting,判断客户是否能从溢价交易中获益。您获得了一个历史 dataset,其中包含许多关于客户的有意义 data 特征以及 “符合高级交易条件 ”的二进制目标。PII(个人身份信息)已经从 dataset 中删除,因此不会存在任何隐私问题(在这个问题上,谷歌 cloud data 防损服务是执行敏感 data 去标识化任务的绝佳工具)。.
这个用例看似有些虚构,但问题却与我们过去在不同领域处理过的一个真实用例很接近。.

测量偏差

分析的第一步是探索 data,以确定敏感特征、特权价值和有利标签。.

敏感特征 (或称 受保护的属性) 是将人口划分为在所获福利方面应享有平等待遇的群体的特征。这些特征可能对某些亚群体具有歧视性。例如:性别、性 别、年龄、家庭状况、社会经济分类、婚姻状况等,以及由这些特征推导出的任何代用特征 data(例如,地理位置或账单金额可以作为社会经济分类的代用特征,因为在某些情况下可以观察到它们之间有很强的相关性)都是敏感特征。.

A 特权值 的敏感特征表示一个群体在历史上具有系统性优势。.

A 顺标 在 data 准备阶段,拆分 data、取样不足或取样过多、处理缺失值和异常值等步骤如果执行不慎,可能会产生偏差。在敏感特征上各亚组的缺失值或异常值的比例可以作为识别偏差的第一步。某些估算策略可能会带来统计偏差,例如,用中位数估算客户年龄特征的缺失值。.

在我们的计分示例中,我们绘制了培训 data 在 “有资格获得溢价交易 ”目标方面的性别分布图:

我们可以看到,目标的分布是不平衡的,偏向于性别 . .我们假设特权值为  其中 性别 是一个敏感特征,其有利标签是 “有资格获得高级交易”。此外,这可能与 data 中的代表性偏差相对应。事实上,在尊重公平的情况下,我们可以确保 data 中的分布完全平衡,或与人口 data 中的分布相对应。.

此时,您可能会想直接从 dataset 中剔除敏感特征,但事实证明,剔除敏感属性并不一定能使模型公平。模型可能会使用与移除的敏感特征相关的其他特征,从而重现历史偏差。举个例子,特征 A 可能与客户的年龄密切相关,因此如果 data 偏向于某个年龄段(历史偏见可能导致在招聘、晋升等方面基于年龄的歧视),这种偏见就会被编码到特征 A 中,而删除客户的年龄并不能缓解问题。在必要时,通过在 data 中保留敏感功能,您可以更好地控制偏差和公平性的测量和缓解。.

偏差度量

有各种各样的公平性定义和公平性衡量标准。我们可以把公平性分为 个人公平 和 群体公平性. .个人公平对相似的个人给予相似的预测,而群体公平则对不同的群体一视同仁。.

为了实现群体公平,我们希望无论受保护的人是谁,获得积极结果的可能性都是一样的(例如: 我们希望受保护的人获得积极结果的可能性是一样的、, 女性)组与否。.
一个简单的群体衡量标准是比较特权群体和非特权群体的有利结果百分比(在我们的例子中,是指性别比例)。  与 “有资格获得额外优惠 ”的性别相比 女性 符合 “高级交易资格”)。您可以用两个百分比的差值来计算这种比较,从而得出 统计平差 公制(也称 人口均等):

要使特权群体和非特权群体之间的有利结果不存在差异,统计均等差异应等于 0。.
关于个人公平尺度的问题有 一致性 它使用近邻算法测量相似个体标签的相似程度:

我们不会重点讨论这个问题,但感兴趣的读者可以查看以下内容 .
您可以使用便捷的图书馆 AIF360 可以计算许多公平性指标。.
您只需将 dataframe 包装到 标准Dataset. .AIF360 使用 标准Dataset 它封装了一个 Pandas DataFrame,其中包含许多专门用于处理和测量道德偏见的属性和方法。然后,您可以将其作为 二进制标签 DatasetMetric 类,它将计算一组有用的指标。.

参数 =
# 创建 aif360 标准 Dataets
train_standard_dataset = 标准Dataset(df=train_dataframe,
**参数)
特权组 = []
非特权组 = []
火车 = 二进制标签 DatasetMetric(train_standard_dataset,
非特权组=非特权组,
特权组=特权组)

在我们的评分示例训练 data 中进行测量后,我们发现平均统计平价差异为 -0.21,这表明特权组  在训练集 data 中,有 21% 更积极的结果。.

减少偏差

针对算法偏差的方法通常分为三类:

  • 预处理。. 预处理技术作用于训练 data,并试图对其进行转换,以消除潜在的歧视。.

  • 处理中。. 内处理技术通过将变化纳入目标函数或施加约束,在模型训练过程中对学习算法起作用,以消除歧视。.

  • 后期处理. .后处理技术是指利用已训练好的模型,对其预测结果进行转换,使其满足所选公平性指标所隐含的约束条件。在算法只能将学习到的模型视为黑盒子,而无法修改训练 data 或学习算法的情况下,这种技术尤其有用。.

我们对训练 data 采用了预处理技术,以优化统计奇偶校验差异。我们使用了 重新称重 算法(更多详情请参见 ) 是在 AIF360 中实现的,目的是对每个组合(组、标签)中的示例进行不同的加权,以确保分类前的公平性。.

RW = 重新称重(非特权群组=unprivileged_groups、
                privileged_groups=privileged_groups)

reweighted_train = RW.fit_transform(train_standard_dataset)

改变实例权重属性是为了重新平衡敏感特征与目标之间的关系。这样, 重新称重 算法减轻了训练 data 的组别偏差:统计奇偶校验差异的新衡量标准从-0.21 到 0 完全重新平衡。.

AIF360 还采用了其他预处理偏差缓解算法,如 消除差异影响 是一种编辑特征值以提高组公平性,同时保留组内排名顺序的技术(更多信息请参阅以下内容 )或 LFR (学习公平表征),这是一种预处理技术,它可以找到一种潜在表征,对 data 进行编码,但会掩盖受保护属性的信息(更多信息见下文)。 ).

然后,我们在原始训练的 data 和重新称重的 data 上分别训练了两个分类器模型。我们发现,重新称重对性能的影响很微弱,损失了 1% 中的 F1 分数.

我们还在示例用例中尝试了一种内部处理算法: 逆来顺受 这大大改善了组偏差指标(统计平差除以 2),而模型性能几乎没有下降(F1 分数约为 1%)。.

因此,性能指标和偏差指标之间可能存在权衡。这里的恶化程度很小,但在某些情况下,折衷可能会更加严重。必须将这一信息告知团队和适当的利益相关者,由他们决定如何处理这一问题。.

既然我们已经有了训练有素的模型,就可以探索它们的预测结果,并调查不同性别之间是否存在向有利结果倾斜的不平衡现象。有许多工具,例如 假设工具 或 Aequitas 让你可以探究训练有素的机器学习模型的行为,并调查模型的性能和不同子组之间的公平性。.

举例说明,您可以使用 Aequitas 生成交叉表和可视化图表,展示分布在各分组中的各种偏差和性能指标。例如,我们可以快速比较在原始 data 和重新加权的 data 上训练的分类器的真阳性率。我们可以看到,该比率已经达到平衡,因此可以在模型的有利结果(有资格获得溢价交易)方面实现更大的性别公平。.

作为一种后处理技术,我们对分类阈值进行了交互处理。分类模型通常会为我们提供与实现每个类别预测相关的概率。这种概率可以原封不动地使用,也可以转换成二进制值。.
为了确定所获概率对应的类别,必须定义一个分类阈值(也称为决策阈值)。任何高于该阈值的值都对应于 “有资格获得溢价交易 ”的正分类,反之亦然。.
通过绘制所有分类阈值的性能指标和偏差指标(此处为 1 - 不同影响),我们可以确定最佳阈值。这可以帮助我们选择合适的阈值,以最大限度地提高性能和减少偏差。.

在左图中,我们可以看到,如果我们将阈值向左推,从而降低一点性能,我们就可以改善偏差指标。.
此外,正如预期的那样,我们观察到重新加权模型的组偏差指标有明显改善(右图),这可以通过选择另一个分类阈值得到进一步改善,但会以牺牲性能为代价。.

可解释性

建立值得信赖的机器学习模型的另一个核心支柱是可解释性。可解释性是指既能解释人工智能系统的技术流程,又能解释人工智能系统所做决策或预测背后的推理,从而能够量化每个特征/属性对预测的影响。尽可能使用易于解释的模型而不是黑箱模型是一种好的做法。.

有许多方法可以获得模型的可解释性。这些方法可分为两类:

  • 内在可解释性 其中,模型本身给出了特征重要性或特征权重。.

    事后可解释性 利用微小的输入变化来推断特征的重要性。.

  • 处理中。. 内处理技术通过将变化纳入目标函数或施加约束,在模型训练过程中对学习算法起作用,以消除歧视。.

在此,我们将采用一种著名的事后分析方法,即 SHAP(SHapley Additive exPlanations),如需了解更多信息,我们建议您探索以下内容 这一非常全面的相关资源呐喊 是一个实现博弈论方法的库,用于解释任何机器学习模型的输出。.
让我们观察一下重权重算法对模型可解释性的影响:

快速提醒您如何阅读 Shap's 蜂暖 情节

  • 特征从上到下从最重要到最不重要排序。.

  • 颜色与特征值的振幅相对应。颜色越红,数值越低,反之亦然。.

  • 横轴对应于特征对目标预测的影响方向。例如,在我们的计分示例中,负值会影响预测 “无资格获得高级交易 ”类别,反之亦然。.

左侧是原始模型的可解释性,我们可以看到,在这种情况下,性别变量具有很强的预测能力,性别 女性 对 “无资格获得高级交易 ”目标的决定产生影响,与性别差异很大 .

我们可以在右图中看到,在这种情况下,模型是根据重新加权的 data 训练出来的,性别特征的重要性大大降低。它现在是最不重要的特征之一。此外,女性与男性类别对目标预测的影响也更加均衡了(在 Shapley 值上,颜色接近于 0)。.

可追溯性

在创建值得信赖的机器学习算法过程中,另一个至关重要的方面是实验结果的可追溯性和良好的可重复性。这样就可以很容易地识别出哪个版本的模型已投入生产,以便在其行为造成危害或不再符合公司道德价值观时对其进行审计。.

为此,我们必须能够跟踪和记录每个模型版本及其相关的训练 data、超参数和结果。有几种工具可以完成这项任务: Mlflow 是一个不错的选择,它能让你快速生成一个集中所有运行的网络界面,同时将你的工件保存到你选择的存储空间中。实验的每个版本都可以通过相关提交的哈希值进行跟踪。每个版本都将包含 MLflow 记录的所有元素。.

这里有一个 工具 我们在 Artefact 上开源了该软件,只需一条命令,就能在 GCP 项目上部署安全的 MLflow。.

创建一个 概况介绍 这相当于一张模型身份证,其中汇总了各种要素,包括预处理步骤、性能指标、偏差指标等。.

这些身份证由 data 科学家交付给模型操作团队,以便他们确定模型是否适合他们的情况。有关创建 "概况介绍 "方法的更多详情,我们推荐以下内容 . .事实表也可以以表格形式与相关模型一起存储在 MLFlow 中。.

部署后如何跟进道德操守

一旦部署了模型,就必须确保模型的使用目的与模型的设计和构建目的相符。当模型要解决的问题与实际使用方式不匹配时,就会出现部署偏差。这种情况经常发生在开发和评估一个系统时,好像它是完全独立的,而实际上它是一个复杂的社会技术系统的一部分,由众多决策者共同管理。.

生产的 data 可能会随着时间的推移而漂移,这可能会导致算法性能下降,从而产生偏差。通过监控新的 data 与用于训练模型的 data 的分布情况来跟踪生产 data 的质量和 data 漂移,应该成为生产管道中的一个步骤,以便在必要时发出适当的警报,并确定何时必须进行重新训练。.

在设计生产流水线时,应确保有办法关闭当前模型或回滚到以前的版本。.

结论

在本文中,我们介绍了一些良好实践和协议,以指导您构建机器学习管道,最大限度地降低陷入道德陷阱的风险。.

本文对人工智能伦理这一广阔主题的介绍还只是蜻蜓点水,仅仅触及了以下几个方面 有趣的工具 目前正在开发的.
正如我们所看到的,明确解决公平问题的最合理方法是将一系列选定的特征宣布为潜在的歧视性特征,然后通过这种棱镜来研究伦理偏见。然而,这种直截了当的方法有一个缺陷,那就是歧视可能是多种特征组合的结果,而这些特征本身并不具有歧视性。此外,在许多情况下,您无法获得任何敏感特征(关于此主题的更多信息 这里).
公平性评估是一项复杂的任务,取决于问题的性质。根据表格 data 处理评分问题与 减少自然语言处理中的偏见.

我们希望通过分享我们的观点和方法,能对您的项目有所启发!感谢您的阅读,请随时关注 Artefact 的技术动态。 博客 如果您希望在我们发布下一篇文章时收到通知,请点击此处!