软件工程方法与实践讲稿

我今天介绍的这篇论文是2021年icse上发表的一篇文章,文章题目是软件公平中的“无知与偏见”,看到这个题目的时候就一脸茫然,有一种每个字都认识,组合起来却不明所以的感觉。ignorance 无知? Prejudice 偏见?这两个词是怎么和软件扯上关系的,software fairness?软件还有公平性?那软件是否公平又是怎么定义的呢?接下来让我们来一起看看。换页
这里引用知名 AI 大牛,图灵奖得主,Facebook 首席 AI 科学家,杨立昆的一句话,他说到,数据是有偏见的,因为人是有偏见的。在有偏见的数据上训练的算法当然也是有偏见的。数据中的偏见可以被修复,但是人心中的偏见很难修复。下面我们来看两个有关机器学习偏见的例子,第一个例子恰好和杨立昆有关,因为这件事杨立昆连发17条推特回复争议,最后被骂退推特。换页
首先,我们来看第一个例子,大家看到这张被降低了分辨率的图片会想到谁?奥巴马对嘛,现在有一个号称最强马赛克修复AI的PLUSE,让这个软件对这张图片进行修复会得到什么样的结果呢?换页
很明显,生成的人脸具有很明显的白人特征,这是偶然的现象嘛?再生成几张试试?换页
经过多次运行我们发现,这并不是偶然现象,经过PLUSE还原出的人脸,总是一张五官端正漂亮的白人脸。当然,这个现象的很大一部分原因是因为用来训练的数据集中大多都是白人的面孔。但是不管怎么说,我们都可以说这个软件是有偏见的。换页
来看另一个例子,在美国由于许多监狱过度拥挤,需要进行评估,以确定重新犯罪可能性低的囚犯。 然后,对这些囚犯进行审查,以确定是否可能释放他们,以此为新来的罪犯腾出空间。在评估过程中,法官会参考COMPAS给出的累犯概率,其中国COMPAS是一个案件管理和决策支持工具,美国法院使用它来评估被告成为累犯的可能性。
在其他条件相同的情况下,该系统将非裔标记为高风险的概率是欧裔的两倍。
在以上两个案例中, 受到区别对待的对象处于弱势地位, 具有受法律保护的属性a, 如种族、性别、年龄等.在不考虑公平性的机器学习算法中, 依据有偏差的Y做出决策, 剥夺了他们平等的机会或资源.换页
从上面的例子可以看出,公平性在机器学习中是一个非常重要的概念,在机器学习过程后做出的决策如果是基于某些敏感的变量,则可能被认为是不公平的。这些变量的因素包括性别、种族、性取向、残疾等。这里面提到的敏感的变量有一个专属的名字,保护属性,机器学习的公平性正是通过其数据集的保护属性来定义的,保护属性即为:当发生关键决策的时候,那些敏感且需要防止不公平现象出现的属性,例如种族,性别,年龄,怀孕与否,家庭状况,残疾状况等。对于不同的决策,其保护属性有所不同,比如对于收入预测来说,性别和年龄是保护属性,对于医疗调查来说,种族是保护属性。保护属性将数据集划分为两个部分即:特权组和非特权组,通常非特权组总是处于劣势地位。而机器学习中的公平性通俗来说就是要将特权组和非特权组平等的对待。换页
而机器学习中的公平性定义有很多种类型,比如个体公平、群体公平等等,所谓个体公平,就是对于相似的个体要给出相似的结果,所谓群体公平,就是将特权群体和非特权群体平等对待。本文主要研究群体公平。那么为什么选择研究群体公平,因为相对于个体公平,首先群体公平在文献中得到了更广泛的采用和研究,其次群体公平具有明确的定义和公认的可以定量衡量公平性的数学公平指标,第三,群体公平更符合法律对公平的定义,出于这些原因,本文选择关注群体公平性。换页
那么怎么样去降低机器学习预测的偏见呢?我们先来看下现实生活中的例子,在现实生活中,社会心理学对人类偏见的研究发现,知识量的增加可以有效减少人类的偏见,但是经验的增加会增加偏见,即经验丰富的老年人往往比年轻人更有偏见。而在机器学习领域中,知识水平对应着特征集,经验水平对应的是训练数据,所以本文作者通过人类学习的例子提出了猜想:训练集和特征集的大小会影响机器学习的公平性。换页
作者基于上面的猜想提出了三个问题,1、特征集大小对公平性有什么影响?2、训练集大小对公平性有什么影响?3、训练集大小和特征集大小对公平性的耦合效应
并且设计了一系列的实验来得出结论。在看这三个问题的验证实验之前,我们先来看下实验的具体设置。换页
本文的实验用到了5种数据集,4种公平性指标,两种偏见改善方法,和三种分析方式,接下来我们逐一介绍。换页
先看数据集方面,本文使用五种不同的数据集进行测试,分别为收入预测,银行营销,COMPAS分数,德国信贷和医学调查。
其中收入预测为一个基于人口普查数据来预测每年收入是否超过5万美元的数据集。
银行营销是指与一家银行机构营销有关的数据集,其目的是预测客户是否会认购定期存款。COMPAS分数是我们之前提到的第二个例子中用到的用以评估刑事犯再次犯罪的可能性的数据集。
德国信贷是一个用以预测人们信用风险水平的数据集。医疗调查是包括美国各地医疗保障和医疗保险覆盖范围的数据集。
其中,收入预测数据集中的保护属性为性别和种族,银行营销中的保护属性是年龄,COMPAS指数的保护属性是性别和种族,德国信贷的保护属性是性别和年龄,而医疗调查的保护属性是种族。为了简化实验,文章每次只选取一个保护属性进行测试,所以我们在五个数据集上的八个保护属性对进行了测试。换页
那么怎么样去判断一个机器学习算法是否公平呢,或者说怎么样去量化群体公平性,本文使用了四种公平性指标来量化机器学习中的公平,分别为统计均等差,平均绝对均等差,机会均等差,差别影响。我们首先来看统计均等差异,其中A代表所属群组,1则为特权组,而0为非特权组,而c代表预测结果,前面部分则代表在非特权群组中预测结果为1的概率,后者为在特权群组中预测结果为1的概率,则该公式就可以描述为两个群组之间预测为同一结果的概率之间的差异。
平均绝对均等差是特权组和非特权组中真阳性率和假阳性率的差异的平均值,公式如上,其中C和A的含义我们在前文中已经提到了,Y为真实结果,则公式中的第一部分则代表非特权组中预测结果为1的数量与样本中真实结果为0的数量的比值,即非特权组中的假阳率,代表的是误判的概率大小;而第二部分则代表特权组中预测结果为1的数量与样本中真实结果为1的数量的比值,即真阳率,代表判断准确的概率。平均绝对均等差即使用两组间真阳率之差与假阳率之差的平均值衡量公平性。
机会均等差异,即为特权组和非特权组的真阳率之差。
差别影响,表示为在非特权群体中预测为合格的数量与特权群体中预测为合格数量之比。
不难看出前3种指标是越接近于0则公平性越好,而最后一种差别影响是越接近1则说明越公平,为简化实验我们将最后一个指标进行转换处理,计算差别影响值与1的距离并将其归一化,使其与另三种指标一样,值域在[0,1],且距离0越近表示公平性越大。换页

