局部可解释的模型不可知解释(LIME)
酸橙通过寻找重要的预测器并拟合一个简单的可解释模型,解释一个查询点的机器学习模型(分类或回归)的预测。
您可以创建酸橙
对象,用于具有指定查询点的机器学习模型(queryPoint
)及指定数目的重要预测因子(numImportantPredictors
).该软件生成一个合成数据集,并适合一个重要预测器的简单可解释模型,该模型有效地解释了对查询点周围的合成数据的预测。简单模型可以是线性模型(默认)或决策树模型。
使用拟合的简单模型在指定的查询点处本地解释本地机器学习模型的预测。使用情节
函数可视化LIME结果。根据局部的解释,你可以决定是否相信机器学习模型。
将新的简单模型用于另一个查询点合身
函数。
创建一个结果
=石灰(黑箱
“CustomSyntheticData”,customsyntheticdata.
)酸橙
对象,使用预生成的自定义合成预测器数据集customsyntheticdata.
.这酸橙
功能计算样本中的预测customsyntheticdata.
.
还可以查找指定数量的重要预测器,并为查询点拟合一个简单的线性模型结果
=石灰(___,'querypoint',queryPoint
“NumImportantPredictors”,numImportantPredictors
)queryPoint
.您可以指定queryPoint
和numImportantPredictors
除了以前的语法中的任何输入参数组合。
黑箱
-需要解释的机器学习模型要解释的机器学习模型,指定为完整或紧凑的回归或分类模型对象或函数句柄。
完整或紧凑模型对象-您可以指定完整或紧凑的回归或分类模型对象,它具有预测
对象功能。该软件使用预测
函数来计算查询点的预测和合成预测器数据集。
如果指定不包含预测器数据的模型对象(例如,紧凑型号),则必须使用预测器数据使用X
要么customsyntheticdata.
.
酸橙
不支持具有稀疏矩阵万博1manbetx训练的模型对象。培训模型时,使用完整的数字矩阵或表格,用于预测数据数据,其中行对应各个观察。
回归模型对象
万博1manbetx支持的模型 | 完整或紧凑的回归模型对象 |
---|---|
回归模型的集合 | RegressionEnsemble 那RegressionBaggedEnsemble 那CompactRegressionEnsemble |
高斯内核回归模型使用随机特征扩展 | RegressionKernel |
高斯过程回归 | regressiongp. 那CompactRegressionGP |
广义加性模型 | 回归 那compactregressiongam. |
高维数据的线性回归 | RegressionLinear |
神经网络回归模型 | RegressionNeuralNetwork 那compactregressionneuralnetwork |
回归树 | 回归植物 那CompactRegressionTree |
万博1manbetx支持向量机回归 | 回归vm. 那compactregressionsvm. |
分类模型对象
万博1manbetx支持的模型 | 完整或紧凑的分类模型对象 |
---|---|
多包分类的二进制决策树 | ClassificationTree. 那CompactClassificationTree |
判别分析分类器 | ClassificationDiscriminant 那CompactClassificationDiscriminant |
用于分类的学习者集合 | 分类素.. 那CompactClassificationseMble 那ClassificationBaggedensemble. |
高斯内核分类模型使用随机特征扩展 | ClassificationKernel |
广义加性模型 | Classificationgam. 那CompactClassificationgam. |
K.- 最邻居模型 | ClassificationKNN |
线性分类模型 | ClassificationLinear |
支持向量机或其他分类器的多款模型万博1manbetx | ClassificationECOC 那CompactClassificationECOC |
天真的贝叶斯模型 | ClassificationNaiveBayes 那CompactClassificaNiveBayes. |
神经网络分类器 | ClassificationNeuralNetwork 那CompactClassificationNeuralNetwork |
万博1manbetx二值分类的支持向量机 | 分类VM. 那CompactClassificationsVM. |
函数句柄——可以指定一个函数句柄,该函数句柄接受预测器数据并返回一个列向量,该列向量包含预测器数据中每个观测的预测。预测是对回归的预测反应或分类的分类标签。您必须提供预测数据使用X
要么customsyntheticdata.
并指定这一点'类型'
名称-值参数。
X
-预测数据预测器数据,指定为数字矩阵或表。每一行的X
对应于一个观察,并且每列对应于一个变量。
X
必须与训练的预测数据一致吗黑箱
,存储在黑箱。X
.指定的值不能包含响应变量。
X
必须具有与预测变量相同的数据类型(例如,trainX
)训练有素黑箱
.构成列的变量X
必须具有相同的数字和订单trainX
.
如果你训练黑箱
然后使用数字矩阵X
必须是数字矩阵。
如果你训练黑箱
然后使用表格X
一定是一张桌子。所有的预测变量X
的变量名和数据类型必须与trainX
.
酸橙
不支持稀疏矩阵。万博1manbetx
如果黑箱
是否必须提供不包含预测数据或函数句柄的模型对象X
要么customsyntheticdata.
.如果黑箱
是一个完整的机器学习模型对象,然后指定这个参数酸橙
不使用预测器数据黑箱
.它只使用指定的预测器数据。
数据类型:单
|双
|桌子
customsyntheticdata.
-预生成的,自定义的合成预测数据集[]
(默认)|数字矩阵|桌子Pregenerated,自定义合成预测仪数据集,指定为数字矩阵或表。
如果您提供预生成的数据集,那么酸橙
使用提供的数据集而不是生成新的合成预测器数据集。
customsyntheticdata.
必须与训练的预测数据一致吗黑箱
,存储在黑箱。X
.指定的值不能包含响应变量。
customsyntheticdata.
必须具有与预测变量相同的数据类型(例如,trainX
)训练有素黑箱
.构成列的变量customsyntheticdata.
必须具有相同的数字和订单trainX
如果你训练黑箱
然后使用数字矩阵customsyntheticdata.
必须是数字矩阵。
如果你训练黑箱
然后使用表格customsyntheticdata.
一定是一张桌子。所有的预测变量customsyntheticdata.
的变量名和数据类型必须与trainX
.
酸橙
不支持稀疏矩阵。万博1manbetx
如果黑箱
是否必须提供不包含预测数据或函数句柄的模型对象X
要么customsyntheticdata.
.如果黑箱
是一个完整的机器学习模型对象,然后指定这个参数酸橙
不使用预测器数据黑箱
;它仅使用指定的预测值数据。
数据类型:单
|双
|桌子
queryPoint
-查询点查询点酸橙
解释以数字值或单行表的行向量指定的预测。queryPoint
必须具有相同的数据类型和列数X
那customsyntheticdata.
或者预测器数据黑箱
.
如果您指定numImportantPredictors
和queryPoint
,那么酸橙
函数适合一个简单的模型时创建酸橙
对象。
queryPoint
不得包含缺失的值。
例子:blackbox.x(1,:)
指定查询点作为完整机器学习模型中预测器数据的第一个观察点黑箱
.
数据类型:单
|双
|桌子
numImportantPredictors
-在简单模型中使用的重要预测因子数量在简单模型中使用的重要预测因子的数量指定为正整数标量值。
如果“SimpleModelType”
是'线性'
,然后软件选择指定数量的重要预测因子,并拟合所选预测因子的线性模型。
如果“SimpleModelType”
是“树”
然后,该软件指定作为重要预测器的数量的判定删除(或分支节点)的最大判定数量,使得拟合决策树在大多数指定的预测器中使用。
如果您指定numImportantPredictors
和queryPoint
,那么酸橙
函数适合一个简单的模型时创建酸橙
对象。
数据类型:单
|双
指定可选的逗号分离对名称,值
论点。的名字
参数名和价值
是相应的价值。的名字
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen
.
酸橙
(黑箱
那“QueryPoint”
问,'numimportantpredictors'
,n,'simplemodeltype','树')
指定查询点作为问:
,重要预测因子的数量用于简单模型为N
,简单模型的类型为决策树模型。酸橙
生成合成预测器数据集的样本,计算样本的预测,并使用最多指定数量的预测器为查询点拟合决策树模型。
'datalocality'
-用于数据生成的合成数据的局部性“全球”
(默认)|'当地的'
数据生成的合成数据的局部性,指定为逗号分隔对'datalocality'
和“全球”
要么'当地的'
.
“全球”
-该软件使用整个预测数据集(X
或预测的数据黑箱
).该软件利用估计的参数生成一个综合预测数据集,并使用该数据集对任何查询点进行简单的模型拟合。
'当地的'
-该软件估计分布参数使用K.-查询点的最近邻居,其中K.是个'numneighbors'
价值。该软件在每次适合指定查询点时都会生成新的合成预测器数据集。
有关详细信息,请参见酸橙.
例子:'Datalocality','本地'
数据类型:char
|字符串
'numneighbors'
-查询点的邻居数查询点的邻居数量,指定为逗号分隔的对组成'numneighbors'
和一个正整数标量值。此参数仅在何时有效'datalocality'
是'当地的'
.
如果指定的值大于预测器数据集中的观测数(X
或预测的数据黑箱
),然后酸橙
使用所有的观察。
例子:'numneighbors',2000
数据类型:单
|双
“NumSyntheticData”
-为合成数据集生成的样本数量要为合成数据集生成的样本数量,指定为由逗号分隔的对组成“NumSyntheticData”
和一个正整数标量值。此参数仅在何时有效'datalocality'
是'当地的'
.
例子:“NumSyntheticData”,2500年
数据类型:单
|双
“KernelWidth”
-内核宽度平方指数(或高斯)核函数的核宽度,指定为逗号分隔对组成“KernelWidth”
和一个数值标量值。
这酸橙
功能计算综合预测器数据集中查询点和样本之间的距离,然后通过使用平方指数内核功能将距离转换为权重。如果你降低了“KernelWidth”
值,然后酸橙
使用更侧重于查询点附近的示例的权重。有关详细信息,请参见酸橙.
例子:“KernelWidth”,0.5
数据类型:单
|双
“SimpleModelType”
-简单模型类型'线性'
(默认)|“树”
简单模型的类型,指定为逗号分隔的对组成“SimpleModelType”
和'线性'
要么“树”
.
'线性'
-软件采用线性模型拟合fitrlinear
回归或者fitclinear
进行分类。
例子:'simplemodeltype','树'
数据类型:char
|字符串
'pationoricalpricictors'
-分类预测列表“所有”
分类预测器列表,指定为逗号分隔的配对组成'pationoricalpricictors'
和这个表中的一个值。
价值 | 描述 |
---|---|
正整数向量 | 向量中的每个条目都是对应于包含分类变量的预测器数据列的索引值。索引值在1到之间 如果 |
逻辑矢量 | 一种 |
字符矩阵 | 矩阵的每一行是预测器变量的名称。名称必须匹配表格中的预测器数据的变量名称。使用额外的空白填充名称,因此字符矩阵的每行具有相同的长度。 |
字符向量的字符串数组或单元格数组 | 数组中的每个元素是预测器变量的名称。名称必须匹配表格中的预测器数据的变量名称。 |
“所有” |
所有预测因素都是分类的。 |
如果您指定黑箱
作为函数手柄,然后酸橙
从预测器数据识别分类预测器X
要么customsyntheticdata.
.如果预测器数据位于表中,酸橙
如果一个变量是逻辑向量、无序分类向量、字符数组、字符串数组或字符向量的单元格数组,则假设它是类别变量。如果预测数据是一个矩阵,酸橙
假设所有预测器都是连续的。
如果您指定黑箱
作为回归或分类模型对象,然后酸橙
属性标识分类预测器分类预测器
模型对象的属性。
酸橙
不支持有序分类预测万博1manbetx器。
例子:'patericalpricictors','全部'
数据类型:单
|双
|逻辑
|char
|字符串
|细胞
'类型'
-机器学习模型的类型'回归
|“分类”
机器学习模型的类型,指定为逗号分隔对,由'类型'
和'回归
要么“分类”
.
指定时必须指定此参数黑箱
作为函数句柄。如果您指定黑箱
作为回归或分类模型对象,然后酸橙
决定了'类型'
值取决于模型类型。
例子:'类型','分类'
数据类型:char
|字符串
'距离'
-距离度量距离度量,指定为逗号分隔对,由'距离'
以及字符向量、字符串标量或函数句柄。
如果预测器数据仅包括连续变量,则酸橙
万博1manbetx支持这些距离指标。
价值 | 描述 |
---|---|
'euclidean' |
欧氏距离。 |
'seuclidean' |
标准化的欧氏距离。观测值之间的每个坐标差除以相应的标准差, |
“mahalanobis” |
使用样本协方差的Mahalanobis距离 |
“cityblock” |
城市街区的距离。 |
'minkowski' |
Minkowski距离。默认指数为2.要指定其他指数,请使用 |
“chebychev” |
Chebychev距离(最大坐标差异)。 |
'余弦' |
一个减去点之间的晶的角度(视为载体)之间的余弦。 |
'相关性' |
一个减去点之间的样本相关性(作为值序列)之间的样本相关性。 |
“枪兵” |
1减去观察值之间的样本斯皮尔曼等级相关性(作为值的序列处理)。 |
@ |
自定义距离功能句柄。距离功能具有表单 函数ZJ D2 = distfun(子)距离计算%...
如果您的数据不稀疏,则通常可以使用内置距离度量而不是函数手柄来更快地计算距离。 |
如果预测数据同时包含连续变量和分类变量,那么酸橙
万博1manbetx支持这些距离指标。
价值 | 描述 |
---|---|
'Goodall3' |
修改古德距离 |
'OFD' |
发生频率的距离 |
定义,请参阅距离指标.
默认值为'euclidean'
如果预测器数据仅包括连续变量,或者'Goodall3'
如果预测数据包括连续变量和分类变量。
例子:“距离”、“海底钻井的
数据类型:char
|字符串
|function_handle.
“浸”
-马氏距离度量的协方差矩阵马氏距离度量的协方差矩阵,指定为逗号分隔对,由“浸”
和一个K.-经过-K.正定矩阵,其中K.是预测器的数量。
此参数仅在此处有效'距离'
是“mahalanobis”
.
默认的“浸”
值是COV(PD,'omitrows')
,在那里PD
是预测数据或合成预测数据。如果不指定“浸”
值,然后该软件在计算预测器数据和合成预测器数据的距离时使用不同的协方差矩阵。
例子:'Cov',Eye(3)
数据类型:单
|双
“P”
-闵可夫斯基距离度量的指数2
(默认)|积极的标量“规模”
-标准化欧几里德距离度量的比例参数值尺度参数值为标准化的欧几里得距离度量,指定为逗号分隔对组成“规模”
和一个长度为非负的数值向量K.,在那里K.是预测器的数量。
此参数仅在此处有效'距离'
是'seuclidean'
.
默认的“规模”
值是性病(PD omitnan)
,在那里PD
是预测数据或合成预测数据。如果不指定“规模”
值,然后软件在计算预测器数据和合成预测器数据的距离时使用不同的比例参数。
例子:'Scale',Smianile(x,0.75) - smartile(x,0.25)
数据类型:单
|双
可以在创建时指定以下属性酸橙
对象。
BlackboxModel
-需要解释的机器学习模型分类预测器
-分类预测指标[]
此属性是只读的。
分类预测索引指定为正整数的向量。分类预测器
包含与包含分类预测器的预测器数据列对应的索引值。如果没有预测器都是分类的,则此属性是空的([]
).
如果您指定黑箱
然后使用函数句柄酸橙
从预测器数据识别分类预测器X
要么customsyntheticdata.
.如果您指定了'pationoricalpricictors'
名称值参数,然后参数设置此属性。
如果您指定黑箱
作为回归或分类模型对象,然后酸橙
属性来确定此属性分类预测器
模型对象的属性。
酸橙
不支持有序分类预测万博1manbetx器。
如果“SimpleModelType”
是'线性'
(默认),然后酸橙
为每个确定的分类预测器创建虚拟变量。酸橙
将指定查询点的类别视为引用组,并将创建比类别数量更少的虚拟变量。有关详细信息,请参见参考组虚拟变量.
数据类型:单
|双
DataLocality
-用于数据生成的合成数据的局部性“全球”
|'当地的'
NumImportantPredictors
-在简单模型中使用的重要预测因子数量此属性是只读的。
简单模型中使用的重要预测因子数量(simpleemodel.
),指定为正整数标量值。
这numImportantPredictors
争论酸橙
或者numImportantPredictors
争论合身
设置此属性。
数据类型:单
|双
numsyntheticdata.
-合成数据集中的样本数此属性是只读的。
合成数据集中的样本数指定为正整数标量值。
如果您指定customsyntheticdata.
然后,自定义综合数据集中的示例数设置此属性。
否则,“NumSyntheticData”
名称 - 价值论证酸橙
或者“NumSyntheticData”
名称 - 价值论证合身
设置此属性。
数据类型:单
|双
QueryPoint.
-查询点此属性是只读的。
查询点酸橙
解释使用简单模型的预测(simpleemodel.
),指定为数字值或单行表的行向量。
这queryPoint
争论酸橙
或者queryPoint
争论合身
设置此属性。
数据类型:单
|双
|桌子
类型
-机器学习模型的类型'回归
|“分类”
此属性是只读的。
机器学习模型的类型(BlackboxModel
),指定为'回归
要么“分类”
.
X
-预测数据此属性是只读的。
预测器数据,指定为数字矩阵或表。
每一行的X
对应于一个观察,并且每列对应于一个变量。
如果您指定了X
参数,则参数设置此属性。
如果您指定了customsyntheticdata.
参数,然后这个属性是空的。
如果您指定黑箱
作为一个完整的机器学习模型对象而不指定X
要么customsyntheticdata.
,然后该属性值是用于训练的预测数据黑箱
.
酸橙
不使用包含缺失值的行,且不将行存储在X
.
数据类型:单
|双
|桌子
该软件计算以下属性。
BlackboxFitted
-通过机器学习模型计算查询点的预测拟合
-用机器学习模型计算的合成预测数据的预测ImportantPredictors
-重要的预测指标simpleemodel.
-简单的模型RegressionLinear
模型对象|回归植物
模型对象|ClassificationLinear
模型对象|ClassificationTree.
模型对象此属性是只读的。
简单的模型,指定为aRegressionLinear
那回归植物
那ClassificationLinear
, 要么ClassificationTree.
模型对象。酸橙
根据机器学习模型的类型确定简单模型对象的类型(类型
)和简单模型的类型(“SimpleModelType”
).
SimpleModelFitted
-简单模型计算的查询点预测此属性是只读的。
简单模型计算的查询点的预测(simpleemodel.
),指定为标量。
如果simpleemodel.
是ClassificationLinear
,那么SimpleModelFitted
取值为1或-1。
这SimpleModelFitted
如果简单模型的预测是相同的,则值为1BlackboxFitted
(从机器学习模型预测)。
这SimpleModelFitted
如果简单模型的预测不同,则值为-1BlackboxFitted
.如果是BlackboxFitted
值是一种
,那么情节
功能显示SimpleModelFitted
值作为不是一个
.
数据类型:单
|双
|分类
|逻辑
|char
|字符串
|细胞
syntheticata.
-合成预测数据此属性是只读的。
合成预测器数据,指定为数字矩阵或表。
如果您指定了customsyntheticdata.
输入参数,然后参数设置此属性。
否则,酸橙
从预测器数据估计分布参数X
并生成一个综合预测数据集。
数据类型:单
|双
|桌子
训练分类模型并创建酸橙
使用决策树简单模型的对象。当你创建一个酸橙
对象,指定查询点和重要预测器的数量,以便软件生成合成数据集的样本,并为具有重要预测器的查询点拟合一个简单的模型。然后,通过使用对象函数在简单模型中显示估计的预测值重要性情节
.
加载CreditRating_Historical
数据集。该数据集包含客户id及其财务比率、行业标签和信用评级。
tbl =可读取的(“CreditRating_Historical.dat”);
显示表的前三行。
头(TBL,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}
通过删除客户id和评级列来创建一个预测器变量表TBL.
.
tblx = removevars(tbl,[“ID”那“评级”]);
使用的方法训练信用评级的黑箱模型fitcecoc
函数。
黑箱= fitcecoc (tblX,资源描述。评级,'pationoricalpricictors'那'行业');
创建一个酸橙
对象,该对象使用决策树简单模型解释最后一次观测的预测。指定'numimportantpredictors'
至于最多6个重要预测因子。如果您指定了“QueryPoint”
和'numimportantpredictors'
的值酸橙
对象,然后软件生成一个合成数据集的样本,并将一个简单的可解释模型适合于该合成数据集。
querypoint = tblx(结束,:)
queryPoint =1×6表WC_TA RE_TA EBIT_TA MVE_BVTD S_TA行业_____ _____ _______ ________ ____ ________ 0.239 0.463 0.065 2.924 0.34 2
RNG('默认')重复性的%结果=石灰(黑盒,“QueryPoint”,querypoint,'numimportantpredictors',6,...“SimpleModelType”那“树”)
结果=具有属性的石灰:BlackBoxModel:[1x1 ClassificationCoc] Datalocality:'Global'类分类预示因素:6类型:'分类'x:[3932x6表]查询点:[1x6表] NumimportantPredictors:6 NumSyntheticData:5000 InclueCata:[5000x6表]安装:{5000x1 Cell} SimpleModel:[1x1 ClassificationTree]重要的预计:[2x1双] BlackBoxFited:{'AA'} SimpleModelfited:{'AA'}
绘图酸橙
目的结果
通过使用对象函数情节
.要在任何预测器名称中显示现有的下划线,请更改TickLabelInterpreter
坐标轴的值“没有”
.
f =情节(结果);f.currentaxes.TicklabelInterpreter =.“没有”;
该曲线显示对应于的查询点的两个预测BlackboxFitted财产和SimpleModelFitted的属性结果
.
水平条形图显示排序的预测器重要值。酸橙
找到财务比率变量EBIT_TA.
和wc_ta.
作为查询点的重要预测因子。
您可以通过使用数据提示或酒吧属性.例如,您可以找到酒吧
对象,使用findobj.
使用函数并通过使用该标签将标签添加到条形的末端文本
函数。
b = findobj (f,'类型'那“酒吧”);文本(b.YEndPoints + 0.001, b.XEndPoints字符串(b.YData))
或者,您可以使用预测器变量名在表中显示系数值。
小鬼= b.YData;flipud (array2table(小鬼”,...“RowNames”f.CurrentAxes.YTickLabel,“VariableNames”,{'预测重要性'}))
ans =2×1表预测性重要____________________ MVE_BVTD 0.088412 RE_TA 0.0018061
训练一个回归模型并创建一个酸橙
使用线性简单模型的对象。当你创建一个酸橙
对象,如果不指定查询点和重要预测器的数量,则软件生成合成数据集的样本,但不适合简单模型。使用对象函数合身
适合查询点的简单模型。然后用目标函数显示拟合的线性简单模型的系数情节
.
加载carbig
数据集,其中包含在20世纪70年代和20世纪80年代初进行的汽车测量。
负载carbig
创建包含预测器变量的表加速度
那气缸
等等,以及响应变量英里/加仑
.
台=表(加速度、汽缸、排量、马力、Model_Year重量,MPG);
删除训练集中缺失的值可以帮助减少内存消耗并加速训练Fitrkernel.
函数。删除TBL.
.
tbl = rmmissing(tbl);
通过删除响应变量来创建预测变量表TBL.
.
tblx = removevars(tbl,'mpg');
训练一个黑匣子模型英里/加仑
通过使用Fitrkernel.
函数。
RNG('默认')重复性的%mdl = fitrkernel(tblx,tbl.mpg,'pationoricalpricictors',[2 5]);
创建一个酸橙
对象。指定预测数据集,因为MDL.
不包含预测数据。
结果=石灰(MDL,TBLX)
结果=具有属性的石灰:BlackBoxModel:[1x1 regressionkernel] Datalocality:'Global'类别预防icon:[2 5]类型:'回归'x:[392x6表] QueryPoint:[] NumImportAntPredictors:[] NumSyntheticData:5000 SyntheticData:[5000x6表]安装了:[5000x1双] SimpleModel:[]重要的预分标识:[] BlackBoxFitted:[] SimpleModelfited:[]
结果
包含生成的合成数据集。这simpleemodel.
属性为空([]
).
适用于第一次观察的线性简单模型tblx.
.指定要查找的重要预测器的数量为3。
: queryPoint = tblX (1)
queryPoint =1×6表加速气缸位移马力Model_Year重量 ____________ _________ ____________ __________ __________ ______ 12 8 307 130 70 3504
结果=适合(结果,queryPoint, 3);
绘图酸橙
目的结果
通过使用对象函数情节
.要在任何预测器名称中显示现有的下划线,请更改TickLabelInterpreter
坐标轴的值“没有”
.
f =情节(结果);f.currentaxes.TicklabelInterpreter =.“没有”;
该曲线显示对应于的查询点的两个预测BlackboxFitted财产和SimpleModelFitted的属性结果
.
水平条图显示了简单模型的系数值,由其绝对值排序。石灰发现马力
那model_year.
, 和气缸
作为查询点的重要预测因子。
model_year.
和气缸
是具有多个类别的分类预测器。对于线性简单模型,该软件创建比每个分类预测器的类别更少的虚拟变量。条形图仅显示最重要的虚拟变量。您可以使用该检查其他虚拟变量的系数simpleemodel.
的属性结果
.显示排序系数值,包括所有分类虚拟变量。
[~,我]=排序(abs (results.SimpleModel.Beta),“下”);表(结果.simplemodel.eppandedpredictornames(i)',结果.simplemodel.beta(i),...“VariableNames”,{'extedied predictor名称'那“系数”})
ans =17×2表Exeded预测值名称系数____________________________________________________3.4485e-05 {'model_year(74 vs.70)'} -6.1279e-07 {'model_year(80 vs.70)'} -4.015e-07 {'model_year(81 vs. 70)'} 3.4176e-07 {'model_year(82 vs. 70)'} -2.2483e-07 {'圆柱(6 vs. 8)'} -1.9024e-07 {'model_year(76vs. 70)'} 1.8136E-07 {'圆柱(5 vs. 8)'} 1.7461E-07 {'model_year(71 vs.70)'} 1.558E-07 {'model_year(75 vs. 70)'}1。5456e-07 {'Model_Year (77 vs. 70)'} 1.521e-07 {'Model_Year (78 vs. 70)'} 1.4272e-07 {'Model_Year (72 vs. 70)'} 6.7001e-08 {'Model_Year (73 vs. 70)'} 4.7214e-08 {'Cylinders (4 vs. 8)' } 4.5118e-08 {'Model_Year (79 vs. 70)'} -2.2598e-08 ⋮
训练一个回归模型并创建一个酸橙
对象使用函数句柄到预测
模型的功能。使用对象函数合身
使简单模型适合于指定的查询点。然后用目标函数显示拟合的线性简单模型的系数情节
.
加载carbig
数据集,其中包含在20世纪70年代和20世纪80年代初进行的汽车测量。
负载carbig
创建包含预测器变量的表加速度
那气缸
,等等。
TBL =桌子(加速,气瓶,位移,马力,型号,重量);
训练一个黑匣子模型英里/加仑
通过使用TreeBagger
函数。
RNG('默认')重复性的%mdl = treebagger(100,tbl,mpg,'方法'那'回归'那'pationoricalpricictors',[2 5]);
酸橙
不支持万博1manbetxTreeBagger
直接对象,因此您无法指定第一个输入参数(Blackbox模型)酸橙
作为一个TreeBagger
对象。的函数句柄预测
函数。您还可以指定选项预测
使用函数的名称值参数函数。
创建功能句柄预测
功能的功能TreeBagger
目的MDL.
.指定要使用的树指数数组1:50
.
mypredict = @(tbl)预测(mdl,tbl,“树”,1:50);
创建一个酸橙
使用功能句柄的对象MyPredict.
.当您指定黑箱模型作为函数句柄时,您必须提供预测器数据并指定'类型'
名称-值参数。TBL.
包括分类预测器(油缸
和model_year.
)与之双
数据类型。默认情况下,酸橙
不治疗变量双
作为分类预测器的数据类型。指定第二个(油缸
)及第五(model_year.
)变量作为分类预测因子。
结果=石灰(MyPredict,TBL,'类型'那'回归'那'pationoricalpricictors',[2 5]);
适用于第一次观察的线性简单模型TBL.
.要在任何预测器名称中显示现有的下划线,请更改TickLabelInterpreter
坐标轴的值“没有”
.
结果= FIT(结果,TBL(1,:),4);f =情节(结果);f.currentaxes.TicklabelInterpreter =.“没有”;
酸橙
发现马力
那位移
那气缸
, 和model_year.
作为重要的预测因子。
距离度量是定义两个观测值之间距离的函数。酸橙
万博1manbetx支持连续变量和连续和分类变量的混合的各种距离度量。
连续变量的距离度量
给定一个MX.-经过-N数据矩阵X,被视为MX.(1 -N)行向量X1那X2、……XMX.和一个我的-经过-N数据矩阵y,被视为我的(1 -N)行向量y1那y2、……y我的,表示向量之间的不同距离XS.和yT.定义如下:
欧几里德距离
欧几里德距离是Minkowski距离的特殊情况,在哪里P.= 2.
标准化的欧几里德距离
在哪里V.是个N-经过-N对角线矩阵谁jth对角形元素是(S.(j))2,在那里S.是每个维度的比例因子向量。
Mahalanobis距离
在哪里C是协方差矩阵。
城市街区距离
城市街区距离是Minkowski距离的特殊情况,在哪里P.= 1.
Minkowski距离
的特殊情况P.= 1,闵可夫斯基距离表示城市街区距离。的特殊情况P.= 2,闵可夫斯基距离给出了欧几里得距离。的特殊情况P.=∞,Minkowski距离给出了Chebychev距离。
Chebychev距离
Chebychev距离是Minkowski距离的特殊情况,在哪里P.=∞.
余弦距离
相关距离
在哪里
和
斯普曼距离
在哪里
连续和分类变量混合的距离度量
修改古德距离
这个距离是Goodall距离的一种变体,如果匹配的值不频繁,不管其他值的频率如何,都会分配一个小的距离。对于不匹配,预测器的距离贡献是1/(变量的数量)。
发生频率的距离
对于匹配,发生频率距离分配零距离。对于不匹配,发生频率距离在更频繁的值和更频繁值的较低距离上分配更高距离。
解释使用LIME的机器学习模型的预测[1],该软件生成合成数据集,并将简单的可解释模型适合通过使用的合成数据集酸橙
和合身
,如步骤1-5所述。
如果您指定了queryPoint
和numImportantPredictors
价值酸橙
,那么酸橙
函数执行所有步骤。
如果您未指定queryPoint
和numImportantPredictors
并指定'datalocality'
作为“全球”
(默认),那么酸橙
函数生成合成数据集(步骤1-2),以及合身
功能适合一个简单的模型(步骤3-5)。
如果您未指定queryPoint
和numImportantPredictors
并指定'datalocality'
作为'当地的'
,那么合身
函数执行所有步骤。
这酸橙
和合身
函数执行以下步骤:
生成一个综合预测数据集XS.对连续变量使用多元正态分布,对每个类别变量使用多项分布。属性可以指定要生成的样本数量“NumSyntheticData”
名称-值参数。
如果'datalocality'
是“全球”
(默认),软件估计来自整个预测器数据集的分发参数(X
或预测数据黑箱
).
如果'datalocality'
是'当地的'
,则该软件使用K.查询点的最邻居,在哪里K.是个'numneighbors'
价值。您可以指定距离度量标准,以通过使用距离指标来查找最近的邻居'距离'
名称-值参数。
当估计分布参数时,该软件忽略预测器数据集中的缺失值。
或者,您可以通过使用customsyntheticdata.
输入论点酸橙
.
计算预测yS.用于合成数据集XS..预测是对分类的回归或分类标签的预测响应。该软件使用预测
功能的功能黑箱
模型计算预测。如果您指定黑箱
作为函数手柄,软件通过使用函数句柄来计算预测。
计算距离D.在查询点和合成预测数据集中的样本之间,使用指定的距离度量'距离'
.
计算权重值W.问:关于查询点的合成预测器数据中的样本问:使用平方指数(或高斯)核函数
XS.是合成预测器数据集的示例XS..
D.(XS.那问:)是样本之间的距离XS.以及查询点问:.
P.预测器的数量在吗XS..
σ.是内核宽度,您可以使用“KernelWidth”
名称-值参数。默认的“KernelWidth”
价值为0.75。
查询点的权值为1,然后随着距离值的增加,权值收敛为0。这“KernelWidth”
值控制权重值会聚到零的速度。较低的“KernelWidth”
值,重量值更快地收敛到零。因此,该算法对查询点附近的样本提供更多权重。因为该算法使用这样的权重值,所选择的重要预测器和拟合简单模型有效地解释了在查询点周围本地对合成数据的预测。
适合简单的模型。
如果“SimpleModelType”
是'线性'
(默认),然后软件选择重要的预测器并适合所选重要预测器的线性模型。
选择N重要的预测因子(
),采用群正交匹配追踪(OMP)算法[2][3],在那里N是个numImportantPredictors
价值。该算法使用合成预测数据集(XS.)、预测(yS.)和重量值(W.问:).
适合所选重要预测因子的线性模型(
)预测(yS.),使用权重值(W.问:).软件使用fitrlinear
回归或者fitclinear
进行分类。对于多种多组模型,该软件使用一个与所有方案来构造二进制分类问题。正类是从中查询点的预测类黑箱
模型,负类指的是其他类。
如果“SimpleModelType”
是“树”
,然后软件使用决策树模型fitrtree
回归或者fitctree
进行分类。该软件指定作为重要预测器的数量的最大判定删除(或分支节点)的最大数量,使得拟合的决策树在大多数指定的预测器中使用。
[1] Ribeiro,Marco Tulio,S. Singh和C.宾馆。“”我为什么要相信你?':解释任何分类器的预测。“在22届ACM锡贡德克德克德克德国际知识发现和数据挖掘会议上1135-44。旧金山,加利福尼亚州:ACM,2016。
[2]świrszcz,grzegorz,naoki abe和auréliec. lozano。“分组正交匹配追求变量选择和预测。”神经信息处理系统研究进展(2009): 1150 - 58。
[3] Lozano,AurélieC.,GrzegorzśWirszcz,以及Naoki Abe。“小组正交匹配追求逻辑回归。”第十四届国际人工智能和统计会议论文集(2011):452-60。
Sie Haben EineAbgeänderte版模具北美山脉。MöchtenSieDieses Beispiel Mit IhrenÄnderungenÖffnen?
您有一个连接到MATLAB-Befehl entspricht:
Führensieden befehl Durch Eingabe在Das Matlab-Befehlsfenster Aus。WebBrowserUnterstützenKeineMatlab-Befehle。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。