夏普利值(Shapley value)是合作博弈论中的一个解概念,它为合作参与者之间公平分配总收益或总成本提供了一种方法。该概念以劳埃德·夏普利(Lloyd Shapley)的名字命名,他于1951年提出这一思想,并在1953年正式发表。它回答了这样一个问题:当集体产生某种结果时,每个参与者应获得多少功劳或承担多少责任。该方法计算每个参与者在所有可能的联盟中的边际贡献平均值,从而确保分配满足四个基本性质:效率、对称性、可加性和虚拟参与者性质。除了经济学领域的起源,夏普利值已成为可解释机器学习(machine learning)领域的基石,用于将复杂模型的预测归因于各个输入特征。
其核心思想是评估当某个参与者加入每个可能的参与者子集时,整体结果如何变化,然后对所有子集及所有可能的加入顺序取平均。这种方法考虑了参与者之间的相互作用,认识到某个参与者的贡献可能取决于联盟中已有的其他成员。由于它是唯一同时满足上述四个公理性质的分配规则,因此常被描述为公平分配合作收益的独特方法。
定义
在合作博弈中,设参与者集合为 \(N\),任意子集 \(S \subseteq N\) 可形成联盟,值函数 \(v(S)\) 表示联盟 \(S\) 的成员通过合作所能获得的总收益。参与者 \(i\) 的夏普利值由以下公式给出:
\[
\varphi_i(v) = \sum_{S \subseteq N \setminus \{i\}} \frac{|S|! (n - |S| - 1)!}{n!} (v(S \cup \{i\}) - v(S))
\]
其中 \(n\) 是参与者总数。项 \(v(S \cup \{i\}) - v(S)\) 表示参与者 \(i\) 对联盟 \(S\) 的边际贡献。组合权重 \(\frac{|S|! (n - |S| - 1)!}{n!}\) 对应于在随机排列中,集合 \(S\) 中的参与者排在 \(i\) 之前且其余参与者排在 \(i\) 之后的排列数。另一种等价形式是对所有 \(n!\) 种可能的参与者顺序取平均边际贡献:
\[
\varphi_i(v) = \frac{1}{n!} \sum_R \left[ v(P_i^R \cup \{i\}) - v(P_i^R) \right]
\]
其中 \(P_i^R\) 表示在顺序 \(R\) 中排在参与者 \(i\) 之前的参与者集合。这种解释设想联盟按顺序逐步形成,每个参与者获得其加入时的边际贡献,然后对所有可能的形成顺序取平均。
公理性质
夏普利值是唯一满足以下四个公理的分配规则,这些公理被广泛认为是公平分配的基本要求:
- 效率:所有参与者夏普利值之和等于大联盟的总收益,即 \(\sum_{i \in N} \varphi_i(v) = v(N)\)。这确保收益被完全分配,没有损失或剩余。
- 对称性:如果两个参与者 \(i\) 和 \(j\) 对所有不包含它们的联盟 \(S\) 都有相同的边际贡献(即 \(v(S \cup \{i\}) = v(S \cup \{j\})\)),则它们应获得相同的夏普利值。
- 可加性:对于两个博弈 \(v\) 和 \(w\),组合博弈 \(v+w\) 的夏普利值等于各自夏普利值之和,即 \(\varphi_i(v+w) = \varphi_i(v) + \varphi_i(w)\)。这支持将复杂问题分解为简单部分。
- 虚拟参与者性质:如果参与者 \(i\) 对所有联盟 \(S\) 都没有边际贡献(即 \(v(S \cup \{i\}) = v(S)\)),则其夏普利值为零。
这些公理在夏普利1951年的工作论文中提出,并在1953年的正式出版物中确立。它们保证了夏普利值不是任意的,而是基于合理的公平原则推导出来的。
在经济学和商业中的应用
在合作博弈论中,夏普利值已被用于各种经济场景中的成本和收益分配。例如,在商业合伙关系中,合伙人可以根据各自对不同项目组合的边际贡献来分配利润。在合资企业中,它被用于分摊共享基础设施的成本,例如多个公司共同使用一个工厂或物流网络。在供应链管理中,它帮助确定各企业在合作生产最终产品时的公平价格。此外,该方法还用于投票权力分析,衡量每个选民在加权投票系统中的影响力,尽管在这种场景下,密切相关的班茨哈夫权力指数(Banzhaf power index)有时更受青睐。
在机器学习中的应用
在机器学习(machine learning)领域,夏普利值被改编用于解释单个模型的预测,这一领域称为特征归因(feature attribution)。在此背景下,输入特征被视为参与者,值函数 \(v(S)\) 定义为仅使用特征子集 \(S\) 时模型的预测值,通常通过对未包含的特征进行边缘化(marginalization)来实现。某个特征的夏普利值衡量了该特征对预测的平均贡献,同时考虑了与其他特征的交互作用。这种方法具有模型无关性,适用于任何预测模型,包括深度学习(deep learning)网络、神经网络(neural network)集成模型以及大型语言模型(large language model)系统。
一个关键的实际实现是SHAP(SHapley Additive exPlanations),由斯科特·伦德伯格(Scott Lundberg)和苏-因·李(Su-In Lee)于2017年提出。SHAP提供了高效算法来近似夏普利值,因为精确计算在特征数量上是指数级的。该方法已成为模型可解释性的标准工具,帮助数据科学家和监管机构理解模型为何做出特定预测。
计算挑战与近似方法
精确计算夏普利值需要对所有 \(2^n\) 个子集求和,当特征数量较多时计算量巨大。例如,对于30个特征,可能的联盟数量超过十亿。因此,开发了多种近似技术:
- 蒙特卡洛采样:随机采样排列或子集,并平均边际贡献。这提供了无偏估计,且方差可控。
- TreeSHAP:针对基于树的模型(如随机森林和梯度提升树),利用树结构在多项式时间内精确计算夏普利值。
- KernelSHAP:一种模型无关的方法,通过加权线性回归来近似夏普利值,常用于黑盒模型。
- 基于梯度的方法:对于可微模型,可以使用梯度来近似计算,尽管这些方法可能不完全满足所有公理。
这些近似方法使夏普利值在信用评分、医疗诊断和自然语言处理等实际应用中变得可行。
与其他归因方法的关系
夏普利值常与其他特征归因技术进行比较。与置换重要性(permutation importance)或基于梯度的显著性图(saliency map)等简单方法不同,夏普利值能够捕捉特征间的交互作用,并满足效率性质,即所有特征的归因值之和等于模型输出。然而,它假设特征在边缘化时是独立的,这在特征高度相关时可能导致不切实际的样本。替代方法如LIME(Local Interpretable Model-agnostic Explanations)速度更快,但不保证满足相同的公理性质。在合作博弈论中,夏普利值是多种解概念之一,其他如核仁(nucleolus)和核心(core)也存在,但夏普利值是唯一同时满足上述四个公理的解。
扩展与变体
针对不同场景,夏普利值有多种扩展形式。加权夏普利值允许参与者具有不同权重,以反映不平等的谈判能力。夏普利-舒比克权力指数(Shapley-Shubik power index)将夏普利值应用于投票博弈,衡量参与者成为关键投票者的概率。在机器学习中,夏普利交互指数(Shapley interaction indices)将总归因分解为主效应和特征间的交互效应。对于时间序列数据,动态夏普利值考虑了时间依赖性。这些扩展保留了公平边际贡献平均的核心思想,同时适应特定问题的结构。
局限性与批评
尽管夏普利值在理论上具有吸引力,但它也存在局限性。在机器学习应用中,特征独立性的假设在特征相关时可能导致误导性的归因结果。即使使用近似方法,计算成本在高维数据中仍然可能过高。此外,预测模型中的值函数并不总是明确定义的,因为对未包含特征进行边缘化需要知道特征分布,而这一分布可能未知。批评者还指出,虽然公理性质在数学上优雅,但在实际场景中可能并不总是符合人类对公平的直觉。尽管如此,夏普利值仍然是博弈论和可解释AI领域的基础概念,并且针对这些挑战的研究仍在持续进行中。
历史背景
劳埃德·夏普利于1951年在兰德公司(RAND Corporation)工作期间提出了这一值,并于1953年正式发表。他的工作建立在合作博弈论的早期思想之上,特别是约翰·冯·诺依曼(John von Neumann)和奥斯卡·摩根斯特恩(Oskar Morgenstern)的贡献。夏普利后来因对博弈论的贡献,与阿尔文·罗斯(Alvin Roth)共同获得了2012年诺贝尔经济学纪念奖。夏普利值在机器学习中的采用始于2010年代,随着AI系统变得日益复杂,对模型可解释性的需求推动了这一应用。如今,它已成为数据科学家工具箱中的标准工具,并在SHAP和scikit-learn等主要库中实现。