文档帮助中心文档
情节夏普利值
情节(讲解员)
情节(讲解员、名称、值)
b =情节(___)
例子
图(讲解员)的Shapley值的水平条形图沙普利对象讲解员.这些值存储在对象的值中ShapleyValues财产。每个竖条显示黑箱模型中每个特性的Shapley值(讲解员。BlackboxModel)查询查询点(讲解员。QueryPoint).
图(讲解员)
讲解员
沙普利
ShapleyValues
讲解员。BlackboxModel
BlackboxModel
讲解员。QueryPoint
QueryPoint
图(讲解员,名称,值)使用一个或多个名称-值参数指定其他选项。例如,指定“NumImportantPredictors”,5绘制Shapley绝对值最高的五个特征的Shapley值。
图(讲解员,名称,值)
名称,值
“NumImportantPredictors”,5
b =情节(___)返回一个条形图对象b使用前面语法中的任何输入参数组合。使用b查询或修改栏属性条形图创建后的。
b
全部折叠
训练分类模型并创建沙普利对象。然后利用目标函数绘制Shapley值情节.
情节
加载CreditRating_Historical数据集。该数据集包含客户id及其财务比率、行业标签和信用评级。
CreditRating_Historical
台= readtable (“CreditRating_Historical.dat”);
显示表的前三行。
头(资源描述,3)
ans =3×8表ID WC_TA RE_TA EBIT_TA MVE_BVTD S_TA行业评级 _____ _____ _____ _______ ________ _____ ________ ______ 62394 0.013 0.104 0.036 0.447 0.142 3{“BB”}48608 0.232 0.335 0.062 1.969 0.281 8 {A} 42444 0.311 0.367 0.074 1.935 0.366 1 {A}
使用的方法训练信用评级的黑箱模型fitcecoc函数。使用从第二列到第七列的变量资源描述作为预测变量。推荐的做法是指定类名来设置类的顺序。
fitcecoc
资源描述
黑箱= fitcecoc(资源描述,“评级”,...“PredictorNames”tbl.Properties.VariableNames (7),...“CategoricalPredictors”,“行业”,...“类名”, {“AAA”“AA”“一个”“BBB”“BB”“B”“CCC”});
创建一个沙普利对象,它解释了最后一次观测的预测。为了更快的计算,将25%的观测数据从资源描述并使用样本来计算Shapley值。
queryPoint =(资源(最终,:)
queryPoint =表1×8ID WC_TA RE_TA EBIT_TA MVE_BVTD S_TA行业评级 _____ _____ _____ _______ ________ ____ ________ ______ 73104 0.239 0.463 0.065 2.924 0.34 - 2{“AA”}
rng (“默认”)%的再现性c = cvpartition(资源描述。评级,“坚持”, 0.25);: tbl_ =台(测试(c):);: tbl_讲解员=沙普利(黑盒,“QueryPoint”, queryPoint);
对于一个分类模型,沙普利使用每个类的预测类得分计算Shapley值。中的值显示ShapleyValues财产。
讲解员。ShapleyValues
ans =6×8表预测AAA AA BBB BB B CCC __________ __________ __________ ___________ __________ ___________ ___________ ___________ " WC_TA“0.014583 0.0064698 0.0027468 0.00045582 -0.0079591 -0.011811 -0.011279”RE_TA“0.047796 0.027083 0.015166 -0.0031936 -0.025054 -0.059564 -0.083439”EBIT_TA“0.00034326 0.0001524 0.00012384 3.5202 -0.00019141 e-05-0.00038252 -0.00033693 "MVE_BVTD" 0.38221 0.38229 0.19383 -0.0079011 -0.15755 -0.21522 -0.17022 "S_TA" -0.0035663 -0.0025991 -0.00021177 -0.0010166 -2.0989e-05 0.00041415 -0.00058882 "Industry" -0.028315 -0.013392 0.00089644 0.022877 0.025636 0.028485 0.044835
的ShapleyValues属性包含每个类的所有特性的Shapley值。
的方法绘制预测类的Shapley值情节函数。
水平条形图显示了所有变量的Shapley值,按它们的绝对值排序。每个Shapley值解释了由于相应的变量,查询点的分数与预测类的平均分数之间的偏差。
中指定所有类名,绘制所有类的Shapley值讲解员。BlackboxModel.
情节(讲解员,“类名”explainer.BlackboxModel.ClassNames)
训练一个回归模型并创建一个沙普利对象。使用对象函数适合来计算指定查询点的Shapley值。然后利用目标函数绘制预测器的Shapley值情节.调用时指定要绘制的重要预测器的数量情节函数。
适合
加载carbig数据集,其中包含20世纪70年代和80年代初生产的汽车的测量数据。
carbig
负载carbig
创建一个包含预测变量的表加速度,气缸,等等,以及响应变量英里/加仑.
加速度
气缸
英里/加仑
台=表(加速度、汽缸、排量、马力、Model_Year重量,MPG);
删除训练集中缺失的值可以帮助减少内存消耗并加速训练fitrkernel函数。删除资源描述.
fitrkernel
台= rmmissing(台);
训练一个黑匣子模型英里/加仑通过使用fitrkernel函数
rng (“默认”)%的再现性mdl = fitrkernel(资源描述,“英里”,“CategoricalPredictors”[2 - 5]);
创建一个沙普利对象。指定数据集资源描述,因为mdl不包含培训数据。
mdl
讲解员=沙普利(mdl(资源)
explainer = shapley with properties: BlackboxModel: [1x1 RegressionKernel] QueryPoint: [] BlackboxFitted: [] ShapleyValues: [] NumSubsets: 64 X: [392x7 table] CategoricalPredictors: [2 5] Method: ' interonal -kernel' Intercept: 22.6202
讲解员存储训练数据资源描述在X财产。
X
计算第一次观测的所有预测变量的Shapley值资源描述.
: queryPoint =(资源(1)
queryPoint =表1×7加速气缸位移马力Model_Year体重MPG ____________ _________ ____________ __________ __________ ______ ___ 12 8 307 130 70 3504
讲解员=适合(讲解员,queryPoint);
对于回归模型,沙普利使用预测的响应计算Shapley值,并将它们存储在ShapleyValues财产。中的值显示ShapleyValues财产。
ans =6×2表预测器ShapleyValue ______________ ____________“加速度”-0.1561“气缸”-0.18306“位移”-0.34203“马力”-0.27291“Model_Year”-0.2926“重量”-0.32402
控件绘制查询点的Shapley值情节函数。指定“NumImportantPredictors”,5只绘制预测反应的五个最重要的预测因子。
情节(讲解员,“NumImportantPredictors”5)
水平条形图显示了按绝对值排序的五个最重要预测器的Shapley值。每个Shapley值解释了由于相应的变量,查询点的预测与平均值之间的偏差。
对象解释黑盒模型,指定为沙普利对象。
指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家.
的名字
价值
Name1, Value1,…,的家
情节(讲解员,NumImportantPredictors 5“类名”,c)
c
NumImportantPredictors
分钟(M, 10)
米
要绘制的重要预测数,指定为正整数。的情节函数绘制指定数量的具有最高绝对Shapley值的预测器的Shapley值。
例子:“NumImportantPredictors”,5指定绘制五个最重要的预测因子。的情节函数通过使用绝对Shapley值来确定重要性的顺序。
数据类型:单|双
单
双
一会
讲解员。BlackboxFitted
要绘制的类标签,指定为类别或字符数组、逻辑或数字向量或字符向量的单元格数组。中的值和数据类型“类名”属性中的类名必须匹配一会中机器学习模型的性质讲解员(explainer.BlackboxModel.ClassNames).
“类名”
explainer.BlackboxModel.ClassNames
您可以指定一个或多个标签。如果指定多个类标签,该函数将用不同的颜色为每个特性绘制多个条形图。
默认值是查询点(BlackboxFitted的属性讲解员).
BlackboxFitted
此参数仅在机器学习模型(BlackboxModel)讲解员是一个分类模型。
例子:“类名”,{“红”、“蓝”}
“类名”,{“红”、“蓝”}
例子:“类名”,explainer.BlackboxModel.ClassNames指定“类名”所有的班级BlackboxModel.
“类名”,explainer.BlackboxModel.ClassNames
数据类型:单|双|逻辑|字符|细胞|分类
逻辑
字符
细胞
分类
在博弈论中,参与者的Shapley值是参与者在合作博弈中的平均边际贡献。在机器学习预测的上下文中,一个查询点的特征的Shapley值解释了该特征对指定查询点的预测(对回归的响应或分类的每个类的得分)的贡献。
查询点的特征的Shapley值是特征对平均预测偏差的贡献。对于一个查询点,所有特征的Shapley值的和对应于预测与平均值的总偏差。也就是说,所有特征的平均预测和Shapley值的和对应于查询点的预测。
有关详细信息,请参见机器学习模型的Shapley值.
Lundberg, Scott M和S. Lee。“解释模型预测的统一方法”神经信息处理系统研究进展30(2017): 4765 - 774。
Aas, Kjersti, Martin。朱勒姆和安德斯·洛兰德。解释特征依赖时的个人预测:对Shapley值的更精确的近似arXiv: 1903.10464(2019).
沙普利|适合
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系