R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
这节课讲解回归诊断!!!
项目实操——回归诊断
找到回归模型之后,我们仍需要解决以下的问题:
这个模型是否是最佳的模型?
模型最大程度满足OLS模型的统计假设?
模型是否经得起更多数据的检验?
如果拟合出来的模型指标不好,该如何继续下去?
我们需要从多个维度对回归分析的结果进行诊断
除了利用summary()函数统计出来的各个指标进行检验,还可以用plot()函数进行绘图,可以生成评价拟合模型的四幅图
下面我们来举个例子:
我们还是使用women这个数据集:
fit<-lm(weight~height,data=women) par(mfrow=c(2,2)) plot(fit)
#par()函数可以修改plot()函数的绘图参数,par()函数的mfrow选项参数可以定制图形的分布,默认是一张图上显示一幅图,可以使这个参数等于c这个向量,mfrow=c(2,2)表示横排显示两幅,纵排显示两幅,这样就可以将四幅图显示在一个画面内。
不是所有的数据都可以使用OLS模型进行拟合的,需要满足以下的前提条件:
正态性:对于固定的自变量值,因变量需要呈正态的分布
独立性:自变量之间相互独立
线性:因变量与自变量之间为线性相关
同方差性:因变量的方差不随自变量的水平不同而变化,也可以称作不变方差
第一幅图是残差与拟合的图,这幅图用来表示因变量与自变量是否呈线性关系,图中的点是残差值的分布,线为拟合曲线。如果图中是一个曲线的分布,说明可能存在二次项的分布
第二幅图是R中比较常见的qq图,QQ图用来描述正态性,如果数据呈正态分布,那么在QQ图中就是一条直线
第三幅图是位置与尺寸图,用来描述同方差性,如果满足不变方差的假设,那么图中水平线周围的点应该是随机分布的
第四幅图是残差与杠杆图,提供了对单个数据值的观测,从图中可以看到哪些点偏差较远,可以用来鉴别离群点、高杠杆点和强影响点,高杠杆点表示它是一个异常的预测变量的组合;强影响点表示这个值对模型参数的估计产生的影响较大,如果删除或者转换就可能违背客观数据的事实
但是这四幅图没办法说明数据是否具有独立性
只能从收集的数据中验证,要判断收集的数据是否独立,我们可以拟合函数再加一个二次项,再绘制一次图看一下。
fit2<-lm(weight~height+I(height^2),data=women) >opar<-par(no.readonly=TRUE) >par(mfrow=c(2,2)) >plot(fit2)
结果明显好一些:
抽样法验证:
1、数据集中有1000个样本,随机抽取500个数据进行回归分析;
2、模型建好之后,利用predict()函数,对剩余的500个样本进行预测,比较残差值
3、如果预测准确,说明模型可以,否则就需要调整模型。