局部可解释的模型不可知解释(LIME)
酸橙通过寻找重要的预测器并拟合一个简单的可解释模型,解释一个查询点的机器学习模型(分类或回归)的预测。
您可以创建酸橙
具有指定查询点的机器学习模型的对象(queryPoint
)和指定数量的重要预测(numImportantPredictors
).该软件生成一个合成数据集,并适合一个重要预测器的简单可解释模型,该模型有效地解释了对查询点周围的合成数据的预测。简单模型可以是线性模型(默认)或决策树模型。
使用拟合的简单模型在指定的查询点处本地解释本地机器学习模型的预测。使用情节
功能可视化石灰结果。根据本地解释,您可以决定是否相信机器学习模型。
将新的简单模型用于另一个查询点合身
功能。
创建结果
=石灰(黑盒子
'CustomSyntheticData',customsyntheticdata.
)酸橙
对象,使用预生成的自定义合成预测器数据集customsyntheticdata.
.这酸橙
功能计算样本中的预测customsyntheticdata.
.
还查找指定的重要预测器数量,并适合查询点的线性简单模型结果
=石灰(___,'querypoint',queryPoint
“NumImportantPredictors”,numImportantPredictors
)queryPoint
.您可以指定queryPoint
和numImportantPredictors
除了以前的语法中的任何输入参数组合。
使用一个或多个名称-值对参数指定其他选项。例如,结果
=石灰(___那名称,价值
)'simplemodeltype','树'
指定作为决策树模型的简单模型的类型。
黑盒子
-需要解释的机器学习模型要解释的机器学习模型,指定为函数句柄或完整或紧凑的回归或分类模型对象。
函数句柄——可以指定一个函数句柄,该函数句柄接受预测器数据,并为预测器数据中的每个观测返回一个预测。您必须提供预测数据使用X
或者customsyntheticdata.
并指定这一点“类型”
名称值对参数。
完整或紧凑模型对象-您可以指定完整或紧凑的回归或分类模型对象,它具有预测
对象功能。该软件使用预测
函数来计算查询点的预测和合成预测器数据集。
回归模型对象
万博1manbetx支持的模型 | 完整或紧凑的回归模型对象 |
---|---|
回归模型集合 | RegressionEnsemble 那回归释迦缩短 那compactregressionensemble. |
高斯内核回归模型使用随机特征扩展 | 回归科内尔 |
高斯过程回归 | regressiongp. 那CompactRegressionGP |
线性回归用于高维数据 | RegressionLinear |
回归树 | RegressionTree 那Compactregressiontree. |
万博1manbetx支持向量机回归 | 回归vm. 那CompactRegressionSVM |
分类模型对象
万博1manbetx支持的模型 | 完整或紧凑的分类模型对象 |
---|---|
判别分析分类 | ClassificationDiscriminant 那CompactClassificationDiscriminant. |
支持向量机或其他分类器的多款模型万博1manbetx | ClassificationECOC 那CompactClassificationECOC |
乐团为学习者分类 | ClassificationEnsemble 那CompactClassificationEnsemble 那ClassificationBaggedEnsemble |
高斯核分类模型使用随机特征展开 | ClassificationKernel |
K.- 最终邻居分类器 | ClassificationKNN |
线性分类模型 | 分类线性 |
Multiclass Naive Bayes模型 | ClassificationNaiveBayes 那CompactClassificaNiveBayes. |
万博1manbetx支持向量机器分类器进行单级和二进制分类 | 分类VM. 那CompactClassificationsVM. |
多包分类的二进制决策树 | ClassificationTree. 那CompactClassificationTree. |
如果指定了一个紧凑的模型对象,它不包含预测数据,则必须使用提供的预测数据X
或者customsyntheticdata.
.
酸橙
不支持使用稀疏矩阵万博1manbetx训练的模型对象。当您训练一个模型时,使用一个完整的数字矩阵或表格来表示预测器数据,其中行对应于单个的观察结果。
X
-预测数据预测数据,指定为数字矩阵或表。每一排X
对应于一个观察,并且每列对应于一个变量。
X
必须与培训的预测数据一致黑盒子
,存储在一个blackbox.X
或者黑箱。变量
.指定的值不能包含响应变量。
X
必须具有与预测变量相同的数据类型(例如,trainX
)训练有素黑盒子
.构成列的变量X
必须具有相同的数字和订单trainX
.
如果你训练黑盒子
然后使用数字矩阵X
必须是一个数值矩阵。
如果你训练黑盒子
那就用表格吧X
必须是一张桌子。所有预测因子变量X
的变量名和数据类型必须与trainX
.
酸橙
不支持稀疏矩阵。万博1manbetx
如果黑盒子
是一个紧凑的机器学习模型对象或功能手柄,您必须提供X
或者customsyntheticdata.
.如果黑盒子
是一个完整的机器学习模型对象,并指定此参数,然后指定此参数酸橙
不使用预测器数据黑盒子
.它只使用指定的预测器数据。
数据类型:单
|双倍的
customsyntheticdata.
-Pregenerated,自定义合成预测器数据集[]
(默认)|数字矩阵|表格Pregenerated,自定义合成预测仪数据集,指定为数字矩阵或表。
如果您提供预生成的数据集,那么酸橙
使用提供的数据集而不是生成新的合成预测器数据集。
customsyntheticdata.
必须与培训的预测数据一致黑盒子
,存储在一个blackbox.X
或者黑箱。变量
.指定的值不能包含响应变量。
customsyntheticdata.
必须具有与预测变量相同的数据类型(例如,trainX
)训练有素黑盒子
.构成列的变量customsyntheticdata.
必须具有相同的数字和订单trainX
如果你训练黑盒子
然后使用数字矩阵customsyntheticdata.
必须是一个数值矩阵。
如果你训练黑盒子
那就用表格吧customsyntheticdata.
必须是一张桌子。所有预测因子变量customsyntheticdata.
的变量名和数据类型必须与trainX
.
酸橙
不支持稀疏矩阵。万博1manbetx
如果黑盒子
是一个紧凑的机器学习模型对象或功能手柄,您必须提供X
或者customsyntheticdata.
.如果黑盒子
是一个完整的机器学习模型对象,并指定此参数,然后指定此参数酸橙
不使用预测器数据黑盒子
;它只使用指定的预测器数据。
数据类型:单
|双倍的
|表格
queryPoint
-查询点查询点酸橙
解释了预测,指定为数字值的行向量或单行表中。queryPoint
必须具有相同的数据类型和列数X
那customsyntheticdata.
或者预测器数据黑盒子
.
如果您指定numImportantPredictors
和queryPoint
,那么酸橙
函数适合一个简单的模型时创建酸橙
目的。
例子:blackbox.x(1,:)
指定查询点作为完整机器学习模型中的预测器数据的第一次观察黑盒子
.
数据类型:单
|双倍的
|表格
numImportantPredictors
-在简单模型中使用的重要预测因子数量在简单模型中使用的重要预测因子的数量指定为正整数标量值。
如果'simplemodeltype'
是'线性'
然后,软件选择指定的重要预测器数量并适合所选预测器的线性模型。
如果'simplemodeltype'
是'树'
然后,该软件指定作为重要预测器的数量的判定删除(或分支节点)的最大判定数量,使得拟合决策树在大多数指定的预测器中使用。
如果您指定numImportantPredictors
和queryPoint
,那么酸橙
函数适合一个简单的模型时创建酸橙
目的。
数据类型:单
|双倍的
指定可选的逗号分离对名称,价值
论点。的名字
参数名和价值
是相应的价值。的名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen
.
酸橙
(黑盒子
那'QueryPoint'
,Q,'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'
和这个表中的一个值。
价值 | 描述 |
---|---|
正整数的向量 | 向量中的每个条目是与包含分类变量的预测数据列对应的索引值。 |
逻辑矢量 | 一种真的 条目意味着预测器数据的相应列是分类变量。 |
字符矩阵 | 矩阵的每一行是预测器变量的名称。名称必须匹配表格中的预测器数据的变量名称。使用额外的空白填充名称,因此字符矩阵的每行具有相同的长度。 |
字符串阵列或字符向量的单元数组 | 数组中的每个元素是预测器变量的名称。名称必须匹配表格中的预测器数据的变量名称。 |
“所有” |
所有预测因素都是分类的。 |
如果您指定黑盒子
作为函数手柄,然后酸橙
从预测数据中确定分类预测X
或者customsyntheticdata.
.如果预测器数据位于表中,酸橙
假定一个变量是分类,如果它是一个逻辑向量,无序的分类矢量,字符数组,字符串数组,或字符向量的单元阵列。如果预测数据是矩阵,酸橙
假设所有预测因子都是连续的。要将任何其他预测因子识别为分类预测器,请通过使用来指定它们'pationoricalpricictors'
名称值对参数。
如果您指定黑盒子
作为回归或分类模型对象,然后酸橙
属性标识分类预测器分类预测器
模型对象的属性。
酸橙
不支持有序分类预测万博1manbetx。
例子:'patericalpricictors','全部'
数据类型:单
|双倍的
|逻辑
|char
|细绳
|细胞
“类型”
-机器学习模型的类型'回归
|'分类'
机器学习模型的类型,指定为逗号分隔对组成“类型”
和'回归
或者'分类'
.
指定时必须指定此参数黑盒子
作为函数句柄。如果您指定黑盒子
作为回归或分类模型对象,然后酸橙
确定“类型”
值取决于模型类型。
例子:“类型”、“分类”
数据类型:char
|细绳
'距离'
-距离度量距离度量,指定为逗号分隔对组成'距离'
以及字符向量、字符串标量或函数句柄。
如果预测器数据仅包括连续变量,则酸橙
万博1manbetx支持这些距离指标。
价值 | 描述 |
---|---|
“欧几里得” |
欧几里德距离。 |
'seuclidean' |
标准化的欧氏距离。观测值之间的每个坐标差是由标准偏差的对应元件除以缩放, |
“马氏 |
使用样本协方差的Mahalanobis距离 |
'城市街区' |
城市街区的距离。 |
闵可夫斯基的 |
Minkowski距离。默认指数为2.要指定其他指数,请使用 |
“chebychev” |
Chebychev距离(最大坐标差异)。 |
'余弦' |
一个减去点之间的晶的角度(视为载体)之间的余弦。 |
'相关性' |
一个减去点之间的样本相关性(作为值序列)之间的样本相关性。 |
“斯皮尔曼 |
一个减去样本Spearman的观察之间的秩相关性(视为值序列)。 |
@ |
自定义距离功能手柄。距离函数有这样的形式 功能d2 = distfun(zi,zj)距离计算%......
如果您的数据不稀疏,则通常可以使用内置距离度量而不是函数手柄来更快地计算距离。 |
如果预测数据包括连续变量和分类变量,然后酸橙
万博1manbetx支持这些距离指标。
价值 | 描述 |
---|---|
'Goodall3' |
改性古德尔距离 |
海底钻井的 |
发生频率距离 |
定义,请参阅距离指标.
默认值是“欧几里得”
如果预测器数据仅包括连续变量,或者'Goodall3'
如果预测器数据包括连续和分类变量。
例子:'距离','OFD'
数据类型:char
|细绳
|function_handle.
“冠状病毒”
-为马氏距离度量的协方差矩阵用于Mahalanobis距离度量的协方差矩阵,指定为逗号分隔对组成“冠状病毒”
A.K.-经过-K.正定矩阵,其中K.是预测器的数量。
此参数仅在此处有效'距离'
是“马氏
.
默认值“冠状病毒”
价值是COV(PD,'omitrows')
, 在哪里PD
是预测数据或合成预测数据。如果您没有指定“冠状病毒”
值,然后该软件在计算预测器数据和合成预测器数据的距离时使用不同的协方差矩阵。
例子:'Cov',Eye(3)
数据类型:单
|双倍的
'P'
-用于Minkowski距离度量的指数2
(默认)|积极的标量'规模'
-标准化欧几里德距离度量的比例参数值对于标准化欧几里德距离度量,指定为逗号分隔的一对组成的比例参数值'规模'
和一个长度的非负数字矢量K., 在哪里K.是预测器的数量。
此参数仅在此处有效'距离'
是'seuclidean'
.
默认值'规模'
价值是STD(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.
,然后该属性值是用于训练的预测数据黑盒子
.
数据类型:单
|双倍的
|表格
该软件计算以下属性。
BlackboxFitted
-机器学习模型计算的查询点预测拟合
-机器学习模型计算的合成预测器数据的预测ImportantPredictors
-重要的预测指标此属性是只读的。
重要的预测索引指定,指定为正整数的向量。ImportantPredictors
包含对应于在简单的模型中使用的预测值的列中的指标值(simpleemodel.
).
数据类型:单
|双倍的
simpleemodel.
-简单的模型RegressionLinear
模型对象|RegressionTree
模型对象|分类线性
模型对象|ClassificationTree.
模型对象此属性是只读的。
简单的模型,指定为aRegressionLinear
那RegressionTree
那分类线性
, 或者ClassificationTree.
模型对象。酸橙
根据机器学习模型的类型确定简单模型对象的类型(类型
)和简单模型的类型('simplemodeltype'
).
SimpleModelFitted
-简单模型计算的查询点预测此属性是只读的。
简单模型计算的查询点的预测(simpleemodel.
),指定为标量。
如果simpleemodel.
是分类线性
,那么SimpleModelFitted
值为1或-1。
这SimpleModelFitted
如果简单模型的预测结果与BlackboxFitted
(从机器学习模型预测)。
这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”那“评分”]);
通过使用培训Blackbox模型的信用评级模型Fitcecoc.
功能。
黑箱= fitcecoc (tblX,资源描述。评级,'pationoricalpricictors'那'行业');
创建一个酸橙
对象,该对象使用决策树简单模型解释最后一次观测的预测。指定'numimportantpredictors'
至于最多6个重要预测因子。如果您指定了'QueryPoint'
和'numimportantpredictors'
的值酸橙
对象,然后软件生成一个合成数据集的样本,并将一个简单的可解释模型适合于该合成数据集。由于随机性,您的结果可能因这些结果而异酸橙
.你可以通过使用来设置随机种子RNG.
为重现。
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
结果=石灰(黑盒,'QueryPoint',querypoint,'numimportantpredictors',6,......'pationoricalpricictors'那'行业'那'simplemodeltype'那'树')
结果=具有属性的石灰:BlackBoxModel:[1×1分类] Datalocality:'Global'类分类预备主因:6类型:'分类'X:[3932×6表] QueryPoint:[1×6表] NumimportPredictors:6 NumSyntheticData:5000合成数据[5000×6表]安装:{5000×1个单元格} SimpleModel:[1×1分类触发]重要的预计:[2 4] Blackboxfited:{'AA'} SimpleModelfited:{'AA'}
绘图酸橙
目的结果
通过使用对象函数情节
.要在任何预测器名称中显示现有的下划线,请更改ticklabelinterpreter.
轴的值'没有任何'
.
f =情节(结果);f.CurrentAxes.TickLabelInterpreter ='没有任何';
该曲线显示对应于的查询点的两个预测BlackboxFitted财产和零件SimpleModelFitted的属性结果
.
水平条形图显示排序的预测器重要值。酸橙
找到财务比率变量EBIT_TA
和wc_ta.
作为查询点的重要预测因子。
您可以通过使用数据提示或酒吧属性.例如,您可以找到酒吧
通过使用的对象findobj.
使用函数并通过使用该标签将标签添加到条形的末端文本
功能。
B = findobj(F,“类型”那'酒吧');文本(b.yendpointss + 0.001,b.xendpoints,string(b.ydata))
或者,您可以使用预测器变量名在表中显示系数值。
小鬼= b.YData;flipud (array2table(小鬼”,......“RowNames”f.CurrentAxes.YTickLabel,'VariableNames',{'预测重要性'}))
ANS =2×1表预测性重要____________________ MVE_BVTD 0.088695 RE_TA 0.0018228
训练一个回归模型并创建一个酸橙
使用线性简单模型的对象。当你创造一个酸橙
对象,如果不指定查询点和重要的预测数,则该软件生成的合成数据集的样本,但是不符合一个简单的模型。使用目标函数合身
适合查询点的简单模型。然后通过使用对象功能显示拟合线性简单模型的系数情节
.
加载carbig
数据集,其中包含在上世纪70年代和80年代初制造的汽车的测量..
负载carbig
创建一个包含预测变量的表加速
那气瓶
等等,以及响应变量MPG
.
TBL =表(加速度,缸,排气量,马力,Model_Year,体重,MPG);
在训练组中删除丢失的值可以帮助减少内存消耗和加快培训Fitrkernel.
功能。删除缺失的值TBL.
.
tbl = rmmissing(tbl);
通过删除响应变量来创建预测变量表TBL.
.
tblX = removevars(资源描述,'mpg');
训练黑盒模型MPG
通过使用Fitrkernel.
功能,并创建一个酸橙
目的。指定预测数据集,因为MDL.
不包含预测数据。由于随机性,您的结果可能因这些结果而异Fitrkernel.
和酸橙
.你可以通过使用来设置随机种子RNG.
为重现。
mdl = fitrkernel (tblX,资源描述。英里/加仑,'pationoricalpricictors'[2 - 5]);结果=石灰(mdl tblX,'pationoricalpricictors',[2 5])
结果=具有属性的石灰:BlackBoxModel:[1×1 regressionkernel] Datalocality:'Global'类分类预备主因:[2 5]类型:'回归'x:[392×6表] QueryPoint:[] NumimportantPredictors:[] NumSyntheticData:5000 SyntheticData:5000:[5000×6表]安装:[5000×1双] 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.
, 和气瓶
作为查询点的重要预测因子。
训练分类模型并创建酸橙
使用决策树简单模型的对象。适合多个查询点的多种型号。
加载Creditrating_Historical.
数据集。该数据集包含客户id及其财务比率、行业标签和信用评级。
tbl =可读取的('CreditRating_Historical.dat');
通过删除客户id和评级列来创建一个预测器变量表TBL.
.
tblx = removevars(tbl,[“ID”那“评分”]);
通过使用培训Blackbox模型的信用评级模型Fitcecoc.
功能。
黑箱= fitcecoc (tblX,资源描述。评级,'pationoricalpricictors'那'行业')
BlackBox = ClassificationCoc Predictornames:{'wc_ta''re_ta'''ebit_ta''mve_bvtd''s_ta'行业'} resportename:'y'pationoricalpricictors:6 classnames:{'a'''''''''''b'''bb''bbb''ccc'} scoreTransform:'无'BinaryLearners:{21×1 Cell} CodingName:'OneVSONE'属性,方法
创建一个酸橙
对象与之黑盒子
模型。由于随机性,您的结果可能因这些结果而异酸橙
.你可以通过使用来设置随机种子RNG.
为重现。
结果=石灰(黑盒,'pationoricalpricictors'那'行业');
发现两个查询点,其真实的评价值AAA.
和B.
, 分别。
querypoint(1,:) = tblx(find(strcmp(tbl.rating,“AAA”), 1):);queryPoint (2) = tblX(找到(strcmp(资源描述。评级,'B'), 1),:)
queryPoint =2×6表WC_TA RE_TA EBIT_TA MVE_BVTD S_TA行业_____ _____ _______ ________ _____ ________ 0.121 0.413 0.057 3.647 0.466 0.019 12 0.009 0.042 0.257 0.119 1
适合第一个查询点的线性简单模型。将重要预测因子的数量设置为4。
newresults1 = fit(结果,querypoint(1,:),4);
绘制LIME结果图newresults1.
对于第一个查询点。要在任何预测器名称中显示现有的下划线,请更改ticklabelinterpreter.
轴的值'没有任何'
.
f1 = plot(newresults1);f1.currentaxes.ticklabelinterpreter =.'没有任何';
适用于第一个查询点的线性决策树模型。
newresults2 = fit(结果,querypoint(1,:),6,'simplemodeltype'那'树');f2 =情节(newresults2);f2.CurrentAxes。TickLabelInterpreter ='没有任何';
简单的模型newresults1.
和newresults2.
既找到MVE_BVTD
和RE_TA
作为重要的预测因子。
适用于第二个查询点的线性简单模型,并对第二个查询点绘制石灰结果。
newresults3 = fit(结果,querypoint(2,:),4);f3 = plot(newresults3);f3.currentaxes.ticklabelinterpreter =.'没有任何';
预测来自黑盒子
模型是B.
,但简单模型的预测则不然B.
.当两种预测不一样时,您可以指定更小的'kernelwidth'
价值。该软件使用更重要的权重拟合在查询点附近的样本上的权重。如果查询点是异常值或位于决策边界附近,那么即使指定小型,两个预测值也可以不同'kernelwidth'
价值。在这种情况下,您可以更改其他名称 - 值对的参数。例如,您可以生成本地合成数据集(指定'datalocality'
的酸橙
作为'当地的'
)对于查询点并增加样本的数量('NumSyntheticData'
的酸橙
或者合身
)在合成数据集中。您还可以使用不同的距离度量('距离'
的酸橙
或者合身
).
适合线性简单模型,小'kernelwidth'
价值。
newresults4 =适合(结果,queryPoint (2:), 4,'kernelwidth',0.01);f4 = plot(newresults4);f4.currentaxes.ticklabelinterpreter =.'没有任何';
第一个和第二个查询点的信用评级是AAA.
和B.
, 分别。简单的模型newresults1.
和newresults4.
既找到MVE_BVTD
那RE_TA
, 和wc_ta.
作为重要的预测因子。然而,它们的系数值是不同的。该地图表明,这些预测因子根据信用评级而不同地行动。
距离度量是定义两个观测值之间距离的函数。酸橙
万博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,Minkowski距离给出了城市街区距离。对于特例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,然后将其收敛到零,因为距离值增加。这'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。
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。