回归分析第6讲——基于R语言诊断线性回归
这一讲为实践内容,我们将学习如何使用R语言对已经建立的线性回归模型进行诊断。值得注意的是,模型诊断的方法很多,可用的函数也很多,所以并不局限于本讲所提供的方法。 本讲默认读者已经了解R语言的基本语法,能够在自己的电脑中成功编写和运行R脚本。 一、残差诊断 诊断模型,先看残差。对于残差诊断,我们往往从三个方面去考察: 等方差,即残差方差是否为常数; 正态性,即残差是否服从正态分布; 独立性,即各个残差之间是否独立。 1.1 等方差检验 要检验方差是否为常数,最直观的办法就是绘制残差图。绘制残差图时,要以残差值为纵坐标,但横坐标有很多选择,一般我们选择拟合值y^\hat yy^。对于残差图来说,一般会出现下面三种形式: 最左边是正常情况,也就是残差上下左右均匀地分布在直线Residual=0Residual=0Residual=0附近,没有任何多余地趋势。 中间是异方差,也就是残差分布左右不均匀,往往成放射状或收缩状。 最右边是非线性方差,也就是残差分布上下不均匀,可能需要对响应变量进行幂次变换。 我们来看一个具体的例子。我们使用faraway包中的savings数据集,...
回归分析第5讲——线性回归的诊断与优化
前面我们介绍了线性回归如何建立,如何做统计推断,以及如何完成预测。这一节我们来学习如何判断拟合的线性回归模型是否足够好,如果不好应当如何优化。为了一般性,本讲所使用的模型都是带截距项的、进行过中心化处理的线性回归模型,即: Y=αEn+X~cβI+eY=\alpha E_n+\widetilde X_c\beta_I+e Y=αEn+XcβI+e 另外,为了更好的进行说明,我们补充一点记号。我们已经知道: Y^=Xβ^=X(XTX)−1XTY\hat Y=X\hat\beta=X(X^TX)^{-1}X^TY Y^=Xβ^=X(XTX)−1XTY 我们记H≡X(XTX)−1XTH\equiv X(X^TX)^{-1}X^TH≡X(XTX)−1XT,这个矩阵有个专有名词,称为帽子矩阵(Hat Matrix)。 帽子矩阵是一个投影矩阵,所以它对称幂等,且有: rank(H)=tr(H)=p,HX=X,HEn=Enrank(H)=tr(H)=p,HX=X,HE_n=E_n rank(H)=tr(H)=p,HX=X,HEn=En 为了后续叙述方便,我们记帽子矩阵的对角元是hi...
回归分析第4讲——基于R语言实现线性回归
这一讲为实践内容,我们将学习如何使用R语言建立和拟合线性回归模型,并对模型和参数进行假设检验。 本讲默认读者已经了解R语言的基本语法,能够在自己的电脑中成功编写和运行R脚本。 一、线性回归的建立与解读 1.1 示例数据集介绍 本讲所使用的数据集是加拉帕戈斯群岛的物种数据,需要首先下载faraway包,并导入数据集gala: > install.packages("faraway")> data(gala, package = "faraway")> head(gala[,-2]) Species Area Elevation Nearest Scruz AdjacentBaltra 58 25.09 346 0.6 0.6 1.84Bartolome 31 1.24 109 0.6 26.3 572.33Caldwell 3 0.21 114 2.8 58....
回归分析第3讲——线性回归的假设检验
一、模型检验 一旦我们完成了线性回归的参数拟合之后,就要对模型进行检验。那么为什么要进行检验?目的无非有两个: 检测模型的显著性,即模型结构是否存在,在数学上也就是验证回归系数β1,⋯ ,βp\beta_1,\cdots,\beta_pβ1,⋯,βp之中至少有一个系数不为0,这样模型才会有线性成分,模型结构才会成立; 检验回归系数的显著性,即到底哪些回归系数可以认为不是0的,即真正对观测值yyy有贡献的是哪些项,这样我们才能精准地找到关键特征。 那么接下来我们就从一般线性回归开始,介绍模型检验的原理和方法。 1.1 一般线性回归的检验 为了不失一般性,并且将模型显著性和系数显著性检验统一起来,我们设模型为: Y=Xn×pβ+e,e∼N(0,σ2In)Y=X_{n\times p}\beta+e,e\sim N(0,\sigma^2I_n) Y=Xn×pβ+e,e∼N(0,σ2In) 假定rank(X)=rrank(X)=rrank(X)=r,给定已知矩阵Hm×pH_{m\times p}Hm×p,rank(H)=mrank(H)=mrank(H)=m,那么我们的假设...
回归分析第2讲——线性回归及其拟合
一、回归分析的概念 万事万物皆有联系。此消彼长是常态,同进同退不奇怪。如果我们想知道两个变量X,YX,YX,Y之间是否有关联,我们要怎么做呢? 很直接的想法就是测量多组XXX和YYY的观测值,之后绘制散点图,看看随着XXX的变化,YYY有没有发生变化。如果XXX增大,YYY也增大,说明两个变量是有关联的,并且是正向的关联;如果XXX增大,YYY却减小,说明两个变量是反向的关联。 再代数一点,假设在一次实验中,我们获得了两个变量X,YX,YX,Y的nnn组观测值(xi,yi)(x_i,y_i)(xi,yi),其中i=1,⋯ ,ni=1,\cdots,ni=1,⋯,n。我们希望通过这nnn组观测值来推断两个变量的关系,也就是找到这样一个关系fff,满足: Y=f(θ;X)Y=f(\theta;X) Y=f(θ;X) 其中θ\thetaθ是一个确定但未知的参数。 像这样的通过变量对应的大量观测值来推断关系fff的过程,在统计上就称为回归(Regression)。 ”回归“一词最早是由弗朗西斯·高尔顿提出的,用于描述他在优生学方面的发现。不过,现代的”回归“一词早已不等同于高尔顿所...
回归分析第1讲——预备知识
欢迎学习回归分析!在学习主要内容之前,我们需要一些预备知识,方便后续理解重要的公式和定理。当然,这里要讲的前置知识不包括也不限于: 微积分 线性代数 概率论 统计推断 Python R … 这些内容应当是最基础的知识,不在本讲的讨论范畴。如果有需要请自行学习,或者关注博主,博主后续计划发布基础知识的相关文章。 一、投影矩阵基本知识 1.1 幂等矩阵及其性质 幂等矩阵是指矩阵在进行幂次变换后与原始矩阵一致,也就是: P2=PP^2=P P2=P 幂等矩阵有如下基本性质: 幂等矩阵一定可对角化,特征值非0即1。 如果矩阵Pn×nP_{n\times n}Pn×n是幂等矩阵,那么In−Pn×nI_n-P_{n\times n}In−Pn×n也是幂等矩阵,其中InI_nIn是单位矩阵。 矩阵Pn×nP_{n\times n}Pn×n是幂等矩阵的充要条件是:rank(P)+rank(In−P)=nrank(P)+rank(I_n-P)=nrank(P)+rank(In−P)=n (不想阅读可跳过) 第3条性质的证明 首先,如果Pn×nP_{n\times n}Pn×n...