一、线性回归模型建立流程
九大步骤:
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检验,调整)
6、模型调优
6.1 检验残差是否正态分布,画正态概率图(也叫qq图)或用SW假设检验(样本数小于等于5000)或KS假设检验(样本数大于5000)。:是正态分布→验证p> α/2。 解决非正态分布方法是对y取ln
6.2 检验残差是否出现同方差性,画散点图或BP检验(小样本适用)或White检验(大样本适用,准确度更高,会用掉大量自由度,随着参数数的增多,C的取值会成几何型翻倍;即1百万的数据可能只取了50万数据作检验)。:残差是同方差。
处理方法同方差方法:①对y取ln;②使用加权最小二乘(是备选方案不是最好的方法,第一种方法无法实现时使用)
6.3 检验残差是否存在内生性(残差μ与自变量间出现相关性),遗漏自变量会发生,商业领域一般忽略这个问题,因为难以把所有的自变量找齐。
处理方法内生性方法: ①当样本量逐渐加大,内生性现象会逐渐趋于0;②Hausman检验:无内生性。常用工具变量换用变量处理
6.4 检验残差是否出现时间序列相关性,Rammsey 检验,:无时间序列相关
处理方法内生性方法:①用时间序列方法处理;②把时间序列当作变量加入模型
6.5 检验自变量间是否存在共线性,一般地,VIF>3,定为存在共线性(另外,出现普遍偏高情形,比如都是2.9几)
处理方法共线性方法:①主成分分析处理,会改变变量的原始属性,做预测并不需要用到原始属性的情形可用;②岭回归()或Lasso(),两种方法一定会存在偏差,若偏差不太大可以用这个方法,否则不行
7、模型精修
加入高次项(不宜太多太复杂),加入交互项(多个变量间不共用一个斜率时有用,改变斜率的目的,能改变线条为曲线,越贴近事实),加入新变量(如季节趋势(特殊节日导致销售特别高、淡旺季,如双十一)、时间趋势(可以过滤时间对其他变量的影响),目的是解除其他因素的影响,不宜多,最多加入2-3个)
8、让计算机精修
逐步回归(优化变量的选择),交叉验证(多次抽样跑数据,然后取出最优的β)
9、模型测试
用测试集数据测试模型
网友评论