主要内容

石灰

局部可解释模型不可知解释(LIME)

    描述

    石灰通过找到重要的预测因子并拟合一个简单的可解释模型,解释机器学习模型(分类或回归)对查询点的预测。

    您可以创建石灰具有指定查询点(queryPoint)和指定数目的重要预测因子(numImportantPredictors).该软件生成一个合成数据集,并拟合一个简单的可解释的重要预测器模型,该模型有效地解释了围绕查询点的合成数据的预测。简单模型可以是线性模型(默认值)或决策树模型。

    使用拟合的简单模型来解释机器学习模型在指定查询点的局部预测。使用情节函数来可视化LIME结果。根据局部解释,您可以决定是否信任机器学习模型。

    方法为另一个查询点拟合一个新的简单模型适合函数。

    创建

    描述

    结果=石灰(黑箱创建一个石灰对象使用机器学习模型对象黑箱其中包含预测数据。的石灰函数生成合成预测器数据集的样本,并计算样本的预测。要拟合简单模型,请使用适合函数与结果

    例子

    结果=石灰(黑箱X创建一个石灰中的预测器数据X

    结果=石灰(黑箱“CustomSyntheticData”,customSyntheticData创建一个石灰对象使用预先生成的自定义合成预测器数据集customSyntheticData.的石灰函数计算样本的预测值customSyntheticData

    例子

    结果=石灰(___“QueryPoint”,queryPoint“NumImportantPredictors”,numImportantPredictors还可以找到指定数量的重要预测因子,并为查询点拟合一个简单的线性模型queryPoint.你可以指定queryPoint而且numImportantPredictors除了前面语法中的任何输入参数组合之外。

    例子

    结果=石灰(___名称,值使用一个或多个名称-值参数指定其他选项。例如,“SimpleModelType”、“树”将简单模型的类型指定为决策树模型。

    输入参数

    全部展开

    要解释的机器学习模型,指定为完整或紧凑的回归或分类模型对象或函数句柄。

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

    X必须与训练的预测器数据一致黑箱,储存在黑箱。X.指定的值不能包含响应变量。

    • X必须具有与预测变量相同的数据类型(例如,trainX)黑箱.组成列的变量X必须有相同的数字和顺序trainX

      • 如果你训练黑箱那么,使用一个数字矩阵X一定是数值矩阵。

      • 如果你训练黑箱那么,使用表格X一定是一张桌子。所有预测变量X必须具有与中的相同的变量名和数据类型trainX

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

    如果黑箱是否必须提供不包含预测器数据或函数句柄的模型对象XcustomSyntheticData.如果黑箱是一个完整的机器学习模型对象,你指定这个参数,那么石灰不使用预测数据在黑箱.它只使用指定的预测器数据。

    数据类型:||表格

    预先生成的,自定义合成预测数据集,指定为数字矩阵或表格。

    如果您提供预先生成的数据集,那么石灰使用提供的数据集,而不是生成新的合成预测器数据集。

    customSyntheticData必须与训练的预测器数据一致黑箱,储存在黑箱。X.指定的值不能包含响应变量。

    • customSyntheticData必须具有与预测变量相同的数据类型(例如,trainX)黑箱.组成列的变量customSyntheticData必须有相同的数字和顺序trainX

      • 如果你训练黑箱那么,使用一个数字矩阵customSyntheticData一定是数值矩阵。

      • 如果你训练黑箱那么,使用表格customSyntheticData一定是一张桌子。所有预测变量customSyntheticData必须具有与中的相同的变量名和数据类型trainX

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

    如果黑箱是否必须提供不包含预测器数据或函数句柄的模型对象XcustomSyntheticData.如果黑箱是一个完整的机器学习模型对象,你指定这个参数,那么石灰不使用预测数据在黑箱;它只使用指定的预测器数据。

    数据类型:||表格

    所在的查询点石灰解释指定为数值的行向量或单行表的预测。queryPoint必须具有相同的数据类型和列数XcustomSyntheticData,或中的预测器数据黑箱

    如果你指定numImportantPredictors而且queryPoint,则石灰函数在创建石灰对象。

    queryPoint不能包含缺失值。

    例子:: blackbox.X (1)将查询点指定为完整机器学习模型中预测器数据的第一个观察点黑箱

    数据类型:||表格

    在简单模型中使用的重要预测器的数量,指定为正整数标量值。

    • 如果“SimpleModelType”“线性”,然后软件选择指定数量的重要预测因子,并拟合所选预测因子的线性模型。

    • 如果“SimpleModelType”“树”,然后软件指定最大决策分裂数(或分支节点)作为重要预测因子的数量,使拟合的决策树最多使用指定数量的预测因子。

    如果你指定numImportantPredictors而且queryPoint,则石灰函数在创建石灰对象。

    数据类型:|

    名称-值对参数

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

    例子:石灰黑箱“QueryPoint”问,“NumImportantPredictors”n“SimpleModelType”,“树”)指定查询点为,用于简单模型的重要预测因子的数量为n,并将类型简单的模型作为决策树模型。石灰生成合成预测器数据集的样本,计算样本的预测,并使用最多指定数量的预测器为查询点拟合决策树模型。
    合成预测数据的选项

    全部展开

    用于生成数据的合成数据的局部性,指定为逗号分隔的对,由“DataLocality”而且“全球”“本地”

    • “全球”-该软件使用整个预测器数据集估计分布参数(X或者预测数据黑箱).该软件生成一个具有估计参数的合成预测数据集,并使用该数据集对任何查询点进行简单的模型拟合。

    • “本地”-该软件估计分布参数使用k-查询点的最近邻居,其中k“NumNeighbors”价值。该软件每次为指定的查询点拟合一个简单模型时,都会生成一个新的合成预测数据集。

    详情请参见石灰

    例子:“DataLocality”,“当地”

    数据类型:字符|字符串

    查询点的邻居数,指定为逗号分隔的对,由“NumNeighbors”和一个正整数标量值。此论点仅当“DataLocality”“本地”

    如果指定的值大于预测器数据集中的观察数(X或者预测数据黑箱),然后石灰使用所有的观察结果。

    例子:“NumNeighbors”,2000年

    数据类型:|

    为合成数据集生成的样本数目,指定为逗号分隔的对,由“NumSyntheticData”和一个正整数标量值。

    例子:“NumSyntheticData”,2500年

    数据类型:|

    简单模型的选项

    全部展开

    平方指数(或高斯)核函数的核宽,指定为由逗号分隔的对组成“KernelWidth”和一个数值标量值。

    石灰函数计算查询点与合成预测器数据集中样本之间的距离,然后使用平方指数核函数将距离转换为权重。如果你降低“KernelWidth”值,然后石灰使用更侧重于查询点附近样本的权重。详细信息请参见石灰

    例子:“KernelWidth”,0.5

    数据类型:|

    简单模型的类型,指定为逗号分隔的对,由“SimpleModelType”而且“线性”“树”

    例子:“SimpleModelType”、“树”

    数据类型:字符|字符串

    机器学习模型的选项

    全部展开

    类别预测符列表,指定为逗号分隔的对,由“CategoricalPredictors”这个表中的一个值。

    价值 描述
    正整数向量

    向量中的每个条目都是一个指标值,表明相应的预测器是分类的。索引值在1和之间p,在那里p用于训练模型的预测器的数量。

    如果黑箱使用输入变量的子集作为预测器,然后软件仅使用该子集对预测器进行索引。的“CategoricalPredictors”值不计算响应变量、观察权重变量或函数不使用的任何其他变量。

    逻辑向量

    一个真正的Entry表示对应的预测器是分类的。向量的长度是p

    字符矩阵 矩阵的每一行都是一个预测变量的名称。名称必须以表的形式与预测器数据的变量名称相匹配。用额外的空格填充名字,这样字符矩阵的每一行都有相同的长度。
    字符向量的字符串数组或单元格数组 数组中的每个元素都是一个预测变量的名称。名称必须以表的形式与预测器数据的变量名称相匹配。
    “所有” 所有预测因素都是绝对的。

    • 如果你指定黑箱作为函数句柄石灰从预测器数据中识别分类预测器XcustomSyntheticData.如果预测器数据在表格中,石灰如果一个变量是逻辑向量、无序分类向量、字符数组、字符串数组或字符向量的单元格数组,则假定它是分类的。如果预测器数据是一个矩阵,石灰假设所有预测因子都是连续的。

    • 如果你指定黑箱作为一个回归或分类模型对象,那么石灰属性标识类别预测符CategoricalPredictors模型对象的属性。

    石灰不支持有序分类预测金宝app器。

    例子:“CategoricalPredictors”、“所有”

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

    机器学习模型的类型,指定为逗号分隔的对,由“类型”而且的回归“分类”

    在指定时必须指定此参数黑箱作为函数句柄。如果你指定黑箱作为一个回归或分类模型对象,那么石灰决定了“类型”值,该值取决于模型类型。

    例子:“类型”、“分类”

    数据类型:字符|字符串

    计算距离的选项

    全部展开

    距离度量,指定为逗号分隔的对,由“距离”和字符向量、字符串标量或函数句柄。

    • 如果预测器数据只包含连续变量,则石灰金宝app支持这些距离度量。

      价值 描述
      “欧几里得”

      欧氏距离。

      “seuclidean”

      标准化欧氏距离。观测值之间的每个坐标差都通过除以相应的标准偏差元素来缩放,S = std(PD,'omitnan'),在那里PD是预测数据还是合成预测数据。要指定不同的缩放,请使用“规模”名称-值参数。

      “mahalanobis”

      的样本协方差的马氏距离PDC = cov(PD,'omitrows').若要更改协方差矩阵的值,请使用“浸”名称-值参数。

      “cityblock”

      城市街区距离。

      闵可夫斯基的

      闵可夫斯基距离。默认指数为2。要指定不同的指数,请使用“P”名称-值参数。

      “chebychev”

      切比雪夫距离(最大坐标差)。

      的余弦

      1减去点间夹角的余弦(作为向量)。

      “相关”

      1减去点之间的样本相关性(作为值序列处理)。

      “枪兵”

      1减去观测值之间的样本斯皮尔曼秩相关(被视为值序列)。

      @distfun

      自定义距离函数句柄。距离函数有这样的形式

      函数D2 = distfun(ZI,ZJ)距离计算%...
      在哪里

      • 是一个1——- - - - - -t包含单个观测值的向量。

      • ZJ是一个年代——- - - - - -t包含多个观测值的矩阵。distfun必须接受一个矩阵ZJ用任意数量的观测值。

      • D2是一个年代——- - - - - -1距离向量,和D2 (k)观测值之间的距离是多少而且ZJ (k,:)

      如果您的数据不是稀疏的,您通常可以通过使用内置的距离度量而不是函数句柄来更快地计算距离。

    • 如果预测器数据包括连续变量和分类变量,则石灰金宝app支持这些距离度量。

      价值 描述
      “goodall3”

      修正古道尔距离

      海底钻井的

      发生频率距离

    有关定义,请参见距离度量

    默认值为“欧几里得”如果预测器数据只包括连续变量,或“goodall3”如果预测器数据包括连续变量和分类变量。

    例子:“距离”、“海底钻井的

    数据类型:字符|字符串|function_handle

    马氏距离度量的协方差矩阵,指定为逗号分隔的对,由“浸”和一个K——- - - - - -K正定矩阵,其中K是预测因子的数量。

    这个论点只有在以下情况下才成立“距离”“mahalanobis”

    默认的“浸”值是浸(PD omitrows),在那里PD是预测数据还是合成预测数据。如果没有指定“浸”值,然后软件在计算预测数据和合成预测数据的距离时使用不同的协方差矩阵。

    例子:“浸”,眼睛(3)

    数据类型:|

    闵可夫斯基距离度量的指数,指定为逗号分隔的对,由“P”一个正标量。

    这个论点只有在以下情况下才成立“距离”闵可夫斯基的

    例子:“P”3

    数据类型:|

    标准欧几里得距离度量的刻度参数值,指定为逗号分隔的对,由“规模”和一个非负的长度向量K,在那里K是预测因子的数量。

    这个论点只有在以下情况下才成立“距离”“seuclidean”

    默认的“规模”值是性病(PD omitnan),在那里PD是预测数据还是合成预测数据。如果没有指定“规模”值,则软件在计算预测数据和合成预测数据的距离时使用不同的尺度参数。

    例子:'Scale',分位数(X,0.75) -分位数(X,0.25)

    数据类型:|

    属性

    全部展开

    指定的属性

    属性时,可以指定以下属性石灰对象。

    此属性是只读的。

    要解释的机器学习模型,指定为回归或分类模型对象或函数句柄。

    黑箱参数设置此属性。

    此属性是只读的。

    分类预测指标,指定为正整数向量。CategoricalPredictors包含指示相应预测符是分类的索引值。索引值在1和之间p,在那里p用于训练模型的预测器的数量。如果没有一个预测符是分类的,则此属性为空([]).

    • 如果你指定黑箱那么,使用函数句柄石灰从预测器数据中识别分类预测器XcustomSyntheticData.如果您指定“CategoricalPredictors”参数,则参数设置此属性。

    • 如果你指定黑箱作为一个回归或分类模型对象,那么石灰属性确定此属性CategoricalPredictors模型对象的属性。

    石灰不支持有序分类预测金宝app器。

    如果“SimpleModelType”“线性”(默认)石灰为每个确定的分类预测器创建虚拟变量。石灰将指定查询点的类别视为参考组,并创建比类别数量少一个的虚拟变量。详情请参见带参考组的虚拟变量

    数据类型:|

    此属性是只读的。

    用于生成数据的合成数据的位置,指定为“全球”“本地”

    “DataLocality”名称-值参数设置此属性。

    此属性是只读的。

    在简单模型中使用的重要预测因子的数目(SimpleModel),指定为正整数标量值。

    numImportantPredictors的观点石灰或者是numImportantPredictors的观点适合设置此属性。

    数据类型:|

    此属性是只读的。

    合成数据集中的样本数,指定为正整数标量值。

    数据类型:|

    此属性是只读的。

    所在的查询点石灰解释使用简单模型的预测(SimpleModel),指定为数值或单行表的行向量。

    queryPoint的观点石灰或者是queryPoint的观点适合设置此属性。

    数据类型:||表格

    此属性是只读的。

    机器学习模型的类型(BlackboxModel),指定为的回归“分类”

    • 如果你指定黑箱作为一个回归或分类模型对象,那么石灰根据模型类型确定此属性。

    • 如果你指定黑箱使用函数句柄,则“类型”名称-值参数设置此属性。

    此属性是只读的。

    预测器数据,指定为数字矩阵或表格。

    每行X对应一个观察结果,每一列对应一个变量。

    • 如果您指定X参数,则参数设置此属性。

    • 如果您指定customSyntheticData参数,则此属性为空。

    • 如果你指定黑箱作为一个完整的机器学习模型对象并没有指定XcustomSyntheticData,则此属性值为用于训练的预测器数据黑箱

    石灰不使用包含缺失值的行,也不将行存储在其中X

    数据类型:||表格

    计算属性

    该软件计算以下属性。

    此属性是只读的。

    由机器学习模型计算的查询点预测(BlackboxModel),指定为标量。预测是回归的预测响应或分类的分类标签。

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

    此属性是只读的。

    由机器学习模型计算的合成预测器数据的预测(BlackboxModel),指定为一个向量。

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

    此属性是只读的。

    重要的预测指标,指定为正整数向量。ImportantPredictors包含与简单模型中使用的预测器的列对应的索引值(SimpleModel).

    数据类型:|

    此属性是只读的。

    简单模型,指定为RegressionLinearRegressionTreeClassificationLinear,或ClassificationTree模型对象。石灰根据机器学习模型的类型确定简单模型对象的类型(类型)和简单模型的类型(“SimpleModelType”).

    此属性是只读的。

    由简单模型计算的查询点的预测(SimpleModel),指定为标量。

    如果SimpleModelClassificationLinear,则SimpleModelFitted取值为1或-1。

    • SimpleModelFitted如果简单模型的预测结果与BlackboxFitted(机器学习模型的预测)。

    • SimpleModelFitted如果简单模型的预测与BlackboxFitted.如果BlackboxFitted值是一个,则情节函数显示SimpleModelFitted值作为不是一个

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

    此属性是只读的。

    综合预测数据,指定为数字矩阵或表格。

    • 如果您指定customSyntheticData输入参数,然后参数设置这个属性。

    • 否则,石灰从预测器数据估计分布参数X并生成一个合成预测数据集。

    数据类型:||表格

    对象的功能

    适合 局部可解释模型不可知解释(LIME)拟合简单模型
    情节 局部可解释模型不可知解释(LIME)的图结果

    例子

    全部折叠

    训练一个分类模型并创建一个石灰对象,该对象使用决策树简单模型。当你创建石灰对象,指定查询点和重要预测因子的数量,以便软件生成合成数据集的样本,并为具有重要预测因子的查询点拟合一个简单模型。然后利用目标函数在简单模型中显示估计的预测因子重要性情节

    加载CreditRating_Historical数据集。数据集包含客户id及其财务比率、行业标签和信用评级。

    可读的(“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}

    通过删除客户id和评分列,创建一个预测变量表资源描述

    tblX = removevars(tbl,[“ID”“评级”]);

    训练信用评级的黑盒模型fitcecoc函数。

    blackbox = fitcecoc(tblX,tbl。评级,“CategoricalPredictors”“行业”);

    创建一个石灰对象,该对象使用决策树简单模型解释对最后一次观测的预测。指定“NumImportantPredictors”作为六个,找出最多6个重要的预测因子。如果您指定“QueryPoint”而且“NumImportantPredictors”属性时的值石灰对象,然后软件生成合成数据集的样本,并为合成数据集拟合一个简单的可解释模型。

    queryPoint = tblX(end,:)
    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”“树”
    结果= lime with properties: BlackboxModel: [1x1 ClassificationECOC] DataLocality: 'global' CategoricalPredictors: 6 Type: 'classification' X: [3932x6 table] QueryPoint: [1x6 table] NumImportantPredictors: 6 numsynticdata: 5000 synticdata: [5000x6 table] fitting: {5000x1 cell} SimpleModel: [1x1 ClassificationTree] ImportantPredictors: [2x1 double] blackboxfitting: {'AA'} simplemodelfitting: {'AA'}

    画出石灰对象结果通过使用对象函数情节.若要在任何预测器名称中显示现有下划线,请更改TickLabelInterpreter轴的值“没有”

    F =图(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个轴对象。标题为LIME的axis对象包含一个类型为bar的对象。

    该图显示了查询点的两个预测,它们对应于BlackboxFitted财产和SimpleModelFitted的属性结果

    横柱图显示了排序的预测器重要性值。石灰找到财务比率变量EBIT_TA而且WC_TA作为查询点的重要预测器。

    您可以使用数据提示或读取条形长度栏属性.例如,你可以找到酒吧对象,使用findobj函数,并将标签添加到条形图的两端文本函数。

    B = findobj(f,“类型”“酒吧”);文本(b.YEndPoints + 0.001, b.XEndPoints字符串(b.YData))

    图中包含一个轴对象。标题为LIME的axis对象包含类型栏、文本和决策树模型3个对象。

    或者,您可以在具有预测器变量名称的表中显示系数值。

    imp = b.YData;flipud (array2table(小鬼”,...“RowNames”f.CurrentAxes.YTickLabel,“VariableNames”, {“预测的重要性”}))
    ans =2×1表预测的重要性  ____________________ MVE_BVTD 0.088412 RE_TA 0.0018061

    训练一个回归模型并创建一个石灰对象,该对象使用线性简单模型。当你创建石灰对象,如果不指定查询点和重要预测因子的数量,则软件生成合成数据集的样本,但不适合简单的模型。使用object函数适合为查询点拟合一个简单的模型。然后利用目标函数显示拟合后线性简单模型的系数情节

    加载carbig数据集,其中包含20世纪70年代和80年代初生产的汽车的测量数据。

    负载carbig

    创建一个包含预测变量的表加速度气缸,等等,以及响应变量英里/加仑

    tbl = table(加速度,气缸,排量,马力,车型年,重量,MPG);

    删除训练集中的缺失值可以帮助减少内存消耗并加快fitrkernel函数。中删除缺失的值资源描述

    TBL = rmmissing(TBL);

    通过删除响应变量来创建一个预测变量表资源描述

    tblX = removevars(tbl,“英里”);

    训练一个黑盒模型英里/加仑通过使用fitrkernel函数。

    rng (“默认”%用于再现性mdl = fitrkernel(tblX,tbl。英里/加仑,“CategoricalPredictors”[2 - 5]);

    创建一个石灰对象。指定一个预测器数据集,因为mdl不包含预测器数据。

    results = lime(mdl,tblX)
    结果= lime with properties: BlackboxModel: [1x1 RegressionKernel] DataLocality: 'global' CategoricalPredictors: [2 5] Type: 'regression' X: [392x6 table] QueryPoint: [] NumImportantPredictors: [] numsynticdata: 5000 synticdata: [5000x6 table] fitting: [5000x1 double] SimpleModel: [] ImportantPredictors: [] blackboxfitting: [] simplemodelfitting: []

    结果包含生成的合成数据集。的SimpleModel属性为空([]).

    中第一个观测拟合线性简单模型tblX.指定要查找的重要预测因子的数量为3。

    queryPoint = tblX(1,:)
    queryPoint =1×6表加速气缸位移马力Model_Year重量  ____________ _________ ____________ __________ __________ ______ 12 8 307 130 70 3504
    results = fit(results,queryPoint,3);

    画出石灰对象结果通过使用对象函数情节.若要在任何预测器名称中显示现有下划线,请更改TickLabelInterpreter轴的值“没有”

    F =图(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个轴对象。带有线性模型的LIME标题的axis对象包含一个类型为bar的对象。

    该图显示了查询点的两个预测,它们对应于BlackboxFitted财产和SimpleModelFitted的属性结果

    横柱图显示了简单模型的系数值,按它们的绝对值排序。石灰发现马力Model_Year,气缸作为查询点的重要预测器。

    Model_Year而且气缸是具有多个类别的分类预测器。对于线性简单模型,软件为每个分类预测器创建的虚拟变量比类别数少一个。条形图只显示最重要的虚变量。,可以检查其他虚变量的系数SimpleModel的属性结果.显示排序系数值,包括所有分类虚拟变量。

    [~,I] = sort(abs(results.SimpleModel.Beta),“下”);表(results.SimpleModel.ExpandedPredictorNames (I)”,results.SimpleModel.Beta(我),...“VariableNames”, {“扩展预测器名称”“系数”})
    ans =17×2表Exteded预测名字系数  __________________________ ___________ {' -3.4485马力的}e-05 {Model_Year(74和70)的}-6.1279 e-07{“Model_Year(80和70)的}-4.015 e-07{“Model_Year(81和70)的}3.4176 e-07{“Model_Year(82和70)的}-2.2483 e-07{的圆柱体(6和8)}-1.9024 e-07{“Model_Year(76和70)的}1.8136 e-07{的圆柱体(5和8)}1.7461 e-07{“Model_Year(71和70)的}1.558 e-07{“Model_Year(75和70)的}1.5456 e-07{“Model_Year(77和70)的}1.521 e-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{'气缸(4 vs. 8)'} 4.5118e-08 {'Model_Year (79 vs. 70)'} -2.2598e-08 \

    训练一个回归模型并创建一个石灰对象的函数句柄预测模型的功能。使用object函数适合为指定的查询点拟合一个简单模型。然后利用目标函数显示拟合后线性简单模型的系数情节

    加载carbig数据集,其中包含20世纪70年代和80年代初生产的汽车的测量数据。

    负载carbig

    创建一个包含预测变量的表加速度气缸等等。

    tbl = table(加速度,气缸,排量,马力,车型年,重量);

    训练一个黑盒模型英里/加仑通过使用TreeBagger函数。

    rng (“默认”%用于再现性Mdl = TreeBagger(100,tbl,MPG,“方法”“回归”“CategoricalPredictors”[2 - 5]);

    石灰不支持金宝appTreeBagger对象的第一个输入参数(黑箱模型)石灰作为一个TreeBagger对象。属性的函数句柄预测函数。属性的选项预测函数使用函数的名称-值参数。

    属性的函数句柄预测的功能TreeBagger对象Mdl.指定要用作的树索引数组1:50

    myPredict = @(tbl) predict(Mdl,tbl,“树”、1:50);

    创建一个石灰对象使用函数句柄myPredict.指定黑箱模型作为函数句柄时,必须提供预测器数据并指定“类型”名称-值参数。资源描述包括分类预测符(油缸而且Model_Year)与数据类型。默认情况下,石灰不使用数据类型作为分类预测器。指定第二个(油缸)及第五(Model_Year)变量作为分类预测因子。

    结果= lime(myPredict,tbl,“类型”“回归”“CategoricalPredictors”[2 - 5]);

    中第一个观测拟合线性简单模型资源描述.若要在任何预测器名称中显示现有下划线,请更改TickLabelInterpreter轴的值“没有”

    Results = fit(Results,tbl(1,:),4);F =图(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个轴对象。带有线性模型的LIME标题的axis对象包含一个类型为bar的对象。

    石灰发现马力位移气缸,Model_Year作为重要的预测指标。

    更多关于

    全部展开

    算法

    全部展开

    参考文献

    [1]里贝罗,马可·图里奥,s·辛格和c·格斯特林。“‘我为什么要相信你?《解释任何分类器的预测》第22届ACM SIGKDD知识发现和数据挖掘国际会议论文集, 1135 - 44。旧金山,加利福尼亚州:ACM, 2016年。

    [2] Świrszcz, Grzegorz, Abe直树和Aurélie C. Lozano。变量选择与预测的分组正交匹配追踪神经信息处理系统研究进展(2009): 1150 - 58。

    [3]洛萨诺,Aurélie C., Grzegorz Świrszcz,和阿部直树。Logistic回归的群正交匹配追踪"第十四届人工智能与统计国际会议论文集(2011): 452 - 60。

    R2020b中介绍