随着人工智能(AI)的应用日益广泛,其带来的安全隐患和信任问题也引起了越来越多的讨论。作为一项正在迅猛发展的技术,我们需要人工智能在给人们带来便利的同时也不破坏对人基本权利的尊重,更不能给人类带来不可预知的风险。近年来,世界各国都已经意识到人工智能应用中可能存在的风险,进而纷纷开始了规范化工作甚至立法来保证人工智能技术有序发展。可以说,可信任的人工智能(Trusted AI)是未来人工智能继续发展的基础。
在本文章中,我们将围绕可信任的人工智能在以下几个方面展开讨论。因为涉及的内容较多,我们将分三个部分对可信任的人工智能模型的理论基础和应用就行讨论。本文是其中的第一部分。
第一部分 人工智能模型的公平性和可解释性
第二部分 人工智能模型的质量
第三部分 IBM Watson OpenScale简介
随着人工智能在业务决策中扮演的角色越来越重,围绕模型的公平性的讨论也越来越多。
模型的公平性旨在消除机器学习算法中的偏见(Bias),特别是消除针对不应该对模型输出产生影响的个体属性(例如性别、种族、宗教信仰等等)的偏见。
在讨论公平性时,经常会用到下面的定义。
有利标签(Favorable Label)是指会对后续产生有利影响的输出值。例如在对一笔贷款的违约风险进行预测时,模型的输出“无风险”(No Risk)就是一个有利标签。因为该预测可能会有利于贷款机构做出批准贷款的决定。与之相对的,不利标签(Unfavorable Label)是指对后续产生不利影响的输出值。例如,模型的输出“有风险”(Risk)就是一个不利标签。
受保护属性(Protected Attribute)是指需要保证在按照该属性分组后各组成员可以受到平等对待的属性,例如性别、种族、宗教信仰等等。需要注意的是,受保护属性是和应用场景密切相关的。并不存在普遍适用的受保护属性。
受保护属性也被称为公平性属性(Fairness Attribute)。
特权(Privileged)是指可能会得到系统性优待的受保护属性取值。例如男性可能会被具有同等条件的女性更容易取得贷款。因此在这个场景里面,男性(Male)就是一个具有特权的值。男性群体就是一个特权(Privileged)群体(Group)。
特权群体也被称为多数派(Majority)。
非特权群体,特别是收到了系统性歧视的群体也别称为少数派(Minority)。
群体公平(Group Fairness)是指要保证根据受保护属性划分的每个群体(Group)都能得到同样或者相似的对待。也就是说,在其他条件接近的情况下,模型应该对每个群体产生同样或者类似的输出。
个体公平(Individual Fairness)是指要保证模型在其他条件接近的情况下对类似的个人能产生同样或者类似的输出。
有很多指标可以用于度量模型的公平性。差别影响(Disparate Impact)是其中最常被用到的指标一。
差别影响用来比较在特权群体中收到有利输出的概率和在非特权群体中收到有利输出的概率。
差别影响=(非特权群体中收到有利输出的样本数/非特权群体总的样本数)/( 特权群体中收到有利输出的样本数/特权群体总的样本数)
在业界经常使用“80%原则”来判断公平性。也就是说,差别影响低于80%即被认为模型有失公平性。当然在不同的应用场景里,对差别影响的要求也不尽相同。
需要注意的是,将受保护属性从特征中去除通常并不能去除差别影响。这是因为偏见仍然可以以间接性的方式存在与特征中。例如,因为同一种族的人可能会聚居在一起,住址很可能隐含了一个人的种族信息。在这种情况下,在特征中简单的去除种族属性并不足以去除差别影响。在很多情况下,受保护属性甚至更加难以判断。例如,一个人的性别可以通过购物历史来推出。这种偏见被称为间接偏见(Indirect Bias)。
去除偏见(Debias)是消除模型差别影响的过程。去除偏见算法能够找到数据集中的直接和间接偏见,并通过调整数据集来修复差别影响以达到模型的公平性。
AI Fairness 360是IBM发起的一个开源项目,其中整合了多种算法可以帮助用户去除偏见。
建立可信任的模型的另一个重要标准是可以对模型的输出作出解释。在很多领域,做出错误的决定的后果可能是很严重的。这就要求模型不仅能够做出尽量准确的预测,并且能够给用户解释为什么模型做出了这样的预测。例如,一个对贷款风险进行评估的模型需要解释为什么某一笔贷款申请是高风险的或者低风险的。
可视化不同特征对某一次模型评分造成的影响是常见的解释模型的手段之一。例如,LIME(local interpretable model-agnostic)是一个进行模型解释的技术。LIME也是一个开源项目。通过LIME,可以在无须了解模型的算法实现的情况下,对哪些特征对模型在某一次评分中做出的影响进行展示。
例如,下图所示的二分类模型会对一种蘑菇是可食用的(edible)还是有毒的(poisonous)进行预测。在如下的示例评分中,该模型对此蘑菇做出的预测是有毒的。在做出这次预测时,样本蘑菇的气味(odor),菌环以上的茎表面(stalk-surface-above-ring),孢子印的颜色(spore-print-color),菌环以下的茎表面(stalk-surface-below-ring)等特征都支持样本蘑菇是有毒的。相反的,菌褶大小(gill-size)这一特征则支持该样本蘑菇是可食用的。LIME可以将这些特征影响量化出来,从而帮助数据科学家了解二分类模型对该样本是如何做出预测的。
(图片来源 https://marcotcr.github.io/lime/tutorials)
LIME不仅可以用于对表格式数据分类器的结果进行解释,也可以用于文本分类器和图像分类器。
SHAP(Shapley Additive exPlanation)是另一种经常用于解释模型的技术。SHAP是基于博弈论理论的。和LIME一样,SHAP也可以对一个模型在某一个样本上做出的预测做出解释。
例如,下图所示的二分类模型会通过一种酒的质量做出预测。SHAP可以将模型结果(f(x)的位置)与基准值(base value)的差距显示出来,并可视化哪些特征影响了该模型对此样本的预测。在此,基准值是指所有样品的酒的质量的平均值。对此酒的样本,酒精含量(alcohol)、挥发性酸度(volatile acidity)等蓝色特征支持对酒的质量做出负面的预测。相反的,残留糖分(residual sugar)这一红色特征则支持对酒的质量做出正面的预测。因为蓝色特征更多且有些特征有较大的影响(例如酒精含量的贡献权重达9.4),该模型对此样本的最终预测是酒的质量较低。
(图片来源 SHAP: How to Interpret Machine Learning Models With Python)
除了对模型的某一次的预测结果做出解释,SHAP还支持对某一特征对模型的影响,以及各个特征在一个数据集预测结果的整体影响。
例如,下图展示了各个特征对酒的质量预测模型的整体影响。不难看出,其中酒精含量(alcohol)高会影响模型更倾向于做出酒的质量好的判断,而挥发性酸度(volatile acidity)则是在低的情况下影响模型更倾向于做出酒的质量好的判断。
(图片来源 SHAP: How to Interpret Machine Learning Models With Python)
在本文中,我们介绍了模型公平性和可解释性的基本概念。我们会在后面推出的文章中继续讨论模型的质量和如果使用IBM解决方案来保证模型的公平性。敬请期待。
参考文献:
AI Fairness 360
https://aif360.mybluemix.net/
LIME示例
Tutorial - continuous and categorical featureshttps://marcotcr.github.io/lime/tutorials/Tutorial%20-%20continuous%20and%20categorical%20features.html
SHAP: How to Interpret Machine Learning Models With Python
https://towardsdatascience.com/shap-how-to-interpret-machine-learning-models-with-python-2323f5af4be9
关于作者:
本文由IBM主机机器学习平台开发团队共同完成
魏可伟(Kewei Wei, [email protected]),IBM主机机器学习平台首席架构师,资深技术主管(Senior Technical Staff Member)
刘旺(Wang Liu, [email protected]),IBM主机机器学习平台资深架构师
万蒙(Meng Wan, [email protected]),IBM主机机器学习平台资深架构师
司美琴(Mei Qin Si, [email protected]),IBM主机机器学习平台资深软件工程师
胡雪瑞(XueRui Hu, [email protected]),IBM主机机器学习平台开发工程师
郭丽娜(Lina Guo, [email protected]),IBM主机机器学习平台开发工程师
矫冬颖(Dongying Jiao, [email protected]),IBM主机机器学习平台开发工程师