You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python计算风险模型参与者Shapley值获取边际贡献方法咨询

风险场景下Shapley边际贡献计算方案

前置数据修正

你提供的样本中存在2条Firm为H的预期损失记录,先合并得到H的独立预期损失总额为27755.97,修正后的全量独立损失数据如下:

Firm  独立预期损失
A     6,103.40
B     12,370.25
C     11,897.43
D     5,199.82
E     26,384.77
F     5,747.24
G     31,206.84
H     27,755.97
I     11,357.89
合计  138,023.60

和你给出的总风险数值完全匹配,可直接用于后续计算。

Shapley值核心计算逻辑

针对风险分摊场景的Shapley值,本质是计算单个主体加入所有可能的参与方子集时,带来的边际风险贡献的加权平均值,公式为:
φᵢ = Σ [ |S|! × (n - |S| - 1)! / n! ] × [ v(S ∪ {i}) - v(S) ]
各参数含义:

  • n为参与方总数,修正后本场景n=9
  • S为不包含主体i的任意参与方子集
  • v(S)为子集S的联合风险损失
    如果当前你仅持有各主体独立风险损失、没有任意子集的联合风险数据,可默认采用加和规则:v(S)等于S内所有主体的独立损失之和,该场景下Shapley值等于各主体自身的独立损失,边际贡献占比为该主体独立损失除以总风险
    如果你持有子集联合风险数据(比如多主体联合存在风险分散/放大效应,联合损失不等于独立损失加和),替换v(S)为实际联合损失即可。

落地计算步骤

无联合风险数据场景

直接用各主体独立损失作为Shapley值即可,比如:

  • A的边际贡献为6103.40,占总风险比例约4.42%
  • B的边际贡献为12370.25,占总风险比例约8.96%
    其余主体以此类推计算即可。

有联合风险数据场景

9个参与方总共有512个子集,可通过代码批量计算,示例代码如下:

import itertools
import math

# 参与方列表
players = ['A','B','C','D','E','F','G','H','I']
n = len(players)
shapley_res = {}

# 自定义函数:输入参与方子集,返回该子集的实际联合风险损失
def get_joint_risk(subset):
    # 此处替换为你实际的联合风险查询逻辑
    # 示例默认用加和规则,有实际数据可直接修改
    risk_map = {
        'A':6103.40, 'B':12370.25, 'C':11897.43, 'D':5199.82,
        'E':26384.77, 'F':5747.24, 'G':31206.84, 'H':27755.97, 'I':11357.89
    }
    return sum([risk_map[p] for p in subset])

for player in players:
    shapley_val = 0
    other_players = [p for p in players if p != player]
    # 遍历所有不包含当前主体的子集
    for k in range(len(other_players)+1):
        for subset in itertools.combinations(other_players, k):
            # 计算权重
            weight = math.factorial(k) * math.factorial(n - k -1) / math.factorial(n)
            # 计算边际贡献
            marginal = get_joint_risk(subset + (player,)) - get_joint_risk(subset)
            shapley_val += weight * marginal
    shapley_res[player] = round(shapley_val, 2)

print(shapley_res)

运行代码即可得到所有主体的Shapley边际贡献结果。

内容的提问来源于stack exchange,提问作者charl0

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 04:24:08