上一篇讲到了,模型的拟合,以及运用系统的plot函数进行简单的回归诊断,得到了四幅图,大致可以判断模型的假设是否成立,然而,这还远远没有结束,这一篇我们将着重讲讲模型的诊断与优化改进,将会用到几个包,以及有许多的新概念,而我所使用的语言可能不规范,但主要是为了好理解.将术语讲得通俗些.
所谓回归诊断就是,验证模型当初的几个假设是否成立,它们分别是正太性假设,线性关系假设,同方差性假设,独立性假设.另外还涉及模型的优化,分别是多重共线性,离群点,高杠杆点,强影响点,以及相应的变量的选择和模型的选择.接下来就一一讲解:
1.首先我们队模型的假设进行诊断如代码
可以看到正态性检验,返回三个点,说明这三个点没有通过正态性检验,同时我们还可以在图中看出确实有几个点在虚线外.
而线性检验,从图中看出基本上都能拟合出一条红色虚线,基本符合线性检验,
同方差检验得到P值为0.4,虽说不能推翻原假设,但是接受同方差的的假设也挺勉强.
对于假设诊断不符合的,我们就要采取措施来改进,看下面代码:分别是违反假设的改进方案,会给出建议的幂次指数来转化Y值或x值.由图可知拟合值的标准化残差不呈一条水平线,说明不符合同方差性,那么我们按照给的建议将Y值0.5次幂也就是开更号,得到模型b,然后么就发现模型b的检验结果就很符合.给出的建议值是1,图形也是水平的,
2.我们对模型的几个特殊的点进行优化
离群点:指拟合的理论Y值与实际观测值有较大的偏差,即残差较大的点.
从QQ图可以看出,用car包的outliertest可以检测
高杠杆点:自变量x的离群点,
可以计算帽子值,若大于3*p/n则为高杠杆值.p为模型的参数个数,n为样本数
强影响点:对模型的参数估计值影响不成比例的点.
用cook值可以检测,若> 4/n-k-1 则为强影响点.car包下的influenceplot可以检验. k为自变量个数包括交互项,n为样本数
3.模型的选择
嵌套型检验:大模型中要包含小模型,
AIC赤池信息:比较两个模型的AIC,谁更小谁就是好的模型.
4.变量的选择
逐步回归:分为向前每次添加一个好的变量到模型,向后每次删除一个不好的变量到模型,前后每次添加一个变量评价然后删除不好的变量
全子集回归:把所有可能都包含在内去一一比对
由图,越贴近直线的模型越合适:分别有三个模型 一个只包含hp 一个只包含wt 一个包含wt和hp,看见第3个模型最接近直线,故最好.