回归建模的完整流程


==建立回归模型的一般步骤如下图==

img

1、具体(社会经济)问题

当我们想去解决一些现实生活、经济问题时,需要将具体问题量化成数据,然后通过观察与揭示事物(数据)之间的内在联系得出规律,从而达到解决现实经济问题(及时止损、预测),奔着这个目标产生了一些列的可行性问题。

2、设置指标变量(量化具体问题)

  • 可行性问题已经产生,接下来就要根据问题研究的目的设置==因变量 y==,然后选取一些和因变量y有统计关系的==自变量 x1、x2…==

这里一定要明确一点:什么是因变量 y 和自变量 x,其实通俗来理解就是下图中的因果关系

img

我们需要通过经济变量(要研究的) ‘果’ 选出一些影响它且合理的变量 ‘因’,在回归模型中对于这两类变量有一些术语需要了解

    • 因变量(果)也被称为被解释变量、内生变量;
    • 自变量(因)也被称为解释变量、外生变量;

==注意==

  • 1:在变量选择这一块,研究不同的问题领域跨度大、专业性强,对于完全不了解的领域需要和这方面的专家、或者有经验的人士询问合作。这样可以更好的帮助我们确定研究问题的模型变量,做到不耻下问 。

  • 2:回归模型的解释变量选取个数上并不是越多越好,若选取的变量之间有较大的信息重叠,就会出现==共线性问题==,并且变量多导致的计算量大,误差也大,进而导致最终模型参数精度也不高。

一般在选取指标变量时往往不能一次完全正确,需要反复调整找到最合适的指标变量。

3、收集、整理数据

指标确定之后,接下来就是搜集需要的指标数据了。要搜集样本数据可分为时间序列数据和横截面数据。

  • 时间序列数据:时间序列数据就是按照时间顺序排列数据,如下图,各指标数据跟着时间在变化:

    • img
  • 横截面数据:横截面数据即在同一时间截面上统计的数据集,如2018年我国各省市GDP数据

    • img

==注意==:时间序列数据容易产生随机误差项的序列相关(处理方法:差分法)

数据清洗

  1. 缺失值处理
  2. 异常值处理:一般大于3倍标准差的值视为异常值
  3. 分类变量的处理:将分类变量改为多列进行处理
  • 备注:异常值一般不要直接处理,了解一下是什么情况再行处理,有必要的单独拎出来

4、回归模型的确定

上一步骤中,数据已经准备好,接下来就要从这些数据中提炼出一套宇宙公式–回归模型(数学形式)。

1、相关性分析

首先第一步我们需要在笛卡尔坐标系中画出这些样本点的散点图。

  • 每个自变量x都和y跑一下相关系数,画个散点图,肉眼判断一下相关性,初步筛选适合放到模型里的自变量。

img

==为什么要先画散点图呢?==

我们知道回归模型的种类有多种,如线性回归非线性回归…。画出散点图,我们可以根据散点图的分布形式大致确定该建立哪一种回归模型才是较合适的。

如果根据散点图实在无法确定模型的形式时,则可以将有争议的模型分别进模拟,然后从模拟结果中选出模拟效果最好的一个作为最终的理论回归模型。

img

5、模型参数估计

当回归模型的的具体分类选取确定后,接下来就要对模型中的未知参数进行估计,常见的也是最最经典的参数估计方法为:==最小二乘法==。

在最小二乘法的基础上又衍生出了==偏最小二乘法==、==主成分回归==、==岭回归==等,他们都是为了解决不满足模型基本假设而衍生出来的新方法。

6、模型检验与修改

初步的回归模型建立好后,还不能直接用于实际应用,模型是否正确解释问题指标之间的因果关系还是个未知数,此时需要去检验模型的可行性。

通常对模拟有效性的检验有两种方法:

1 统计性检验

img

  • F检验:所有回归系数是否为0
  • T检验:每一个回归系数是否为0
  • R²:一元回归直接看R²,多元回归看调整后的R²

2 具体问题(经济)意义检验

模型侧面揭示了具体的社会经济问题,例如我国GDP增长量与银行贷款发放量、耗电量等之间的关系从经济理论是上看是正相关关系,但是模型中的回归系数若为负数,则这个模型也是没有意义的。造成这种现象的原因可能有:自变量之间存在多重共线性、数据质量问题等。

模型需要通过统计检验和经济意义检验共同检验通过后才是有效可行的。

7、模型调优

1、线性回归模型

只要是满足高斯马尔科夫假设,就是理论上最优无偏的模型,对着这个假设依次调整

  • 1、残差为正态分布:-检验数据是否为正态分布有两个方法(sw:主要用于样本数小于5000的检验,ks:主要用于大于5000的样本数;两个检验的原假设H0:数据集为正态分布);若残差不是正态分布:最简单有效的办法就是对因变量y取自然对数
  • 2、残差是否为同方差:-BP检验、WHite检验(精确度更高,但会用掉大量的自由度,样本量足够大的时候使用,否则用BP检验);原假设都是:残差是同方差;若出现异方差也可使用对因变量Y取自然对数的方法,若效果不好还可以用加权最小二乘法(给β系数加一个权重,优点是无论多强的异方差都能消除,缺点是权重有时候算不出来)
  • 3、不可以出现内生性(所谓内生性就是自变量x和残差存在线性相关):-商业领域出现内生性涉及的范围太广,一般忽略,若是一些比较精确的case则需要考虑内生性的问题
  • 4、自变量x之间不能有共线性:方差膨胀因子VIF,若VIF普遍偏高又不是很高(三五左右)则需要考虑影响,使用主成份分析(奇异值分解,缺点是会改变变量的原始属性),保留原始属性使用岭回归或者lasso回归(最小二乘法的变种,优点是适用范围较广,缺点是用了这个算法预测模型一定有偏,但影响不大的情况下可以放心使用)
  • 5、残差是否有序列相关性(如时间序列):可以用高弗雷检验(比dw检验更新更好)

8、模型精修

  1. 添加交互项:改变斜率,如年龄*收入
  2. 高次项:曲线相关
  3. 添加时间、季节趋势等相关系数

9、逐步回归

  1. 计算出后判断哪些变量最适合往模型里放
  2. 交叉验证(所谓交叉验证举个例子:比如100个数据集,第一次随机抽取10个,剩下90个跑回归模型,再由10个测试回归模型,然后将10个数据放回,再如此循环,对比后保留预测能力最好的模型)

10、回归模型的应用

经过以上的种种九九八十一难,终于可以将该模型用于实际生活、经济问题上了。

我们可以从模型的回归系数上发现所研究的变量之间的结构关系,从而给出量化后的评价与建议。

==调控==:确定好的回归模型反馈了经济变量之间的因果关系后,根据已知结果的情况下调整具体的经济指标数据等。

例如:为了降低通货膨胀指标为5%以下,可以根据回归模型确定货币发行量、银行的存款利率等。

==预测==:可以根据回归模型预测我国2022年的国民收入等。

以上几个步骤就是一个回归模型建立到使用的全部流程,模型的修改往往要反复修正后才能得到一个理想模型。这个反反复复修改模型的过程可以从写论文中感触到。

参考


文章作者: Axieyun
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Axieyun !
评论
评论
 上一篇
2022-10-29 Axieyun
下一篇 
abd使用 abd使用
2022-07-24 Axieyun
  目录