当前位置: 首页 > 后端技术 > Python

统计科学讲座讲逐步回归

时间:2023-03-26 18:27:45 Python

01。前言我们之前谈到了多元线性回归。在本文中,我们将讨论逐步回归。什么是逐步回归?字面意思是,一步步回归。我们知道,多元回归中的meta是指自变量,multivariate是指多个自变量,即多个x。在这些多个x中有一个问题我们需要考虑,就是这些多个x是否都对y有影响。答案是有时有效,有时部分有效。对于那些无用的部分,我们最好不要让它加入到回归模型中。我们把这个筛选有效变量或剔除无效变量的过程称为变量选择。刚才我们提到了一个自变量有没有用,那么如何判断一个自变量有没有用呢?判断的依据是对自变量进行显着性检验。具体方法是在模型中加入一个自变量,残差平方和是否显着减小。如果有明显的减少,说明这个变量有用,可以把这个变量加入到模型中。不然解释的时候也没用。可以从模型中删除此变量。判断是否显着减少的标准是根据F统计量。我们已经讲过方差分析中判断F统计量的意义,大家可以去看看。变量选择主要包括:前向选择、后向踢、逐步回归、最优子集等,本文主要讲前三种。02.前向选择。前向选择可以理解为从头开始选择,因为模型一开始就没有自变量。具体步骤如下:Step1:取已有的k个变量和y建立回归模型,最后会得到K个模型和每个模型中变量对应的F个统计量及其p_values,然后进行独立的从显着性模型中选取F统计量最大的模型对应的变量,将自变量加入到模型中。如果k中没有一个模型显着,则选择结束。Step2:通过第一步,我们得到了一个显着的变量,并将这个变量加入到模型中。接下来,将剩余的变量继续添加到已经添加了一个变量的模型中,可以得到k-1个模型,然后在k-1个模型中选择F值最大且显着的变量继续添加到模型。如果没有显着变量,请选择End。重复以上两步,直到模型中不能加入显着变量为止,这就是前向选择。03.后向淘汰后向淘汰是与前向选择相对应的一种方法,是前向选择的逆方法。具体步骤如下:Step1:将所有自变量加入模型,建立包含k个自变量的模型。变量回归模型。然后去掉每一个自变量,得到包含k-1个变量的k个模型,比较这k个模型,看哪个变量减少模型的残差平方和最少,也就是影响最小的变量,把这个变量就是从模型中删除。Step2:通过第一步,我们删除了一个无用的变量。第二步,在已经删除的一个变量的基础上,继续删除剩余的变量,从模型中去掉最小化模型残差平方和减少量的自变量。中删除。重复以上两个步骤,直到移除一个自变量不会显着减少残差。这时候,剩下的变量都是显着的。04StepwiseregressionStepwiseregression是向前选择和向后踢的结合。就是这两种方法的交叉,即选择一次,同时淘汰。逐步回归在每次向模型中添加变量时使用前向选择,并将具有最大F统计量的变量添加到模型中。将变量加入模型后,向后消除当前模型中存在的所有变量,一直重复循环选择和淘汰的过程,直到最后增加变量不能导致残差平方和变小。关于逐步回归的Python实现,网上有很多现成的代码。只要原理清楚,代码就很容易看懂。