干货!无监督学习的公平性研究
公平性学习在近些年来受到学术界和工业界的广泛关注,其旨在于保护或隐藏某些敏感属性(例如,性别、种族、地域)并同时保持原有的学习效用。在本次讲座中,作者简单介绍了不同公平性定义,并聚焦于群组公平性,并介绍群组公平性在聚类分析、异常点检测和属性选择中的应用。
本期AI TIME 青年科学家系列,直播间邀请到了美国布兰迪斯大学计算机系助理教授刘洪甫,带来分享——《无监督学习的公平性研究》。
嘉宾介绍
刘洪甫:美国布兰迪斯大学计算机系助理教授,于2011年和2014年分别获得北京航空航大大学经济管理学院信息管理与信息系统学士和管理科学与工程专业硕士学位。同年,换专业攻读美国东北大学计算机工程专业博士。二年半完成博上学业后,加入美国布兰迪斯大学(波士顿五大名校之一, Us News排名Top 42)计算机系。主要研究方向为人工智能、机器学习、数据挖制。目前已经成功发表顶级会议和期刊论文60余篇;现为人工智能、机器学习,数据挖掘等领域的顶级会议期刊常驻审稿人。
背 景
1
什么是公平性?
在机器学习中,当数据集中包含敏感属性集(比如性别、种族、地域等)时,不同的场景下相同算法的预测结果可能是把不同的。公平性学习是在保护或隐藏某些敏感属性并同时保持原有的学习效用。
举个例子,无监督学习中的聚类分析算法是把样本点聚成不同的簇群(clusters),使得每个簇群的样本点尽可能地相似,不同簇群的样本点尽可能相异,即类内距离尽可能小,类间距离尽可能大。而公平性聚类分析中,我们希望每个簇群的敏感属性(sensitive attributes)的分布要尽可能均匀,比如一个簇群中男女比例尽可能均衡,这样就可以隐藏“性别”这个敏感属性,使得这个簇群不会受到攻击;反之,如果一个簇群中全是男性,那就得到这个簇群的敏感属性(性别)的分布,那就可以在样本点中添加基于该敏感属性的干扰,攻击该模型。
公平性的定义是很宽泛的,敏感属性除了性别、种族等,还可以是一些常见的属性。比如在交通系统的车辆识别场景下,车辆的颜色可以看作一个敏感属性,那公平性就体现在识别时不会因为车辆颜色而使算法的效率改变。
2
公平性分类
前面提到了一些公平性的例子,但具体公平性的定义就有很多种,包括individual fairness,group fairness,Equalized odds等等,本次分享主要是基于group fairness所定义的公平性,下面介绍一下individual fairness和group fairness的定义。
(1)individual fairness
individual fairness是基于单个样本点而言的,公平性定义为如果样本点a和样本点b各项属性都是很相近的,那这两个样本点的分类决策结果也需要很相近。距离就是假设舞蹈生a和舞蹈生b的舞蹈水平相近,a和b分别来自两个不同的省份,那a和b都要被某所艺术学校录取或者不录取。
(2)group fairness
假设S是一个敏感属性,基于group fairness来讲,公平性就是对于S和非 S两个群体的个体来说,被分配到各个类别的比例是一样的。举例就算之前的性别的例子,对于一个簇群,男女比例是均衡的,即男性或女性不会影响是否被分配到该簇群。
公平性的定义
3
实现公平性的技术方法
实现公平性的技术可以称为fairness/debiasing techniques。导致不公平的原因不是唯一的,数据集的不平衡(男女比例不均衡)以及算法模型本身有偏差都会导致最终分类决策的结果不公平。解决不公平性大致有三种方式
(1) Pre-pocessing——Focus on data bias:通过加权、数据生成等进行数据预处理来生成样本均衡的数据集。
(2) In-processing——将公平性学习于算法结合在一起,实现一个公平性算法模型。
(3) Post-processing——使用传统unfair的算法模型得到分类预测结果,然后对结果进行修正。
1、 公平性的评价指标
采用Utility和Fairness两个评价指标,既要考虑实现公平性之后算法模型与之前对比的学习效益变化,也要考虑模型实现的公平程度。
公平性聚类分析
聚类分析是一个应用很广泛的机器学习算法方向,比如客户分群,城市规划,异常点检测等等。
聚类的应用举例
1
什么是公平性聚类分析?
公平性聚类分析旨在隐藏或保护敏感属性,使得聚类的结果的每个簇群中的敏感属性都比例均衡。如下图所示,未经公平性聚类的簇群(Others)中敏感属性的分布是不均衡的,而经过公平性聚类的簇群隐藏了敏感属性。
公平性聚类
2
公平性聚类方法
传统的公平性研究会把公平性聚类归纳为Constrained Clustering(受限聚类),首先我们需要一个好的聚类结果,然后满足一定限制,并在原来的样本空间进行聚类。
引入深度学习之后,考虑利用Encoder(编码器)进行特征学习,将一个空间下的特征转换到另一个空间,从而得到保护敏感属性的特征表示。后面接入一个Discriminator(判别器)来判断是否能对敏感属性有所区别。这里面存在一个tradeoff:假设所有的input通过Encoder之后都转换为相同的特征时,敏感属性和非敏感属性都会被隐藏掉,那最终聚类结果也会很差,即公平性指标中的Utility指标下降到极点;假设所有的input通过Encoder之后经Discriminator仍然能判断出敏感属性的特征,那说明Fairness指标也未提高。
Deep fair clustering中提出一个structural preservation结构来解决上述的tradeoff问题,其原理是将敏感属性中每个属性值的样本点都进行一个聚类,期望所有样本点一起聚类的结果与敏感属性中每个属性值的样本点的聚类结果相近。
Deep fair clustering
下面是Deep fair clustering的目标函数:
Deep fair clustering最优化公式表示
3
Deep fair clustering实验
数据集:
Table1指出了采用的数据集和不同数据集的敏感属性等信息。
评价指标:
公平性评价指标
实验结果:
在4个数据集中都采用传统方式和深度学习进行实验结果对比。深度学习的方式明显要由于传统的受限聚类。
论文:Deep Fair Clustering for Visual Learning [CVPR-20]
公平性异常点检测
异常点检测的应用场景也很多,例如银行卡诈骗,网络入侵,高质量客户挖掘等。对于无监督异常点检测有两种方式:Hard和Soft。Hard是给出两种结果——是异常点,不是异常点;Soft是会对样本点进行打分排序,通过阈值区分是否为异常点。
异常点示意图
公平性异常点检测模型采用特征学习和公平对抗训练,通过动态权重调节异常点对聚类的不利影响。通过提出两个公平性指标来加强异常点检测中的公平性度量,这两个指标用于测试检测到的异常点中的子群精度差距和子群分布偏移。在8个真实公共数据集上进行的大量实验表明,在与17种无监督离群点检测方法的竞争中,DCFOD(Deep Clustering based Fair Outlier Detection)方法在所有指标上都具有明显的优势,包括最近提出的公平异常点检测方法和其他传统离群点检测算法。
下面就是DCFOD算法的框架,首先将将样本点经过Encoder转换到另一个空间,而后进行特征对抗来隐藏敏感属性。然后对新生成的特征进行聚类,将每个簇群中的样本点与聚类中心的距离进行排序,离聚类中心较远的点就看作异常点。异常点被设置低的权重,然后反馈到前面的特征转换的过程。
算法框架
数据集:
对比分析方法:
评价指标:
实验结果:
可以看出,论文中的算法模型在以上两个评价指标的效果都是非常优秀的,都在0.95+。
公平性特征选择
特征转换将一个空间的特征转换到另一个空间,原则上会相对特征选择对样本点的特征进行更好的公平性解释。而特征选择会保留原始特征的解释,比如使用主成分分析(PCA)进行降维后并不理解特征表达的具体含义。
下图描述了论文公平性特征选择的过程和相关损失函数,我们期望选择的特征是对算法用支持作用的,并且与敏感属性尽可能无关,而未选择的特征与敏感属性尽可能相关。
数据集和评价指标:
实验结果:
论文:Fairness-Aware Unsupervised Feature Selection [CIKM-21]
关于二元公平性:
探索和减少图连接中的偏差
前面三篇论文是针对向量数据进行的group fairness的研究,现在是基于图数据进行的二元公平性(Dyadic Fairness)的研究分析。我们研究了基于图数据的link prediction。
Dyadic Fairness定义
下图的公式具体解释了图的链接如何影响公平性:
公平性图连接:
实验结果:
论文在不同的数据集都进行了统计分析,其中在UNC28这个数据集上进行了不同二元公平性图连接的对比实验。
论文:On Dyadic Fairness: Exploring and Mitigating Bias in Graph Connections[ICLR-2020]
总结
本次分享我们主要关注群组公平性的研究,从聚类分析、异常点检测、特征选择三个方向来介绍无监督群组公平性的实现方法,并都取得了不错的结果。