那么本文中使用的两种公平改进方法又是指的什么呢?
这里的公平改进方法是过往研究提出来的针对训练集作出的改进,在以往的研究中,公平性的改进方法一般分为三类,第一种是对还未进行训练的训练数据进行预处理,第二种是在训练过程中通过修改和改变学习算法,来优化模型训练过程中的公平性,第三种是在训练之后,对训练结果进行后处理。本文研究了特征集大小和训练数据大小对构建公平机器学习模型的影响,这与后处理方法没有交集。因此,我们只考虑pre-processing和in-processing的方法。对于pre-processing,我们对数据样本重新分配权重 。该技术对每个组中的样本进行不同的加权,以确保分类前的公平性。对于in-processing ,我们使用偏见去除器 ,为学习目标增加了一种防止偏见的正则化方法。换页
最后是三种分析方法,分别为可视化方法,单因素方差分析法,绝对、相对变化分析方法,
第一种我们可视化不同特征/训练集大小的平均度量值和标准差(在 50 次运行中)的变化,图中较大的值表示模型中存在更多偏差,对于第一和第二个问题,我们使用线图来观察变化趋势。对于第三个问题,我们使用 3D 表面热图来描述。
第二种单因素方差分析法,用这种方法确认两个变量之间是否存在显著性关系,通俗的说就是一者的变化是否是受另一者影响而发生的,如果是的我们常说他们间的关系是显著的,反之我们说他们是不显著的。通过该分析方法可以得到三个值,分别为F值,组间平均方差和组内平均方差的比值,p值,显著性水平,Tukey诚实显著差异,报告两组间的差异的显著性,F值越大,p值越小,HSD值越大,说明关系越显著。
第三种绝对、相对变化分析方法,只有在前面说的有显著关系时,我们才会使用该方法进行分析,绝对变化顾名思义即为公平性指标数值上的变化,而相对变化即为该值在初始值中所占的比例。
以上就是本篇文章的主要技术和分析方法,接下来我们来看实验结果。换页
首先对于第一个问题,即特征集的大小对软件公平性的影响,使用四种公平衡量指标在8个不同的保护属性上进行实验,获得了图中的数据。我们可以粗略的看到在上面几幅图中,除了german-sex组别,其他的几组上,各项公平性指标都是在显著的降低,而在german-sex组别中,是因为公平性指标开始时就在较低的水平即已经处于公平的状态,所以改进的幅度不大。换页
我们对结果进行进一步的分析,即使用两种分析方法进行进一步的研究,在前文中我们提到过,我们每次试验都进行了50次以加强实验的稳健性,同时也给我们进行方差分析提供的充足的样本。我们将其进行方差分析得到上表,其中每行代表的是不同数据集的保护属性,可以看到大部分公平性指标值与特征集规模大小的关系是显著的,即用红色框选出来的部分,只有german-age项中四项公平指标和使用在收入预测的种族上的差别影响与特征集规模大小关系不显著。换页
我们对显著的项进行绝对变化和相对变化的计算,得到上表,其中每行代表的是不同数据集的保护属性,每列是不同的公平性衡量指标,其中绝对变化我们使用最大规模特征集所对应各项公平性指标值与最小规模特征集所对应各项公平性指标值计算得到,而相对变化就是写在后面括号中的值,是改进公平性占原始公平性指标的比例,我们计算得到平均值为0.12,相对变好了38%。换页
所以根据实验及分析结果,我们可以回答第一个问题,在训练集不变的情况下,提升特征集规模大小可以显著的改进机器学习的公平性,以本文为例,改进幅度可以达到38%。换页
实验二我们固定特征集规模为最大,分别对训练集规模取0.1,0.2到1,同实验一我们同样得到了公平性指标在8个组别随训练集规模的变化如图:我们可以明显看到随着训练集规模的上升,公平性指标的变化并不是十分明显,甚至出现了曲线上升的情况。我们继续通过后续两种分析方法来进行分析研究。换页
我们对其进行方差分析得到上表,我们发现在大部分的地方,也就是用红色框选出来的部分,训练集规模与公平性指标的关系为不显著的。换页
我们对显著的部分进行绝对变化和相对变化的计算,可以得到上表,我们可以看到浅白色区域是公平性改进为正向的区域,但是只有两个地方是浅白色,其他深色区域公平性改进为负,综合下来平均相对变化为-4.8%。这告诉我们提升训练集的大小无法改善公平性,反而可能还会使得公平性降低。换页
根据实验及后续的分析,我们可以得出第二个问题的答案,即提升训练集规模大小不能改进公平性,甚至有可能会导致更加不公平。换页
我们设置第三组实验来回答第三个问题,即同时改变训练集规模大小和特征集规模大小,比较分析公平性指标的改变。为简化实验,该实验我们只使用8组中的两组,我们使用三维图来可视化结果,即以公平性指标值为z轴,如下图
从图中我们可以简单看出两个结果,第一公平性最高的地方出现在训练集规模最小,特征集最大的地方,即两个图中用红色圆圈标出的地方;
最不公平的地方出现在训练规模最大,特征集最小的地方,即在图中用黑色圆圈标出的地方。
第二从图中标出的几根红色曲线我们可以看到特征集规模越小,训练集规模与公平性指标的曲线越陡峭。换页
于是我们可以简单回答第三个问题,即特征集规模较小时,训练集规模的增大可能更加会导致不公平发生。换页
本文得出结论如下:
1、提升特征集规模大小可以显著的改进机器学习的公平性
2、单独提升训练集规模大小不能改进公平性,甚至有可能会导致更加不公平。
3、当特征集规模较小时,训练集规模的增大可能更加会导致不公平发生。
通过前面的实验,我们可以发现,训练集规模的增大对公平性似乎并不是十分有益,而以往的研究又显示训练集规模增大有利于机器学习的准确性,那么似乎准确性和公平性之间没有一个平衡的措施,在此我们给出两个用来在提升准确性的同时尽量保证公平性的建议:
1,保证特征集规模大小
2, 对训练集进行公平改进,如在本实验预处理阶段用到的reweighting和在处理过程中用到的正则化器。换页
本文作者将社会心理学中与人类偏见相关的研究应用到机器学习当中,并且验证得到了很好的效果,本文的研究结果表明,社会心理学和软件工程之间可能存在交叉融合。这让人不禁想到,人类学习与机器学习之间有很多的相似之处,我们是否可以将人类学习的相关研究内容应用到机器学习的相关领域呢?换页

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值