主要内容

plotPartialDependence

创建部分依赖图(PDP)和个人有条件期望(ICE)情节

描述

例子

plotPartialDependence (RegressionMdlvar计算和绘制中列出的预测变量之间的部分依赖关系var以及用回归模型预测的响应RegressionMdl,其中包含预测数据。

  • 如果指定一个变量var,函数创建一个与变量部分相关的线图。

  • 如果您指定了两个变量var,该函数创建针对两个变量的部分依赖的表面图。

例子

plotPartialDependence (ClassificationMdlvar标签计算和绘制中列出的预测变量之间的部分依赖关系var以及所指定的类别的分数标签通过使用分类模型ClassificationMdl,其中包含预测数据。

  • 如果指定一个变量var还有一节课标签,函数创建指定类对变量的部分依赖关系的线图。

  • 如果指定一个变量var和多个班级标签,函数在一个图形上为每个类创建一个线图。

  • 如果您指定了两个变量var还有一节课标签,该函数创建针对两个变量的部分依赖的表面图。

例子

plotPartialDependence (___数据使用新的预测数据数据.您可以指定数据除了前面语法中的任何输入参数组合之外。

例子

plotPartialDependence (___名称,值使用由一个或多个名称-值对参数指定的附加选项。例如,如果指定“有条件的”,“绝对”,plotPartialDependence函数创建一个图形,其中包括PDP,所选预测变量和预测响应或分数的散点图,以及每个观测的ICE图。

例子

斧头= plotPartialDependence (___返回绘图的轴。

例子

全部收缩

使用培训回归树Carsmall.数据集,并创建一个PDP,显示特征和经过训练的回归树中的预测响应之间的关系。

加载Carsmall.数据集。

加载Carsmall.

指定重量气缸, 和马力作为预测变量(X), 和英里/加仑为响应变量(Y).

X = [重量,气瓶,马力];y = mpg;

使用XY

mdl = fitrtree(x,y);

查看训练有素的回归树的图形显示。

视图(Mdl,“模式”“图”

图回归树查看器包含一个轴对象和其他类型的uimenu, uicontrol对象。axis对象包含60个类型为line, text的对象。

创建第一个预测变量的PDP,重量

PlotPartialDependence(MDL,1)

图中包含一个轴对象。标题为Partial dependency Plot的axis对象包含一个类型为line的对象。

这条标绘线代表了两者之间的平均部分关系重量(标记为x1),英里/加仑(标记为Y)在训练有素的回归树中MDL..的x中的小刻度表示唯一的值x1

回归树查看器显示第一个决定是是否x1小于3085.5。PDP在附近也显示出了很大的变化x1= 3085.5。树查看器根据预测变量可视化每个节点上的每个决策。可以根据的值找到多个节点x1,但确定依赖Yx1不简单。然而plotPartialDependence图平均预测的反应x1,所以你可以清楚地看到部分依赖Yx1

标签x1Y是预测器名称和响应名称的默认值。您可以通过指定名称值对参数来修改这些名称“PredictorNames”'responsebame'当你训练MDL.使用fitrtree.您还可以使用轴标签来修改轴标签包含ylabel功能。

用。训练朴素贝叶斯分类模型渔民数据集,并创建一个PDP,显示多个类别的预测变量和预测得分(后验概率)之间的关系。

加载渔民数据集,包含物种(物种)和测量()的萼片长度,萼片宽度,花瓣长度和花瓣宽度为150个鸢尾标本。该数据集包含了来自三个物种的50个样本:梭子蟹、花斑蟹和弗吉尼亚蟹。

加载渔民

培训一个天真的贝叶斯分类模型物种作为回应和作为预测因素。

Mdl = fitcnb(量、种类);

创建一个PDP的分数预测MDL.所有的三个类物种对第三个预测变量x3.属性指定类标签一会财产MDL.

plotPartialDependence (Mdl 3 Mdl.ClassNames);

图中包含一个轴对象。标题为Partial dependency Plot的轴对象包含3个类型为line的对象。这些物品代表着维珍卡。

根据这个模型,发生的概率virginica增加而x3.的概率setosa.大约0.33,从哪里来x3是0到2.5左右,然后概率几乎降到0。

使用生成的样本数据训练高斯过程回归模型,其中响应变量包括预测变量之间的交互作用。然后,创建ICE图,显示每个观测的特征和预测响应之间的关系。

生成样本预测器数据x1x2

rng (“默认”%的再现性n = 200;x1 =兰德(n - 1) * 2 - 1;x2 =兰德(n - 1) * 2 - 1;

生成响应值,包括之间的交互x1x2

Y = x1-2 * x1。* (x2 > 0) + 0.1 *兰德(n, 1);

创建一个高斯过程回归模型使用(x1, x2))Y

Mdl = fitrgp([x1 x2],Y);

创建一个数字,包括第一个预测器的PDP(红线)x1的散点图(圆标记)x1和预测响应,并通过指定一组ICE图(灰色线)“条件”作为“中心”

plotPartialDependence(MDL,1,“条件”“中心”

图中包含一个轴对象。具有标题个体条件期望绘图的轴对象包含202个类型的类型,分散。

“条件”“中心”plotPartialDependence偏移图,使所有图从零开始,这有助于检查所选特征的累积效应。

PDP发现平均关系,因此它不会揭示隐藏的依赖关系,特别是当响应包括特性之间的交互时。然而,ICE图清楚地显示了两种不同的响应依赖关系x1

训练分类模型的集合并创建两个pdp,一个使用训练数据集,另一个使用新数据集。

加载census1994数据集,其中包含美国的年薪数据,分类为< = 50 k> 50 k,以及一些人口统计学变量。

加载census1994

从表中提取要分析的变量子集AdultData.成人

X = adultdata (: {'年龄'“workClass”'教育_num''婚姻状况'“种族”...“性”“capital_gain”'capital_loss'“hours_per_week”“工资”});xnew = Adulttest(:,{'年龄'“workClass”'教育_num''婚姻状况'“种族”...“性”“capital_gain”'capital_loss'“hours_per_week”“工资”});

培训与课程的集体合奏工资作为使用该功能作为响应和剩余变量作为预测器fitcensemble.对于二进制分类,fitcensemble聚合100个分类树LogitBoost方法。

mdl = fitcensemble(x,“工资”);

检查中的类名MDL.

mdl.classnames.
ans =2 x1分类< = 50 k > 50 k

创建一个部分依赖图的分数预测MDL.第二节课工资> 50 k)反对预测指标年龄使用培训数据。

plotPartialDependence (Mdl'年龄'Mdl.ClassNames (2))

图中包含一个轴对象。标题为Partial dependency Plot的axis对象包含一个类型为line的对象。

创建一个班级成绩的PDP> 50 k反对年龄使用表中新的预测器数据Xnew

plotPartialDependence (Mdl'年龄',mdl.classnames(2),Xnew)

图中包含一个轴对象。标题为Partial dependency Plot的axis对象包含一个类型为line的对象。

这两个图显示了预测得分的部分依赖性类似的形状工资> 50 k) 在年龄.这两个图都表明,对高薪的预测得分在30岁之前增长很快,然后在60岁之前几乎持平,然后快速下降。然而,基于新数据的图表显示,年龄在65岁以上的人得分略高。

训练一个回归集合使用Carsmall.数据集,并使用新数据集为每个预测变量创建一个PDP图和ICE图,carbig.然后比较数据,分析预测变量的重要性。同时,将结果与返回的预测器重要性的估计进行比较predictorImportance函数。

加载Carsmall.数据集。

加载Carsmall.

指定重量气缸马力, 和Model_Year作为预测变量(X), 和英里/加仑为响应变量(Y).

X = [重量,圆柱,马力,model_year];y = mpg;

使用回归乐队使用XY

Mdl = fitrensemble (X, Y,...“PredictorNames”, {'重量'“气缸”“马力”“年”},...'responsebame'“英里”);

创建预测变量的重要性使用plotPartialDependencepredictorImportance功能。的plotPartialDependence函数将选定的预测器和预测的响应之间的关系可视化。predictorImportance总结了单值预测器的重要性。

通过使用,创建包括PDP图(红线)和冰块(灰线)的冰块(冰线)plotPartialDependence并指定“有条件的”,“绝对”.每个图还包括一个散点图(圆圈标记)的选定预测器和预测响应。同时,加载carbig并将其作为新的预测数据,Xnew.当你提供的时候Xnew,plotPartialDependence功能使用Xnew而不是预测数据MDL.

加载carbigXnew = [重量,圆柱,马力,model_year];图t = tiledlayout(2,2,“TileSpacing”“紧凑”);标题(t)“个人条件期望图”为了i = 1: 4 nexttile plotpartialdependency (Mdl,i,Xnew,“条件”'绝对')标题(''结束

图中包含4个轴对象。坐标轴对象1包含408个类型为线、散点的对象。坐标轴对象2包含408个类型为线、散点的对象。坐标轴对象3包含408个类型为线、散点的对象。坐标轴对象4包含408个类型为线、散点的对象。

通过使用计算预测器重要性的估计predictorImportance.由于每个预测器上的拆分,该函数总和在平均方形错误(MSE)中的变化,然后通过分支节点的数量划分总和。

Imp = predictorimportance(mdl);图酒吧(IMP)标题(的预测估计的重要性) ylabel ('估计')包含('预测器') ax = gca;斧子。XTickLabel = Mdl.PredictorNames;

图中包含一个轴对象。标题为Predictor Importance estimate的axes对象包含一个类型为bar的对象。

的变量重量影响最大的是英里/加仑根据预测的重要性。PDP的重量也显示出来英里/加仑有高度的部分依赖性重量.的变量气缸英里/加仑根据预测的重要性。PDP的气缸也显示出来英里/加仑取决于气缸

训练一个具有线性和交互项的广义可加性模型(GAM)用于预测。然后,创建一个既有线性项又有交互项的PDP和一个只有线性项的PDP。指定在创建pdp时是否包含交互术语。

加载电离层数据集。该数据集有34个预测器和351个雷达返回的二进制响应,或坏(“b”)或好(‘g’).

加载电离层

使用预测器训练GAMX和类标签Y.推荐的做法是指定类名。指定包含10个最重要的交互条款。

mdl = fitcgam(x,y,“类名”, {“b”‘g’},“互动”10);

MDL.是一个ClassificationGAM模型对象。

列出中的交互项MDL.

Mdl。的相互作用
ans =10×21 5 7 8 6 7 5 6 5 7 5 5 8 3 5 4 7 1 7 4 5

每一行的的相互作用表示一个交互项,并包含相互作用项的预测器变量的列索引。

找出交互项中最频繁的预测因子。

模式(Mdl。相互作用,'全部'
ans = 5

交互项中最常见的预测因子是第5个预测因子(x5).为第5个预测器创建PDP。要从计算中排除交互术语,请指定“IncludeInteractions”,假的对于第二个PDP。

plotPartialDependence (Mdl 5 Mdl.ClassNames (1))plotPartialDependence (Mdl 5 Mdl.ClassNames (1),“IncludeInteractions”假)网格传奇(“线性和互动术语”“线性条件仅”)标题(“第5个预测者的后验概率pdp”) 抓住离开

图中包含一个轴对象。以第五预测器后验概率pdp为标题的轴对象包含2个类型为line的对象。这些对象表示线性和交互项,仅表示线性项。

该地块表明分数(后验概率)的部分依赖性x5取决于模型是否包含交互项,特别是在哪里x5在0.2和0.45之间。

训练支持向量机(金宝appSVM)回归模型使用Carsmall.数据集,并创建两个预测变量的PDP。然后,从的输出中提取部分相关估计plotPartialDependence.或者,您可以通过使用partialDependence函数。

加载Carsmall.数据集。

加载Carsmall.

指定重量气缸位移, 和马力作为预测变量(资源描述).

TBL =桌子(重量,气缸,位移,马力);

使用。构建支持向量机回归模型资源描述以及响应变量英里/加仑.使用具有自动内核刻度的高斯内核功能。

Mdl = fitrsvm (MPG(资源,'responsebame'“英里”...“CategoricalPredictors”“气缸”“标准化”,真的,...'骨箱'“高斯”“KernelScale”“汽车”);

创建一个可视化预测响应的部分依赖的PDP(英里/加仑)的预测变量重量气缸.指定要计算其部分依赖性的查询点重量通过使用“QueryPoints”名称-值对的论点。您无法指定“QueryPoints”气缸因为它是一个分类变量。plotPartialDependence使用所有的分类值。

Pt = Linspace(min(重量),最大(重量),50)';AX = PlotPartialDependence(MDL,{'重量'“气缸”},“QueryPoints”, {pt, []});视图(140,30)%修改查看角度

图中包含一个轴对象。具有标题部分依赖性图的轴对象包含类型表面的对象。

PDP显示了两者之间的相互作用效应重量气缸.部分依赖英里/加仑重量根据价值而变化气缸

提取的估计偏相关英里/加仑重量气缸.的xdata.YData, 和ZData的值斧子。Children分别为x轴值(第一个选定的预测值)、y轴值(第二个选定的预测值)和z轴值(对应的部分相关性值)。

xval = ax.Children.XData;yval = ax.Children.YData;zval = ax.Children.ZData;

或者,您可以通过使用partialDependence函数。

(pd, x, y) = partialDependence (Mdl, {'重量'“气缸”},“QueryPoints”, {pt, []});

pd包含查询点的部分依赖项值xy

如果您指定“条件”作为'绝对'plotPartialDependence创建一个包括PDP、散点图和一组ICE图的图形。ax.Children (1)ax.Children (2)分别对应于PDP和散点图。剩余的元素斧子。Children对应ICE图。的xdata.YData的值ax.Children(我)分别为x轴值(所选预测值)和y轴值(相应的偏相关值)。

输入参数

全部收缩

回归模型,指定为完整或紧凑的回归模型对象,如下表所示。金宝app

模型 完整或紧凑模型对象
广义线性模型 GeneralizedLinearModel.CompactGeneralizedLinearModel
广义线性混合效应模型 GeneralizedLinearMixedModel
线性回归 LinearModelCompactLinearModel
线性混合效应模型 linearmixedmodel.
非线性回归 NonLinearModel
回归模型集合 RegressionEnsemble回归释迦缩短CompactRegressionEnsemble
广义可加模型 RegressionGAMCompactRegressionGAM
高斯过程回归 RegressionGPCompactRegressionGP
高斯核回归模型采用随机特征展开 RegressionKernel
高维数据的线性回归 回归线性
神经网络回归模型 RegressionNeuralNetworkCompactRegressionNeuralNetwork
金宝app支持向量机回归 RegressionSVMCompactRegressionSVM
回归树 RegressionTreeCompactregressiontree.
决策树集成的自举聚合 treebaggerCompactTreeBagger

如果RegressionMdl如果模型对象不包含预测器数据(例如,紧凑模型),您必须提供输入参数吗数据

plotPartialDependence不支持使用稀疏矩阵金宝app训练的模型对象。当您训练一个模型时,使用一个完整的数字矩阵或表格来预测数据,其中行对应于单个的观察结果。

分类模型,指定为完整或紧凑的分类模型对象,如下表所示。金宝app

模型 完整或紧凑模型对象
判别分析分类器 ClassificationDiscriminantCompactClassificationDiscriminant.
支持向量机或其他分类器的多类模型金宝app Classifiedecoc.CompactClassificeCoc.
学习者的集体融合 ClassificationEnsembleCompactClassificationEnsembleClassificationBaggedEnsemble
广义可加模型 ClassificationGAMCompactClassificationGAM
高斯内核分类模型使用随机特征扩展 ClassificationKernel
k- 最终邻居分类器 ClassificationKNN
线性分类模型 分类线性
多类朴素贝叶斯模型 ClassificationNaiveBayesCompactClassificaNiveBayes.
神经网络分类器 ClassificationneuralKetwork.CompactClassificationNeuralNetwork
金宝app支持向量机(SVM)分类器用于一类和二值分类 ClassificationSVMCompactClassificationSVM
用于多类分类的二叉决策树 ClassificationTreeCompactClassificationTree.
袋装决策树集合 treebaggerCompactTreeBagger

如果ClassificationMdl如果模型对象不包含预测器数据(例如,紧凑模型),您必须提供输入参数吗数据

plotPartialDependence不支持使用稀疏矩阵金宝app训练的模型对象。当您训练一个模型时,使用一个完整的数字矩阵或表格来预测数据,其中行对应于单个的观察结果。

预测变量,指定为正整数的向量,字符向量,字符串标量,字符串数组或字符向量的单元数组。您可以指定一个或两个预测器变量,如下表所示。

一个预测变量

价值 描述
正整数 对应于预测器数据列的指标值。
字符向量或字符串标量

预测器变量的名称。名称必须与条目匹配RegressionMdl。PredictorNamesClassificationMdl。PredictorNames

两个预测变量

价值 描述
两个正整数的向量 对应于预测器数据列的索引值。
字符串阵列或字符向量的单元数组

预测变量的名称。数组中的每个元素都是一个预测变量的名称。名称必须与里面的条目相匹配RegressionMdl。PredictorNamesClassificationMdl。PredictorNames

例子:{x1, x3的}

数据类型:||字符|字符串|细胞

类标签,指定为类别或字符数组、逻辑或数字向量或字符向量的单元格数组。中的值和数据类型标签的类名必须匹配一会财产ClassificationMdlClassificationMdl。一会).

  • 只有在指定一个变量时,才能指定多个类标签var并指定“条件”作为“没有”(默认)。

  • partialDependence如果您想在一个函数调用中计算多个变量和多个类标签的部分依赖关系。

此参数仅在指定分类模型对象时有效ClassificationMdl

例子:{“红”、“蓝”}

例子:ClassificationMdl。3类名([1])指定标签作为第一和第三类ClassificationMdl

数据类型:||逻辑|字符|细胞|分类

预测器数据,指定为数字矩阵或表。每一行的数据对应一个观察值,每一列对应一个变量。

数据必须与训练模型的预测数据一致(RegressionMdlClassificationMdl),存储在X变量财产。

  • 如果您使用数字矩阵训练模型,那么数据必须是一个数值矩阵。组成列的变量数据必须具有与训练模型的预测变量相同的数量和顺序。

  • 如果您使用表训练模型(例如,资源描述),然后数据必须是一张桌子。所有预测因子变量数据必须具有与中的名称和类型相同的变量名称和数据类型资源描述.但是,的列顺序数据不需要对应的列顺序资源描述

  • plotPartialDependence不支持稀疏矩阵。金宝app

如果RegressionMdlClassificationMdl您是否必须提供不包含预测器数据的模型对象数据.如果该模型是包含预测器数据的完整模型对象,请指定此参数,然后plotPartialDependence不使用预测数据的模型和使用数据只有。

数据类型:||桌子

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字是参数名称和价值为对应值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:plotPartialDependence (Mdl、var、数据“NumObservationsToSample”,100年,“UseParallel”,真的)中使用100个抽样观察创建一个PDP数据和执行为了并行循环迭代。

绘图类型,指定为“没有”'绝对',或“中心”

价值 描述
“没有”

plotPartialDependence创建一个PDP。图的类型取决于中指定的预测变量的数量var以及指定的类标签数标签(对于分类模型)。

  • 一个预测变量和一个类标签 -plotPartialDependence计算查询点上的部分依赖关系,并创建部分依赖关系的二维线图。

  • 一个预测变量和多个类标签-plotPartialDependence为选定的类创建一个包含多个2-D线图的图形。

  • 两个预测变量和一个类标签-plotPartialDependence创建一个与两个变量部分相关的曲面图。

'绝对'

plotPartialDependence创建一个图形,包括以下三种类型的图:

  • PDP用红线

  • 所选预测变量的散点图,用圆形标记预测反应或分数

  • 用灰色线绘制每个观测值的ICE图

中只选择一个预测变量时,此值有效var还有一个类标签标签(对于分类模型)。

“中心”

plotPartialDependence创建一个图,包括相同的三种类型的图表'绝对'.该功能偏移绘图,使所有绘图从零开始。

中只选择一个预测变量时,此值有效var还有一个类标签标签(对于分类模型)。

例子:“有条件的”,“绝对”

标志在部分依赖计算中包含广义可加模型(GAM)的交互项,指定为真的错误的.此参数仅对GAM有效。也就是说,您只能指定此参数RegressionMdlRegressionGAMCompactRegressionGAM,或ClassificationMdlClassificationGAMCompactClassificationGAM

默认值“IncludeInteractions”价值是真的如果模型包含交互项。该值必须为错误的如果模型不包含交互术语。

例子:“IncludeInteractions”,假的

数据类型:逻辑

标记在部分依赖计算中包含广义可加模型(GAM)的截距项,指定为真的错误的.此参数仅对GAM有效。也就是说,您只能指定此参数RegressionMdlRegressionGAMCompactRegressionGAM,或ClassificationMdlClassificationGAMCompactClassificationGAM

例子:“IncludeIntercept”,假的

数据类型:逻辑

样本的观察次数,指定为正整数。默认值是总观察的数量数据或模型(RegressionMdlClassificationMdl).如果您指定大于总观察的数量的值,那么plotPartialDependence使用所有观察。

plotPartialDependence样本观察,没有替换使用datasample函数,并使用采样的观察值来计算部分相关性。

plotPartialDependence在采样观测的唯一值下显示次要刻度标记。

如果您指定“条件”作为'绝对'“中心”plotPartialDependence为每个采样观测创建一个包括ICE图的图形。

例子:'numobservationstosample',100

数据类型:|

要绘制的轴,指定为轴对象。如果你没有指定坐标轴,并且当前的坐标轴是笛卡尔坐标,那么plotPartialDependence使用当前轴(gca).如果轴不存在,plotPartialDependence在一个新的图形的情节。

例子:'父母',斧头

用于计算数值预测器的部分依赖性的点,该预测器指定为数值列向量、数值两列矩阵或由两个数值列向量组成的单元格数组。

  • 如果你选择一个预测变量var,使用数字列向量。

  • 如果选择两个预测变量var

    • 使用数字两列矩阵指定每个预测变量的相同数量的点。

    • 使用由两个数字列向量组成的单元格数组为每个预测器变量指定不同数量的点。

默认值是数字列向量或数字两列矩阵,具体取决于所选预测器变量的数量。每个列包含在对应预测器变量的采样观测的最小值和最大值之间的100个均匀间隔点。

如果“条件”'绝对'“中心”,然后软件将预测数据值(数据或预测数据RegressionMdlClassificationMdl)的选择预测器。

您不能修改“QueryPoints”对于一个分类变量。的plotPartialDependence函数使用所选变量中的所有分类值。

如果选择一个数值变量和一个分类变量,则可以指定“QueryPoints”通过使用由数字列向量和空阵列组成的小区数组来表示数字变量。

例子:QueryPoints, {pt, []}

数据类型:||细胞

标志以并行运行,指定为真的错误的.如果您指定“UseParallel”,真的,plotPartialDependence函数执行为了- 通过使用并行迭代parfor预测每个观察结果的反应或分数并将其平均。此选项需要并行计算工具箱™。

例子:“UseParallel”,真的

数据类型:逻辑

输出参数

全部收缩

图的坐标轴,作为坐标轴对象返回。修改坐标轴外观和从图中提取数据的方法请参见轴外观从图中提取部分依赖估计

更多关于

全部收缩

回归模型的偏依赖

部分依赖[1]表示在训练过的回归模型中预测变量和预测响应之间的关系。plotPartialDependence通过忽略其他变量,计算预测响应对预测变量子集的部分依赖性。

考虑对子集的部分依赖X年代整个预测变量集X= {x1x2,......,x.一个子集X年代包括一个或两个变量:X年代= {xS1X年代= {xS1xS2.让XC的互补集X年代X.预测的响应fX)取决于所有的变量X

fX)=fX年代XC).

预测响应的部分依赖性X年代是由预测响应的期望来定义的XC

f 年代 X 年代 E C f X 年代 X C f X 年代 X C p C X C d X C

在哪里pCXC)为的边际概率XC,也就是说, p C X C p X 年代 X C d X 年代 .假设每一个观察结果都是等可能的,并且X年代XC和相互作用X年代XC在反应不强烈时,plotPartialDependence利用观测到的预测数据估计部分依赖关系如下:

f 年代 X 年代 1 N σ. 1 N f X 年代 X C (1)

在哪里N是观察人数和X= (X年代XC观察。

当你打电话的时候plotPartialDependence函数,您可以指定经过训练的模型(f(·))和选择变量(X年代),使用输入参数RegressionMdlvar,分别。plotPartialDependence计算100个均匀间隔点的部分依赖X年代或者你用“QueryPoints”名称-值对的论点。你可以指定号码(N)通过使用通过给定的预测仪数据来样的观察“NumObservationsToSample”名称-值对的论点。

个人有条件的回归模型的期望

个人条件期望(ICE)[2],作为部分依赖的延伸,表示预测变量和每个观测的预测响应之间的关系。部分依赖性显示了预测变量和预测响应之间的平均关系,而一组ICE图分解了平均信息,并显示了每个观测的独立依赖性。

plotPartialDependence为每个观测创建一个ICE图。一套ICE图有助于研究来自不同观测的部分依赖的异质性。plotPartialDependence还可以使用通过输入参数提供的任何预测数据来创建冰块数据.您可以使用该特性来探索预测的响应空间。

考虑选择预测器变量的冰绘图x年代根据给定的观察结果XC,在那里X年代= {x年代XC的互补集X年代在整个变量集合中X, 和X= (X年代XC观察。ICE图对应于中求和的和方程1

f 年代 X 年代 f X 年代 X C

plotPartialDependence绘图 f 年代 X 年代 对于每一个观察当您指定时“条件”作为'绝对'.如果您指定“条件”作为“中心”plotPartialDependence在删除由于不同观察结果的级别效应后绘制所有绘图:

f 年代 为中心的 X 年代 f X 年代 X C - f 最小值 X 年代 X C

此减法可确保每个绘图从零开始,因此您可以检查累积效果X年代和之间的相互作用X年代XC

分类模型的部分依赖和ICE

在分类模型中,plotPartialDependence用与回归模型相同的方法计算部分依赖和个人条件期望,但有一个例外:不是使用来自模型的预测响应,而是使用中指定的类的预测分数标签

加权算法遍历

加权遍历算法[1]是一种估计基于树的模型的部分依赖性的方法。估计的部分依赖性是在树遍历期间访问的叶节点对应的响应值或得分值的加权平均值。

X年代是整个变量集的子集XXC的互补集X年代X.为每一个X年代值来计算部分依赖,算法从根(开始)节点到叶(终端)节点遍历树,并找到叶节点的权值。遍历首先在根节点上分配一个权值为1。如果一个节点被X年代,算法将遍历相应的子节点,这取决于X年代价值。子节点的权重变为与其父节点相同的值。如果一个节点被XC,算法遍历两个子节点。每个子节点的权重变为其父节点的值乘以对应于每个子节点的观测值的分数。在完成树遍历后,该算法利用分配的权重计算加权平均值。

对于一组袋装树,估计的偏相关性是单个树的加权平均值的平均值。

算法

plotPartialDependence使用一个预测功能预测响应或分数。plotPartialDependence选择合适预测根据模型的功能(RegressionMdlClassificationMdl)和运行预测使用默认设置。详细资料预测函数,见预测函数。如果指定的模型是基于树的模型(不包括增强的树集合)和“条件”“没有”, 然后plotPartialDependence使用加权遍历算法而不是预测函数。有关详细信息,请参见加权算法遍历

回归模型对象

模型类型 完整或紧凑的回归模型对象 预测反应功能
决策树集成的自举聚合 CompactTreeBagger 预测
决策树集成的自举聚合 treebagger 预测
回归模型集合 RegressionEnsemble回归释迦缩短CompactRegressionEnsemble 预测
高斯核回归模型采用随机特征展开 RegressionKernel 预测
高斯过程回归 RegressionGPCompactRegressionGP 预测
广义添加剂模型 RegressionGAMCompactRegressionGAM 预测
广义线性混合效应模型 GeneralizedLinearMixedModel 预测
广义线性模型 GeneralizedLinearModel.CompactGeneralizedLinearModel 预测
线性混合效应模型 linearmixedmodel. 预测
线性回归 LinearModelCompactLinearModel 预测
高维数据的线性回归 回归线性 预测
神经网络回归模型 RegressionNeuralNetworkCompactRegressionNeuralNetwork 预测
非线性回归 NonLinearModel 预测
回归树 RegressionTreeCompactregressiontree. 预测
金宝app支持矢量机器 RegressionSVMCompactRegressionSVM 预测

分类模型对象

模型类型 完整或紧凑分类模型对象 预测标签和分数的功能
判别分析分类器 ClassificationDiscriminantCompactClassificationDiscriminant. 预测
支持向量机或其他分类器的多类模型金宝app Classifiedecoc.CompactClassificeCoc. 预测
学习者的集体融合 ClassificationEnsembleCompactClassificationEnsembleClassificationBaggedEnsemble 预测
高斯内核分类模型使用随机特征扩展 ClassificationKernel 预测
广义添加剂模型 ClassificationGAMCompactClassificationGAM 预测
k最近的邻居模型 ClassificationKNN 预测
线性分类模型 分类线性 预测
朴素贝叶斯模型 ClassificationNaiveBayesCompactClassificaNiveBayes. 预测
神经网络分类器 ClassificationneuralKetwork.CompactClassificationNeuralNetwork 预测
金宝app支持向量机的一类和二值分类 ClassificationSVMCompactClassificationSVM 预测
用于多类分类的二叉决策树 ClassificationTreeCompactClassificationTree. 预测
袋装决策树集合 treebaggerCompactTreeBagger 预测

替代功能

  • partialDependence计算不可视化的部分依赖性。该函数可以在一次函数调用中计算两个变量和多个类的部分依赖关系。

参考文献

[1]弗里德曼,杰罗姆。贪婪函数近似:梯度增压机统计年鉴29日,没有。5(2001): 1189 - 1232。

[2] Goldstein,Alex,Adam Kapelner,Justin Bleich和Emil Pitkin。“偷看黑匣子里面:用个人有条件期望的情节可视化统计学习。”中国计算与图形统计学报24,不。1(2015年1月2日):44-65。

哈斯蒂,特雷弗,罗伯特·蒂布希拉尼和杰罗姆·弗里德曼。统计学习的要素。纽约,纽约:施普林格纽约,2001。

扩展功能

介绍了R2017b