美文网首页
20190811各模型建立流程归纳

20190811各模型建立流程归纳

作者: 6bd9f7257faf | 来源:发表于2019-08-11 09:58 被阅读0次

    一、线性回归模型建立流程

          九大步骤:

          1、明确需求(确定因变量Y是什么)

          2、数据清洗,并不是删除数据

               2.1 处理缺失值

               2.2 处理异常值

               2.3 增加分类变量,如教育水平列的数据只有小学、中学、大学、硕士、博士五个值,则把‘中学、大学、硕士、博士’设置为4列,用0和1来赋值,1来表示是(注:不能把‘小学、中学、大学、硕士、博士’按1-5的顺序号赋值;另新加的分类变量中不能含有5个值,否则会出现线性相关)

          3、相关分析,用相关系数判断每个变量与Y的关系,一定要画散点图(避免相关系数的缺点发生)

          4、分割测试集和训练集,先随机抽取20%数据出来保留用作测试数据来验证模型,另外80%数据用作训练集来建模型。(注:①、分组的比例依据实际情况而定,20%和80%不是固定的。②、注意分类明显的数据抽取,比如样本中男性的数据只占有10%,而女性的数据占有90%。此时不能直接按随机抽取,因为我们男性和女性两个组的随机数据都要在总的随机数据中,这样建立的模型才贴近实际。解决方法是按比例分组随机抽样抽取数据)

          5、让计算机跑回归模型(F检验(检查系数是否都为0),t检验,调整R^2)

          6、模型调优

              6.1 检验残差是否正态分布,画正态概率图(也叫qq图)或用SW假设检验(样本数小于等于5000)或KS假设检验(样本数大于5000)。H_{0}:是正态分布→验证p> α/2。              解决非正态分布方法是对y取ln           

              6.2 检验残差是否出现同方差性,画散点图或BP检验(小样本适用)或White检验(大样本适用,准确度更高,会用掉大量自由度,\frac{\sum_{ } (x-\bar{x})^2}{n-c} 随着参数数的增多,C的取值会成几何型翻倍;即1百万的数据可能只取了50万数据作检验)。H_{0}:残差是同方差。

                     处理方法同方差方法:①对y取ln;②使用加权最小二乘(是备选方案不是最好的方法,第一种方法无法实现时使用)

              6.3 检验残差是否存在内生性(残差μ与自变量间出现相关性),遗漏自变量会发生,商业领域一般忽略这个问题,因为难以把所有的自变量找齐。

                     处理方法内生性方法: ①当样本量逐渐加大,内生性现象会逐渐趋于0;②Hausman检验H_{0}:无内生性。常用工具变量换用变量处理

              6.4 检验残差是否出现时间序列相关性,Rammsey 检验,H_{0}:无时间序列相关

                     处理方法内生性方法:①用时间序列方法处理;②把时间序列当作变量加入模型

              6.5 检验自变量间是否存在共线性,一般地,VIF>3,定为存在共线性(另外,出现普遍偏高情形,比如都是2.9几)

                     处理方法共线性方法:①主成分分析处理,会改变变量的原始属性,做预测并不需要用到原始属性的情形可用;②岭回归(\hat{β}=\frac{Cov}{Var+|h|} )或Lasso(\hat{β}=\frac{Cov}{Var+h^2} ),两种方法一定会存在偏差,若偏差不太大可以用这个方法,否则不行

          7、模型精修

               加入高次项(不宜太多太复杂),加入交互项(多个变量间不共用一个斜率时有用,改变斜率的目的,能改变线条为曲线,越贴近事实),加入新变量(如季节趋势(特殊节日导致销售特别高、淡旺季,如双十一)、时间趋势(可以过滤时间对其他变量的影响),目的是解除其他因素的影响,不宜多,最多加入2-3个)

          8、让计算机精修

                逐步回归(优化变量的选择),交叉验证(多次抽样跑数据,然后取出最优的β)

          9、模型测试

                 用测试集数据测试模型

    相关文章

      网友评论

          本文标题:20190811各模型建立流程归纳

          本文链接:https://www.haomeiwen.com/subject/lhyjjctx.html