主要内容

石灰

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

    描述

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

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

    使用拟合的简单模型来解释机器学习模型在指定查询点的局部预测。使用情节功能可视化石灰结果。立足本土的解释,你可以决定是否要信任机器学习模型。

    通过使用适合另一个查询点的新的简单模型适合函数。

    创建

    描述

    结果=石灰(黑匣子创建一个石灰对象使用机器学习模型对象黑匣子它包含预测数据。的石灰函数生成合成预测数据集的样本,并计算样本的预测适合函数与结果

    例子

    结果=石灰(黑匣子X创建一个石灰对象中使用的预测器数据X

    结果=石灰(黑匣子“CustomSyntheticData”,customSyntheticData创建一个石灰对象使用预生成的,定制合成的预测数据集customSyntheticData这个石灰函数计算中样本的预测customSyntheticData

    例子

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

    例子

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

    输入参数

    全部展开

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

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

    X必须与培训的预测数据一致黑匣子,存储在黑箱。X这个年代pecified value must not contain a response variable.

    • X必须具有与预测变量相同的数据类型(例如,trainX),训练黑匣子这个variables that make up the columns ofX必须有相同的数字和顺序trainX

      • 如果你训练黑匣子那么,用一个数字矩阵X必须是数字矩阵。

      • 如果你训练黑匣子那就用桌子吧X必须是表。中的所有预测变量X必须具有与中相同的变量名和数据类型trainX

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

    如果黑匣子是不包含预测数据或功能手柄模型对象,你必须提供XcustomSyntheticData.如果黑匣子是一个完整的机器学习模型对象,请指定此参数,然后石灰不使用中的预测数据黑匣子.它仅使用指定的预测数据。

    数据类型:单身的||表格

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

    如果提供预生成的数据集,则石灰使用提供的数据集,而不是生成新的合成预测数据集。

    customSyntheticData必须与培训的预测数据一致黑匣子,存储在黑箱。X这个年代pecified value must not contain a response variable.

    • customSyntheticData必须具有与预测变量相同的数据类型(例如,trainX),训练黑匣子这个variables that make up the columns ofcustomSyntheticData必须有相同的数字和顺序trainX

      • 如果你训练黑匣子那么,用一个数字矩阵customSyntheticData必须是数字矩阵。

      • 如果你训练黑匣子那就用桌子吧customSyntheticData必须是表。中的所有预测变量customSyntheticData必须具有与中相同的变量名和数据类型trainX

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

    如果黑匣子是不包含预测数据或功能手柄模型对象,你必须提供XcustomSyntheticData.如果黑匣子是一个完整的机器学习模型对象,请指定此参数,然后石灰不使用中的预测数据黑匣子;它仅使用指定的预测数据。

    数据类型:单身的||表格

    查询点石灰解释以数字值或单行表的行向量指定的预测。查询点必须有相同的数据类型和列数XcustomSyntheticData,或中的预测数据黑匣子

    如果您指定numImportantPredictors查询点,那么石灰函数在创建模型时适用于简单模型石灰对象。

    查询点不能包含缺失的值。

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

    数据类型:单身的||表格

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

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

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

    如果您指定numImportantPredictors查询点,那么石灰函数在创建模型时适用于简单模型石灰对象。

    数据类型:单身的|

    名称-值对参数

    指定可选的逗号分隔的字符对名称、值论据。姓名是参数名和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数名称1,值1,…,名称,值

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

    全部展开

    用于数据生成的合成数据的位置,指定为由逗号分隔的对组成“DataLocality”“全球”“本地”

    • “全球”-软件使用整个预测器数据集估计分布参数(X或中的预测数据黑匣子).软件生成与所估计的参数的合成预测数据集并使用任何查询点的简单模型拟合所述数据集。

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

    有关详细信息,请参见石灰

    例子:“数据位置”,“本地”

    数据类型:字符|字符串

    查询点的邻居数,由逗号分隔的对组成“NumNeighbors”和一个正整数标量值。此参数仅在以下情况下有效“DataLocality”“本地”

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

    例子:《纽曼尼斯堡》,2000年

    数据类型:单身的|

    为合成数据集生成的样本数,指定为逗号分隔对,由“NumSyntheticData”和一个正整数标量值。此参数仅在以下情况下有效“DataLocality”“本地”

    例子:“NumSyntheticData”,2500年

    数据类型:单身的|

    简单模型的选择

    全部展开

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

    石灰函数计算查询点与合成预测数据集中样本之间的距离,然后使用平方指数核函数将距离转换为权值。如果你降低“内核宽度”那么价值呢石灰使用更关注查询点附近样本的权重。有关详细信息,请参阅石灰

    例子:“内核宽度”,0.5

    数据类型:单身的|

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

    例子:“SimpleModelType”、“树”

    数据类型:字符|字符串

    机器学习模型选项

    全部展开

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

    价值 描述
    正整数向量

    向量中的每个条目都是对应于包含分类变量的预测器数据列的索引值。索引值在1到之间p,在那里p为用于训练模型的预测器数量。

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

    逻辑向量

    一个真正的条目表示预测数据的对应的列是一个分类变量。该矢量的长度是p

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

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

    • 如果您指定黑匣子作为回归或分类模型对象石灰通过使用CategoricalPredictors属性。

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

    例子:“CategoricalPredictors”、“所有”

    数据类型:单身的||逻辑|字符|字符串|单间牢房

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

    指定时必须指定此参数黑匣子作为函数句柄。如果指定黑匣子作为回归或分类模型对象石灰决定了“类型”值,具体取决于模型类型。

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

    数据类型:字符|字符串

    计算距离的选项

    全部展开

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

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

      价值 描述
      “欧几里得”

      欧几里德距离。

      “seuclidean”

      标准化的欧氏距离。观测值之间的每个坐标差除以相应的标准差,S =性病(PD omitnan),在那里PD是预测器数据或合成预测器数据。若要指定不同的缩放比例,请使用“规模”名称-值参数。

      “mahalanobis”

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

      “cityblock”

      城市街区的距离。

      闵可夫斯基的

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

      “切比切夫”

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

      的余弦

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

      “相关性”

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

      “枪兵”

      1减去样本斯皮尔曼观察值之间的等级相关性(视为值序列)。

      distfun

      自定义距离功能手柄。距离函数有这样的形式

      作用D2=距离(ZI,ZJ)%距离计算...
      在哪里

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

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

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

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

    • 如果预测数据同时包含连续变量和分类变量,那么石灰金宝app支持这些距离度量。

      价值 描述
      “goodall3”

      修改古德距离

      “ofd”

      发生频率距离

    对于定义,请参阅距离度量

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

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

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

    马氏距离度量的协方差矩阵,指定为逗号分隔对,包括“浸”K——- - - - - -K正定矩阵,其中K是预测值的数量。

    此参数仅当“距离”“mahalanobis”

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

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

    数据类型:单身的|

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

    此参数仅当“距离”闵可夫斯基的

    例子:“P”3

    数据类型:单身的|

    尺度参数值为标准化的欧几里得距离度量,指定为逗号分隔对组成“规模”和长度的非负数值向量K,在那里K是预测值的数量。

    此参数仅当“距离”“seuclidean”

    默认值“规模”价值是标准(PD,'omitnan'),在那里PD是预测数据或合成预测数据。如果未指定“规模”值,然后软件在计算预测数据和合成预测数据的距离时使用不同的尺度参数。

    例子:“规模”,分位数(0.75 X)——分位数(0.25 X))

    数据类型:单身的|

    特性

    全部展开

    指定属性

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

    此属性是只读的。

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

    黑匣子参数设置此属性。

    此属性是只读的。

    分类预测指标,指定为一个正整数向量。CategoricalPredictors包含与包含分类预测器的预测器数据列对应的索引值。如果没有任何预测器是绝对的,则此属性为空([]).

    • 如果您指定黑匣子使用函数句柄,然后石灰从预测值数据中识别分类预测值XcustomSyntheticData.如果指定“CategoricalPredictors”名称-值参数,然后参数设置此属性。

    • 如果您指定黑匣子作为回归或分类模型对象石灰通过使用CategoricalPredictors属性。

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

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

    数据类型:单身的|

    此属性是只读的。

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

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

    此属性是只读的。

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

    numImportantPredictors论据石灰或者是numImportantPredictors论据适合设置此属性。

    数据类型:单身的|

    此属性是只读的。

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

    数据类型:单身的|

    此属性是只读的。

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

    查询点论据石灰或者是查询点论据适合设置此属性。

    数据类型:单身的||表格

    此属性是只读的。

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

    • 如果您指定黑匣子作为回归或分类模型对象石灰根据模型类型确定此属性。

    • 如果您指定黑匣子使用函数句柄,然后“类型”名称-值参数设置此属性。

    此属性是只读的。

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

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

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

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

    • 如果您指定黑匣子作为完整的机器学习模型对象,不指定XcustomSyntheticData,则该属性值为用于训练的预测数据黑匣子

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

    数据类型:单身的||表格

    计算属性

    该软件计算下列属性。

    此属性是只读的。

    通过机器学习模型(黑箱模型),指定为一个标量。该预测是用于回归或分类一个分类的标记的预测响应。

    数据类型:单身的||明确的|逻辑|字符|字符串|单间牢房

    此属性是只读的。

    预测用于由机器学习模型计算的合成预测数据(黑箱模型),指定为向量。

    数据类型:单身的||明确的|逻辑|字符|字符串|单间牢房

    此属性是只读的。

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

    数据类型:单身的|

    此属性是只读的。

    简单模型,指定为RegressionLinear回归树分类线性,或分类树模型对象。石灰根据机器学习模型的类型确定简单模型对象的类型(类型)以及简单模型的类型(“SimpleModelType”).

    此属性是只读的。

    由简单模型(SimpleModel),指定为一个标量。

    如果SimpleModel分类线性,那么简单模型值为1或–1。

    • 简单模型如果简单模型的预测结果与黑匣子(来自机器学习模型的预测)。

    • 简单模型值是-1,如果从简单的模型预测不同于黑匣子.如果黑匣子价值是一个,那么情节功能显示简单模型值作为不是一个

    数据类型:单身的||明确的|逻辑|字符|字符串|单间牢房

    此属性是只读的。

    合成的预测数据,指定为数字矩阵或表。

    • 如果指定customSyntheticData输入参数,然后该参数设置此属性。

    • 除此以外,石灰从预测器数据估计分布参数X并生成合成预测数据集。

    数据类型:单身的||表格

    目标函数

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

    例子

    全部折叠

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

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

    台= readtable (“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和评级的列创建预测变量的表tbl

    tblX = removevars(资源描述,“ID”“评分”]);

    通过使用菲切克函数。

    黑箱= fitcecoc(tblX,tbl.Rating,“CategoricalPredictors”“行业”);

    创建一个石灰对象,该对象使用决策树简单模型解释上次观察的预测。指定“NumImportantPredictors”为6,最多找到6个重要的预测因子。如果指定“QueryPoint”“NumImportantPredictors”当您创建石灰对象,则软件生成的合成数据集的样品和嵌合的简单模型可解释在合成数据集。

    queryPoint=tblX(结束:)
    查询点=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:BlackboxModel:[1x1 ClassificationCoC]数据位置:'global'分类预测因子:6类型:'classification'X:[3932x6表]查询点:[1x6表]NUM重要预测因子:6 NUM合成数据:5000合成数据:[5000x6表]拟合:{5000x1单元格}简单模型:[1x1 ClassificationTree]重要预测因子:[2x1 double]BlackboxFitted:{'AA'}SimpleModelFitted:{'AA'}

    绘制石灰对象结果通过使用目标函数情节.要在任何预测器名称中显示现有的下划线,请更改滴答计轴到的值“没有”

    f =情节(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个轴。带有决策树模型标题的轴包含一个bar类型的对象。

    绘图显示查询点的两个预测,它们对应于黑匣子财产和简单模型性质结果

    水平条形图显示排序的预测值重要性值。石灰查找财务比率变量EBIT_TAWC_TA作为查询点的重要预测器。

    您可以通过使用数据提示读取条形码长度或栏属性.例如,您可以找到酒吧通过使用findobj函数,并在栏的末端添加标签文本函数。

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

    图中包含一个坐标轴。与标题LIME轴与决策树模型包含类型栏,文本的3个对象。

    或者,也可以与预测变量名称的表显示的系数值。

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

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

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

    负载carbig

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

    台=表(加速度、汽缸、排量、马力、Model_Year重量,MPG);

    删除训练集中缺失的值可以帮助减少内存消耗并加速训练菲特克内尔函数。删除tbl

    台= rmmissing(台);

    通过从除去响应变量创建预测变量的表tbl

    tblX=移除变量(tbl,“英里”);

    训练黑盒模型英里/加仑通过使用菲特克内尔函数。

    rng (“默认”%的再现性mdl=fitrkernel(tblX,tbl.MPG,“CategoricalPredictors”[2 - 5]);

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

    结果=石灰(mdl tblX)
    结果=石灰与属性:BlackboxModel: [1 x1 RegressionKernel] DataLocality:“全球”CategoricalPredictors:[2 5]类型:“回归”X: [392 x6表]QueryPoint: [] NumImportantPredictors: [] NumSyntheticData: 5000 SyntheticData: [5000 x6表)安装:x1双[5000]SimpleModel: [] ImportantPredictors: [] BlackboxFitted:[] SimpleModelFitted: []

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

    为第一次观测拟合线性简单模型tblX.指定重要的预测数找到,因为3。

    queryPoint=tblX(1,:)
    查询点=1×6表加速气缸位移马力Model_Year重量  ____________ _________ ____________ __________ __________ ______ 12 8 307 130 70 3504
    结果=拟合(结果,查询点,3);

    绘制石灰对象结果通过使用目标函数情节.要在任何预测器名称中显示现有的下划线,请更改滴答计轴到的值“没有”

    f =情节(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个坐标轴。标题为LIME with Linear Model的轴包含一个bar类型的对象。

    绘图显示查询点的两个预测,它们对应于黑匣子财产和简单模型性质结果

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

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

    [~,I]=sort(abs(results.SimpleModel.Beta),“下”);表(results.SimpleModel.expandedPredictor名称(I)”,results.SimpleModel.Beta(I),...“VariableNames”,{“Exteded预测的名字”'系数'})
    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 vs。8)'} 1.746e -07 {'Model_Year (75 vs. 70)'} 1.5456e-07 {'Model_Year (77 vs. 70)'} 1.4272e-07 {'Model_Year (78 vs. 70)'} 6.7001e-08 {'Model_Year (72 vs. 70)'} 4.7214e-08 {' cylinder (4 vs. 8)'} 4.518e -08 {'Model_Year (79 vs. 70)'} -2.2598e-08⋮

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

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

    负载carbig

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

    台=表(加速度、汽缸、排量、马力、Model_Year重量);

    训练黑盒模型英里/加仑通过使用树人函数。

    rng (“默认”%的再现性Mdl = TreeBagger(100台,英里/加仑,“方法”“回归”“CategoricalPredictors”[2 - 5]);

    石灰不支持金宝app树人对象,因此不能指定的第一个输入参数(黑盒模型)石灰作为一个树人对象。相反,你可以使用函数句柄预测函数。的选项预测函数使用函数的名称-值参数。

    的函数句柄预测的函数树人对象Mdl.指定要使用的树索引数组1:50

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

    创建一个石灰对象使用函数句柄我的预测.当您指定黑箱模型作为函数句柄时,您必须提供预测器数据并指定“类型”名称-值参数。tbl包括分类预测因子(圆柱Model_Year)数据类型。默认情况下,石灰不使用数据类型作为分类预测。指定第二(圆柱)及第五(Model_Year)变量作为分类预测因子。

    结果=石灰(myPredict、台、“类型”“回归”“CategoricalPredictors”[2 - 5]);

    为第一次观测拟合线性简单模型tbl.要在任何预测器名称中显示现有的下划线,请更改滴答计轴到的值“没有”

    结果=适合(结果,台(1:),4);f =情节(结果);f.CurrentAxes.TickLabelInterpreter =“没有”

    图中包含一个坐标轴。标题为LIME with Linear Model的轴包含一个bar类型的对象。

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

    更多关于

    全部展开

    算法

    全部展开

    工具书类

    [1] Ribeiro, Marco Tulio, S. Singh, C. Guestrin。“‘我为什么要相信你?’:解释任何分类器的预测。”第22届ACM SIGKDD国际知识发现与数据挖掘会议论文集,1135 - 44。旧金山,加利福尼亚:ACM,2016。

    [2] Świrszcz, Grzegorz, Naoki Abe, Aurélie C. Lozano。“变量选择和预测的分组正交匹配追踪”在神经信息处理系统的进步(2009): 1150–58.

    [3] Lozano Aurélie C., Grzegorz Świrszcz,和Naoki Abe。逻辑回归的组正交匹配追踪。第十四届国际人工智能和统计会议论文集(2011): 452 - 60。

    在R2020b中引入