主要内容

部分竞争

计算部分依赖

描述

例子

pd=部分依存(MDL.var计算部分依赖pd在列出的预测变量之间var并且使用回归模型预测的响应MDL.,其中包含预报数据。

例子

pd=部分依存(MDL.var标签计算部分依赖pd在列出的预测变量之间var以及所指定的类别的分数标签通过使用分类模型MDL.,其中包含预报数据。

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

例子

pd=部分依存(___名称,价值使用由一个或多个名称-值对参数指定的附加选项。例如,如果您指定'使用adplelial','真', 这部分竞争函数使用并行计算执行部分依赖性计算。

[pdXy] =部分依存(___也退货Xy,其中包含中第一个和第二个预测器变量的查询点var, 分别。如果指定一个变量var, 然后部分竞争返回空矩阵([])y

例子

全部收缩

训练朴素贝叶斯分类模型渔民数据集,并计算部分依赖值,显示预测变量和多个类别的预测分数(后验概率)之间的关系。

加载渔民数据集,其中包括物种(物种)和测量(测定)萼片长度,萼片宽度,花瓣长度和花瓣宽度为150鸢尾标本。数据集包含来自三种种类中的每一个的50个标本:Setosa,Versicolor和Virginica。

加载渔民

训练朴素贝叶斯分类模型物种作为回应和测定作为预测因素。

mdl = fitcnb(meas,speies,'predictornames', (“萼片长度”“萼片宽度”“花瓣长”“瓣宽”]);

计算所预测的分数的第三预测变量(花瓣长度)上的部分依赖值MDL.对于所有三个课程物种.通过使用该标签来指定类标签Classnames.财产MDL.

(pd, x) = partialDependence (Mdl 3 Mdl.ClassNames);

PD包含查询点x的部分依赖值。您可以通过使用绘图功能(如)绘制计算的部分依赖值阴谋酒吧.情节pd反对X通过使用酒吧函数。

Bar(x,pd)图例(mdl.classnames)xlabel(“花瓣长”) ylabel (“得分”) 标题(“部分依赖块”

根据该模型,概率弗吉纳斯随着花瓣长度增加。概率setosa.大约是0。33,从花瓣长度0到大约2。5,然后概率下降到接近0。

或者,您可以使用绘图竞争依赖性函数来计算和绘制部分依赖值。

PlotPartialDependence(MDL,3,MDL.Classnames)

培训分类模型的集合,并在两个类的两个变量上计算部分依赖值。然后绘制每个类的部分依赖值。

加载人口普查1994.数据集,包含美国年薪数据,分类为<= 50K.> 50K.,以及一些人口统计变量。

加载人口普查1994.

从表中提取变量的子集AdultData.

X = AdultData(1:500,{“年龄”“workClass”'教育_num''婚姻状况''种族'...'性别''资本收益'“capital_loss”'每周几小时''薪水'});

通过使用培训随机的分类树森林fitcensemble并指定“方法”作为'包'.为了再现性,使用通过使用创建的树木模板Templatetree.“复制”选项。

RNG('默认't = templateTree()“复制”,真的);mdl = fitcensemble(x,'薪水'“方法”'包''学习者',t);

检查类名MDL.

Mdl。ClassNames
ans =.2×1分类<= 50k> 50k

计算分数对预测因子的部分依赖值年龄教育_NUM对于两班(<= 50K.> 50K.)。指定样本为100的观察数。

[PD,X,Y] = PartialDependence(MDL,{“年龄”'教育_num'},mdl.classnames,'numobservationstosample',100);

创建第一类的部分依赖值的表面图(<= 50K.)通过使用SURFL.函数。

图SURF(X,Y,挤压(PD(1,::,:)))XLabel(“年龄”) ylabel ('教育\ _num')Zlabel('阶级得分<= 50k') 标题('部分依赖情节'30)视图([130])%修改视角

为第二类的部分依赖值创建一个表面图(> 50K.)。

图SURF(x,y,挤压(pd(2,:,:))xlabel(“年龄”) ylabel ('教育\ _num')Zlabel('课程的分数> 50k') 标题('部分依赖情节'30)视图([130])%修改视角

这两个图根据类显示了不同的部分依赖模式。

训练支持向量机(金宝appSVM)回归模型使用carsmall数据集,并计算两种预测变量的部分依赖。然后,创建一个图,该图显示了两个变量对两个变量的部分依赖以及每个变量的直方图。

加载carsmall数据集。

加载carsmall

创建一个包含的表重量气瓶移位, 和马力

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

使用预测器变量列出SVM回归模型TBL.和响应变量MPG..使用具有自动核尺度的高斯核函数。

mdl = fitrsvm(tbl,mpg,'responsebame''mpg'...'pationoricalpricictors''气瓶''标准化',真的,...'骨箱'“高斯”'kernelscale''汽车');

计算预测响应的部分依赖性(MPG.)重量马力.指定查询要点以通过使用该点来计算部分依赖项“QueryPoints”名称值对参数。

Numpoints = 10;PTX = Linspace(min(重量),最大(重量),numpoints)';pty = linspace(min(马力),max(马力),numpoints)';[PD,X,Y] = PartialDependence(MDL,{'重量'“马力”},“QueryPoints”,[ptx pty]);

创建一个包含5×5瓷砖图表布局的图形。绘制通过使用的部分依赖性imagesc.函数。然后通过使用绘制每个变量的直方图直方图函数。指定直方图的边缘,使直方图条的中心与查询点对齐。更改轴属性以对准图的轴。

t = tiledlayout(5,5,'tileespacing''袖珍的');AX1 = NELTTILE(2,[4,4]);ImagesC(x,y,pd)标题('部分依赖情节')颜色栏(“eastoutside”)ax1.ydir ='普通的';Ax2 = NextTile(22,[1,4]);dx = diff(ptx(1:2));edgex = [ptx-dx / 2; ptx(end)+ dx];直方图(体重,边缘);Xlabel('重量') xlim (ax1.XLim);ax3 = nexttile (1, 4, 1]);dY = diff(企业(1:2));edgeY = [ptY-dY / 2;企业(结束)+ (dY);直方图(马力,edgeY)包含(“马力”)XLIM(AX1.YLIM);Ax3.xdir ='撤销';camroll (-90)

每个元素pd指定图像图的一个像素的颜色。与图像轴对齐的直方图显示了预测器的分布。

输入参数

全部收缩

机器学习模型,指定为完整或紧凑的回归或分类模型对象,如下表的支持模型中给出。金宝app

回归模型对象

模型 完整或紧凑的回归模型对象
决策树集合的引导集合 treebaggerCompactTreeBagger.
回归模型的集合 回归回归释迦缩短CompactRegressionEnsemble
高斯内核回归模型使用随机特征扩展 回归科内尔
高斯过程回归 regressiongp.CompactRegressionGP
广义线性混合效应模型 GeneralizeLmixedModel.
广义线性模型 GeneralizedLinearModel.Compact一项式标Model.
线性混合效应模型 LinearMixedModel
线性回归 linearmodel.CompactLinearModel.
线性回归用于高维数据 RegressionLinear
非线性回归 NonLinearModel
回归树 回归植物CompactRegressionTree
金宝app支持向量机回归 回归vm.compactregressionsvm.

分类模型对象

模型 完整或紧凑的分类模型对象
判别分析分类器 分类Discriminant.CompactClassificationDiscriminant
支持向量机或其他分类器的多款模型金宝app Classifiedecoc.CompactClassificeCoc.
用于分类的学习者集合 分类素..CompactClassificationseMbleClassificationBaggedensemble.
高斯内核分类模型使用随机特征扩展 ClassificationKernel.
K.- 最终邻居分类器 ClassificationKnn.
线性分类模型 ClassificationLinear
多类朴素贝叶斯模型 ClassificationniveBayes.CompactClassificationNaiveBayes
金宝app支持向量机器分类器进行单级和二进制分类 分类VM.CompactClassificationsVM.
多包分类的二进制决策树 ClassificationTree.CompactClassificationTree
袋式决策树集合 treebaggerCompactTreeBagger.

如果MDL.是一个紧凑的模型对象,您必须提供输入参数数据

部分竞争不支持具有稀疏矩阵金宝app训练的模型对象。当您培训模型时,使用完整的数字矩阵或表格,用于预测数据,其中行对应各个观察。

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

一个预测变量

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

预测器变量的名称。名称必须与条目匹配mdl.predictornames.

两个预测变量

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

预测变量的名称。数组中的每个元素都是预测器变量的名称。名称必须与中的条目匹配mdl.predictornames.

例子:{x1, x3的}

数据类型:|双倍的|char|细绳|细胞

类标签,指定为分类或字符阵列,逻辑或数字矢量或字符向量的单元格数组。值和数据类型标签必须匹配类名中的类名Classnames.财产MDL.Mdl。ClassNames)。

可以指定一个或多个类标签。

此参数仅在何时有效MDL.是一个分类模型对象。

例子:{'红蓝'}

例子:mdl.classnames([1 3])指定标签作为第一个和第三级MDL.

数据类型:|双倍的|逻辑|char|细胞|分类

预测数据,指定为数字矩阵或表。每一排数据对应于一个观察,并且每列对应于一个变量。

数据必须与培训的预测数据一致MDL.,存储在一个Mdl。Xmdl.variables.

  • 如果你训练有素MDL.然后使用数字矩阵数据一定是一个数字矩阵。组成列的变量数据必须具有相同的数字并订购作为培训的预测变量MDL.

  • 如果你训练有素MDL.使用表格(例如,TBL.), 然后数据必须是一张桌子。所有预测因子变量数据必须具有与名称和类型相同的变量名称和数据类型TBL..但是,列顺序数据不需要对应于列顺序TBL.

  • 部分竞争不支持稀疏矩阵。金宝app

如果MDL.是不是一个紧凑的模型对象,你必须提供数据.如果MDL.是一个完整的模型对象,包含预测数据,并指定此参数,然后指定此参数部分竞争不使用预测器数据MDL.并使用数据只要。

数据类型:|双倍的|桌子

名称值对参数

指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是对应的值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:PartialDependence(MDL,var,数据,'numobservationstosample',100,'deverypallellel',true)通过使用100个采样的观察来计算部分依赖值数据和执行为了-loop并行迭代。

样本的观察次数,指定为逗号分隔的对'numobservationstosample'一个正整数。默认值是两者中的总观测数MDL.数据.如果您指定大于总观察的数量的值,那么部分竞争使用所有观察。

部分竞争使用datasample.功能并使用采样的观察来计算部分依赖。

例子:'numobservationstosample',100

数据类型:|双倍的

计算数字预测器的部分依赖性指定为逗号分隔对“QueryPoints”和数字列向量,数字两列矩阵或两个数字列向量的单元阵列。

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

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

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

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

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

你不能修改“QueryPoints”对于一个分类变量。这部分竞争函数使用所选变量中的所有类别值。

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

例子:'querypoints',{pt,[]}

数据类型:|双倍的|细胞

标志要并行运行,指定为逗号分隔的配对'使用指平行'真正的错误的.如果您指定'使用指平行'作为真正的, 这部分竞争函数执行为了- 通过使用并行迭代议案当预测每个观察结果并平均它们时的响应或分数。

例子:“UseParallel”,真的

数据类型:逻辑

输出参数

全部收缩

部分依赖项值,返回为numx.-经过-数量数值矩阵(用于回归模型)或numlabels.-经过-numx.-经过-数量数字数组(用于分类模型)。numx.数量是第一和第二变量的查询点数var, 分别。numlabels.是类标签数量标签

价值PD(I,J,K)是查询点的部分依赖值X(j)y(k)为了一世th类标签。X(j)j第一个预测变量的查询点,以及y(k)K.第二预测器变量的查询点。

第一个预测器变量的查询点var,作为数字或分类列向量返回。

如果预测器变量是数字,则可以使用“来指定查询点”“QueryPoints”名称值对参数。

数据类型:|双倍的|分类

查询第二预测器变量的点var,作为数字或分类列向量返回。

如果预测器变量是数字,则可以使用“来指定查询点”“QueryPoints”名称值对参数。

数据类型:|双倍的|分类

更多关于

全部收缩

回归模型的部分依赖

部分依赖[1]表示预测变量与训练回归模型中的预测响应之间的关系。部分竞争通过边缘化通过其他变量来计算预测响应对预测变量子集的部分依赖性。

考虑对子集的部分依赖XS.整个预测变量集X= {X1X2,......,Xm}.一个子集XS.包括一个或两个变量:XS.= {XS1}XS.= {XS1XS2}.让XC是互补的XS.X.预测的反应FX)取决于所有变量X

FX) =FXS.XC)。

预测响应的部分依赖性XS.由对预测反应的期望来定义XC

F S. X S. = E. C [ F X S. X C ] = F X S. X C P. C X C D. X C

在哪里P.CXC)是边缘概率XC, 那是, P. C X C P. X S. X C D. X S. .假设每个观察都同样可能,并且之间的依赖XS.XC和相互作用XS.XC在反应中并不强烈,部分竞争通过使用观察到的预测器数据估计部分依赖性,如下所示:

F S. X S. 1 N 一世 = 1 N F X S. X 一世 C (1)

在哪里N是观察人数和X一世=(X一世S.X一世C一世观察。

当你打电话的时候部分竞争功能,您可以指定培训的模型(f(·))和选择变量(XS.)通过使用输入参数MDL.var, 分别。部分竞争计算100个均匀间隔点的部分依赖XS.或者你指定的点“QueryPoints”名称值对参数。您可以指定数字(N)通过使用通过给定的预测仪数据来样的观察'numobservationstosample'名称值对参数。

部分依赖分类模型

在分类模型中,部分竞争以与回归模型的方式相同的方式计算部分依赖性,其中一个例外:而不是使用从模型中的预测响应,而是使用预测的分数用于指定的类标签

加权遍历算法

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

XS.是整个变量集的子集XXC是互补的XS.X.对于每一个人XS.计算部分依赖的值,算法将树从根(开头)节点从根(开始)节点遍历到叶(终端)节点,并找到叶节点的权重。通过在根节点处分配一个权重值来开始遍历开始。如果节点拆分XS.时,该算法根据XS.价值。子节点的权重将与其父节点相同。如果节点拆分XC,该算法遍历两个子节点。每个子节点的权重变成其父节点的值乘以每个子节点对应的观察值的分数。在完成树遍历后,算法利用所分配的权值计算加权平均值。

对于袋装树的集合,估计的部分依赖性是各种树木的加权平均值的平均值。

算法

部分竞争用A.预测预测反应或分数的功能。部分竞争选择合适预测根据函数MDL.和跑步预测有其默认设置。有关每个人的详细信息预测功能,请参见预测以下两个表中的功能。如果MDL.是一种基于树的模型(不包括树木的升级的集合),然后部分竞争使用加权遍历算法而不是预测函数。有关详细信息,请参见加权遍历算法

回归模型对象

模型类型 完整或紧凑的回归模型对象 预测响应的功能
决策树集合的引导集合 CompactTreeBagger. 预测
决策树集合的引导集合 treebagger 预测
回归模型的集合 回归回归释迦缩短CompactRegressionEnsemble 预测
高斯内核回归模型使用随机特征扩展 回归科内尔 预测
高斯过程回归 regressiongp.CompactRegressionGP 预测
广义线性混合效应模型 GeneralizeLmixedModel. 预测
广义线性模型 GeneralizedLinearModel.Compact一项式标Model. 预测
线性混合效应模型 LinearMixedModel 预测
线性回归 linearmodel.CompactLinearModel. 预测
线性回归用于高维数据 RegressionLinear 预测
非线性回归 NonLinearModel 预测
回归树 回归植物CompactRegressionTree 预测
金宝app支持向量机回归 回归vm.compactregressionsvm. 预测

分类模型对象

模型类型 完整或紧凑的分类模型对象 预测标签和分数的功能
判别分析分类器 分类Discriminant.CompactClassificationDiscriminant 预测
支持向量机或其他分类器的多款模型金宝app Classifiedecoc.CompactClassificeCoc. 预测
用于分类的学习者集合 分类素..CompactClassificationseMbleClassificationBaggedensemble. 预测
高斯内核分类模型使用随机特征扩展 ClassificationKernel. 预测
K.- 最终邻居分类器 ClassificationKnn. 预测
线性分类模型 ClassificationLinear 预测
多类朴素贝叶斯模型 ClassificationniveBayes.CompactClassificationNaiveBayes 预测
金宝app支持向量机器分类器进行单级和二进制分类 分类VM.CompactClassificationsVM. 预测
多包分类的二进制决策树 ClassificationTree.CompactClassificationTree 预测
袋式决策树集合 treebaggerCompactTreeBagger. 预测

替代功能

参考

[1]弗里德曼,杰罗姆。H.“贪婪函数近似:梯度升压机。”统计史29,不。5(2001):1189-1232。

[2] Hastie,Trevor,Robert Tibshirani和Jerome Friedman。统计学习的要素。纽约,纽约:春天的纽约,2009年。

扩展能力

在R2020B中介绍