一步

通过添加或删除项来改进广义线性回归模型

描述

NewMdl=步骤(mdl返回基于的广义线性回归模型mdl使用逐步回归来添加或删除一个预测因子。

例子

NewMdl=步骤(mdl名称,值使用一个或多个名称-值对参数指定其他选项。例如,您可以指定用于添加或删除术语的条件以及要采取的最大步骤数。

例子

全部折叠

利用随机数据和单个预测器拟合泊松回归模型,然后使用一步通过添加或删除预测项来改进模型。

生成具有20个预测变量的样本数据。使用三个预测器来生成泊松响应变量。

RNG('默认'重复性的%x = randn(100,20);mu = exp(x(:,[5 10 15])* [。4; .2; .3] + 1);y = poissrnd(mu);

建立广义线性回归模型的泊松数据使用X(:,2)作为唯一的预测因素。

mdl = fitglm (X, y,“y ~ x2”“分布”“泊松”
mdl =广义线性回归模型:log(y) ~ 1 + x2分布= Poisson估计系数:估计SE tStat pValue ________ ________ _______ __________ (Intercept) 1.1386 0.056722 20.073 1.2817e-89 x2 0.010768 0.056564 0.19037 0.84902 100个观测值,98个误差自由度分散:1 Chi^2-statistic vs. constant模型:0.0362, p-value = 0.849

改善mdl通过使用一步.指定“NSteps”作为5,以允许最多5步的逐步回归。

mdl1 =步骤(mdl,“NSteps”5)
1.加x5, Deviance = 134.4375, Chi2Stat = 52.21338, PValue = 4.978574e-13添加x15, Deviance = 106.1925, Chi2Stat = 28.24496, PValue = 1.068927e-07加上x10, Deviance = 94.708, Chi2Stat = 11.4845, PValue = 0.000701792去除x2, Deviance = 95.021, Chi2Stat = 0.31263, PValue = 0.57607
mdl1 =广义线性回归模型:log(y) ~ 1 + x5 + x10 + x15估计SE tStat pValue ________ ________ ______ __________ (Intercept) 1.0115 0.064275 15.737 8.4217e-56 x5 0.39508 0.066665 5.9263 3.0977e-09 x10 0.18863 0.05534 3.4085 0.0006532 x15 0.29295 0.053269 5.4995 3.8089e-08 100个观测值,96个误差自由度

一步添加了三个预测变量,用于生成模型和删除的响应变量X(:,2)从模型。

输入参数

全部折叠

广义线性回归模型,指定为aGeneralizedLinearModel对象创建使用fitglmstepwiseglm

名称-值对的观点

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

例子:'标准','aiC','上','二次','verbose',2指示一步使用赤池信息准则,在模型中包含(最多)二次项,并显示评估过程和每一步所采取的决策。

条件来添加或删除指定为逗号分隔对的项,由“标准”其中一个价值观是:

  • “异常”- - - - - -p- value forF-test或chi平方测试偏差的变化,从而增加或删除术语。的F-test对单个模型进行检验,卡方检验对两个不同的模型进行比较。

  • 上交所的- - - - - -p- value forF-增加或删除项的平方和误差变化的检验。

  • “另类投资会议”—修改AIC (Akaike information criterion)的值。

  • “bic”—贝叶斯信息准则(BIC)值的变化。

  • “rsquared”-增加价值R2

  • “adjrsquared”- 增加调整的值R2

例子:“标准”、“bic”

描述不能从模型中删除的术语的模型规范,由逗号分隔的对组成'降低'其中一个价值观是:

  • 字符向量或字符串标量命名模型。

    价值 模型类型
    “不变” 模型只包含一个常数(截距)项。
    “线性” 模型包含每个预测器的截距和线性项。
    “互动” 模型包含每个预测器的截距,线性术语,以及所有具有不同预测器的所有产品(没有平方术语)。下载188bet金宝搏
    “purequadratic” 模型包含截距项、线性项和平方项。
    '二次' 模型包含每个预测器的截距项、线性项和平方项,以及对不同预测器的所有乘积。下载188bet金宝搏
    “聚IJK. 模型是一个多项式,所有项都达到次第一个预测因子是程度j在第二个预测中,等等。通过使用数字0到9指定每个预测器的最大程度。模型中包含交互项,但每个交互项的程度不超过指定程度的最大值。例如,'poly13'有一个截距x1x2x22x23.x1x2,x1x22条款,在哪里x1x2分别是第一和第二预测因素。
  • 一个t-经过-(p+ 1)矩阵,或者a计算矩阵,在模型中指定术语,在哪里t是项的个数,p为预测变量的个数,+1表示响应变量。术语矩阵是方便的,当预测器的数量很大时,您要以编程方式生成术语。

  • 表示A的字符向量或字符串标量公式在表单中

    “Y ~条款”

    那里术语威尔金森符号.公式中的变量名必须是MATLAB有效的®标识符。

例子:“低”,“线性”

数据类型:char|字符串||双倍的

以逗号分隔的配对指定的最大步数次数“NSteps”和一个正整数。

例子:“NSteps”,5

数据类型:|双倍的

用于添加术语的条件的阈值,指定为逗号分隔对,由“囚禁”和标量值,如表所示。

标准 默认值 决定
“异常” 0.05 如果p价值的F- 雕刻或Chi平方统计量小于被关闭的p-value to enter),将术语添加到模型中。
上交所的 0.05 如果p价值的F-统计数字小于被关闭的,将术语添加到模型中。
“另类投资会议” 0 如果模型AIC的变化小于被关闭的,将术语添加到模型中。
“BIC” 0 如果模型中BIC的变化小于被关闭的,将术语添加到模型中。
“Rsquared” 0.1 如果模型的R线值的增加大于被关闭的,将术语添加到模型中。
“AdjRsquared” 0 如果模型调整后的r平方值增加大于被关闭的,将术语添加到模型中。

有关更多信息,请参见标准名称-值对的论点。

例子:“囚禁”,0.075

删除术语的标准的阈值,指定为逗号分隔的对组成'premove'和标量值,如表所示。

标准 默认值 决定
“异常” 0.10 如果p价值的F-统计量或卡方统计量大于PRemovep-value to remove),从模型中移除术语。
上交所的 0.10 如果p价值的F-统计量大于PRemove,将该术语从模型中删除。
“另类投资会议” 0.01 如果模型AIC的变化大于PRemove,将该术语从模型中删除。
“BIC” 0.01 如果模型中BIC的变化大于PRemove,将该术语从模型中删除。
“Rsquared” 0.05 如果模型r平方值的增加小于PRemove,将该术语从模型中删除。
“AdjRsquared” -0.05 如果模型的调整后R线值的增加小于PRemove,将该术语从模型中删除。

在每一步,一步功能还检查当前模型中的其他术语是否冗余(线性依赖)。当一个术语在当前模型中的其他术语线性地依赖时,一步函数删除冗余项,而不考虑标准值。

有关更多信息,请参见标准名称-值对的论点。

例子:“PRemove”,0.05

模型规范描述了最大的适合的术语集,指定为逗号分隔对组成“上”其中一个价值观是:

  • 字符向量或字符串标量命名模型。

    价值 模型类型
    “不变” 模型只包含一个常数(截距)项。
    “线性” 模型包含每个预测器的截距和线性项。
    “互动” 模型包含每个预测器的截距,线性术语,以及所有具有不同预测器的所有产品(没有平方术语)。下载188bet金宝搏
    “purequadratic” 模型包含截距项、线性项和平方项。
    '二次' 模型包含每个预测器的截距项、线性项和平方项,以及对不同预测器的所有乘积。下载188bet金宝搏
    “聚IJK. 模型是一个多项式,所有项都达到次第一个预测因子是程度j在第二个预测中,等等。通过使用数字0到9指定每个预测器的最大程度。模型中包含交互项,但每个交互项的程度不超过指定程度的最大值。例如,'poly13'有一个截距x1x2x22x23.x1x2,x1x22条款,在哪里x1x2分别是第一和第二预测因素。
  • 一个t-经过-(p+ 1)矩阵,或者a计算矩阵,在模型中指定术语,在哪里t是项的个数,p为预测变量的个数,+1表示响应变量。术语矩阵是方便的,当预测器的数量很大时,您要以编程方式生成术语。

  • 表示A的字符向量或字符串标量公式在表单中

    “Y ~条款”

    那里术语威尔金森符号.公式中的变量名必须是有效的MATLAB标识符。

例子:“上”、“二次”

数据类型:char|字符串||双倍的

控件,指定为逗号分隔的对,由'verbose'其中一个价值观是:

  • 0—禁止所有显示。

  • 1- 显示每个步骤采取的操作。

  • 2-展示评估过程和每一步采取的行动。

例子:“详细”,2

输出参数

全部折叠

广义线性回归模型,返回为GeneralizedLinearModel对象。

重写输入参数mdl,将新模型分配给mdl

mdl =步骤(mdl);

更多关于

全部折叠

计算矩阵

一个条件矩阵T是一个t-经过-(p+ 1)矩阵指定模型中的术语,其中t是项的个数,p为预测变量的个数,+1表示响应变量。的价值T (i, j)是变量的指数吗j在术语

例如,假设一个输入包含三个预测变量一个B,C以及响应变量Y的顺序一个BC,Y.每一行的T代表一个术语:

  • [0 0 0]-常数项或截距

  • [0 1 0 0]- - - - - -B;同样,A^0 * b ^1 * c ^0

  • [1 0 1 0]- - - - - -* C

  • [2 0 0]- - - - - -A ^ 2.

  • [0 1 2 0]- - - - - -B * (C ^ 2)

0在每一项的末尾表示响应变量。通常,项矩阵中的零列向量表示响应变量的位置。如果在矩阵和列向量中有预测器和响应变量,则必须包括0获取每行最后一列中的响应变量。

公式

模型规范的公式是这种形式的字符向量或字符串标量Y术语

  • Y是响应名称。

  • 术语表示模型中使用威尔金森表示法的预测项。

例如:

  • ' y ~ a + b + c '指定一个带有截距的三变量线性模型。

  • 1 . a + b + c - 1'指定一个无截距的三变量线性模型。注意,默认情况下,公式包含一个常量(截距)项。要从模型中排除常数项,必须包含1的公式。

威尔金森符号

Wilkinson表示法描述了模型中存在的术语。符号涉及模型中存在的术语,而不是那些术语的乘法器(系数)。

威尔金森表示法使用这些符号:

  • +方法包括下一个变量。

  • - - - - - -表示不包含下一个变量。

  • 定义一个交互,它是术语的产物。

  • 定义交互和所有低阶项。

  • 将预测器提升到电力,完全如此重复,所以还包括较低的术语。

  • ()组条件。

此表显示了Wilkinson表示法的典型示例。

威尔金森符号 标准符号术语
1 常数(拦截)
一个^ K., 在哪里k为正整数 一个一个2、……一个k
A + B 一个B
A * B 一个BA * B
- 答:B. A * B只要
- b 不包括B
a * b + c 一个BCA * B
A + B + C + A:B 一个BCA * B
* B * C - A: B: C 一个BCA * B* CB * C
* (B + C) 一个BCA * B* C

统计学和机器学习工具箱™表示法总是包含一个常量术语,除非您明确地使用该术语1

有关详细信息,请参见威尔金森符号

算法

  • 逐步回归是一种系统的方法,在解释响应变量时,根据线性或广义线性模型的统计显著性添加和删除项。该方法从一个初始模型开始,使用指定的modelspec,然后比较逐渐增大和减小的模型的解释能力。

    一步函数使用正向和向后逐步回归来确定最终模型。在每个步骤中,该函数搜索要添加到模型中的术语或要从模型中删除的术语“标准”名称-值对的论点。

    默认值“标准”对于线性回归模型是上交所的.在这种情况下,步骤行程一步linearmodel.使用p价值的F-统计来测试模型在每个步骤中有或没有潜在的项。如果一项目前不在模型中,则零假设是,如果将该项添加到模型中,其系数将为零。如果有足够的证据拒绝零假设,该函数将该项添加到模型中。相反,如果一项目前在模型中,零假设是该项系数为零。如果没有足够的证据来拒绝原假设,该函数将从模型中删除该术语。

    逐步回归采用这些步骤时“标准”上交所的

    1. 适合初始模型。

    2. 检查一组不在模型中的可用术语。如果有任何条款p-值小于入口公差(也就是说,如果将一项添加到模型中不太可能有零系数),则添加最小的一项p- value并重复这一步;否则,转到第3步。

    3. 如果模型中的任何可用术语都有p-值大于退出公差(即不能拒绝系数为零的假设),删除最大的项p- 留下并返回步骤2;否则,结束过程。

    在任何阶段,如果模型不包括作为高阶项子集的所有低阶项,函数都不会添加高阶项。例如,函数不会尝试添加术语X1, X2 ^ 2除非两X1x2 ^ 2已经在模型中了。类似地,该函数不会删除模型中保留的高阶项子集的低阶项。例如,函数不会尝试删除X1x2 ^ 2如果X1, X2 ^ 2保持在模型中。

    默认值“标准”对于一个广义线性模型“异常”stepwiseglm一步GeneralizedLinearModel按照类似的程序添加或删除术语。

    属性可以指定其他条件“标准”名称-值对的论点。例如,您可以指定Akaike信息标准、贝叶斯信息标准、r平方或调整的r平方的值的更改作为添加或删除项的标准。

    根据初始模型中包含的术语以及函数添加和删除术语的顺序,该函数可以从同一组潜在术语构建不同的模型。当没有单个步骤改进模型时,该函数终止。然而,不同的初始模型或不同的步骤序列并不能保证更好的匹配。从这个意义上说,逐步模型是局部最优的,但可能不是全局最优的。

  • 一步对分类预测器的处理如下:

    • 一个有绝对预测器的模型l包括水平(类别)l- 1指标变量。模型使用第一个类别作为参考级别,因此不包含参考级别的指标变量。如果分类预测器的数据类型为分类,然后您可以通过使用查看类别的顺序类别并通过使用reordercats自定义参考级别。

    • 一步对待一组l- 1指示器变量作为单个变量。如果要将指示器变量视为不同的预测器变量,请通过使用手动创建指示器变量dummyvar.然后使用指示器变量,除了适合模型时对应于分类变量的参考级别的字符。对于分类预测因子X,如果指定的所有列dummyvar (X)并以截距项作为预测因子,使设计矩阵秩亏缺。

    • 连续预测器和分类预测器之间的交互项l级别由元素 - 明智的产品组成l- 1具有连续预测器的指示器变量。

    • 两个类别预测因子之间的交互项l水平包括l- 1) * (- 1)指标变量包括两个分类预测水平的所有可能组合。

    • 不能为绝对预测器指定高阶项,因为指示器的平方等于它本身。

    因此,如果一步添加或删除一个分类预测器,该函数实际上在一个步骤中添加或删除一组指示器变量。类似地,如果一步通过分类预测器添加或删除交互项,该功能实际地添加或删除包括分类预测器的交互术语。

  • 一步考虑''(空字符向量),""(空字符串),<缺失>,<定义>TBL.X,Y缺少值。一步不使用符合缺失值的观察结果。的观察税收拟合模型的属性表示是否一步把每个观察结果都用在合适的地方。

选择功能

  • 使用stepwiseglm在初始模型中指定术语,并继续改进模型,直到没有任何添加或删除术语的步骤是有益的。

  • 使用addTermsremoveTerms添加或删除特定的术语。

介绍了R2012a