搜索
查看: 955|回复: 0

我的StatQuest生物统计学专题——一般线性模型Pt1:线性回归

[复制链接]

3

主题

3

帖子

32

积分

新手上路

Rank: 1

积分
32
发表于 2018-9-15 20:15:24 | 显示全部楼层 |阅读模式
本帖最后由 竹叶 于 2018-9-15 20:15 编辑

我的StatQuest生物统计学专题——一般线性模型Pt1:线性回归

主要内容:
1)用最小二乘法拟合数据之间的线性关系
2)计算R2
3)计算R2的P值

用最小二乘法进行线性回归分析
所谓的线性回归,即利用回归分析来确定两种或以上变量间的依赖关系,简而言之如图1,利用一条直线来拟合老鼠体重与体长两个变量之间的线性相关性。
当我们对以上数据进行线性拟合时,首先需要画出一条贯穿这些数据点的直线(如经过其Y轴平均值的直线),并计算各数据点到直线的距离(“残差”),从而得到这些距离的平方和,即“残差”的平方和。图2
而当我们将直线稍微旋转后,又会得到新的残差及其平方和。图3
当我们不断地重复这样旋转、计算的步骤,我们会得到直线倾斜度与残差平方和之间的对应关系,从而找到最小残差平方和,即最小二乘方所对应的直线倾斜度。图4
得到倾斜度后,我们即可计算得出具有最小二乘方(least squares)的拟合直线所对应的方程式。而找到这条拟合直线的方法即称为“最小二乘法”。图5

计算R2
根据以上方程式,我们可以通过一只老鼠的体重数据来推断其体长,那么这个推断是否准确呢?该怎样判断呢?首先,我们需要计算R2。
R2的计算分为以下几步:
1)计算Y轴平均值,即老鼠体长平均值,图6
2)计算各数据点的离均差平方和,即SS(mean),图7
3)计算均方或方差,即Var(mean) = SS(mean) / n,其中n为数据点的个数,即样本数
4)计算拟合直线的最小二乘方,即SS(fit),和Var(fit) = SS(fit) / n,图8
比较图7,图8可知,老鼠体长的离均差平方和SS(mean)中的一部分可被拟合直线“解释”,即可由老鼠体重推断消除。而R2正是为了告诉我们该可解释部分的多少。
5)计算R2,R2 = (Var(mean) - Var(fit)) / Var(mean) = (SS(mean) - SS(fit)) / SS(mean)
该公式中,因为样本数n相同,因此方差计算可以转化为平方和的计算。若Var(mean) = 11.1,Var(fit) = 4.4,则R2 = 0.6 = 60%,意味着老鼠体长变异的60%可由老鼠体重推断消除,即老鼠体重对老鼠体长的可解释变异率为60%。

计算R2的P值
以上所举例子仅为两个变量的线性回归,而当我们引入更多变量时,事情将变得更为复杂……
例如,当我们同时拥有老鼠体重,尾长,体长三个变量,并希望用前两个变量解释第三个变量时,我们需要一个三维坐标系来进行回归拟合,而拟合的结果会形成一个包含三个参数的平面,而非两个参数的直线。图9
图9中的方程式为该拟合平面的方程式,x代表体重,z代表尾长,即已知老鼠体重和尾长,则可以根据该方程式推断其体长。因此,我们可以计算推断值和实际值之间的残差,通过求平方和来计算R2。图10
假设,老鼠尾长与体长之间并没有相关性,即加入z变量以后计算所得的SS[fit]并不会变小,则方程式中Z变量前的常数为0。而这也意味着当我们加入更多的变量时,SS(fit)的值永远不会变大,即较多的变量所算得的SS(fit)的值永远等于或优于较少的变量。图11
我们假设,由于某些不可知的随机误差,图11中硬币丢出的图案与老鼠体长之间存在轻微的相关性,即体长较短的老鼠略微倾向于丢出硬币中带字的一面,那么我们最终计算所得的SS(fit)的值会变小,而R2会优于没有这一参数的结果。很显然,我们知道,二者之间不存在相关性,R2的优化只是因为引入了更多的参数。因此,为了避免这样的结果,人们引入了矫正R2值("adjusted R2")这个概念,以期通过方程式中所含参数的数量来评判R2值。
另一个极端例子,当我们的数据点只有两个的时候,我们所计算出的任意两个变量之间的R2均为0,因为两点决定一线,我们所拟合出的直线永远可以完美地贯穿所有的数据点。
因此,我们需要一个p值来判断R2值的统计学显著性,而p值的计算来自于F值的分布。上述例子中R2值的计算公式可以转换另一种表述,图12:
而F值的分母较R2值略微不同,图13:
转换为如下公式,图14:
图14中红框部分为自由度,通过它们将平方和转化为方差,并最终计算得到F值。其中p(fit)是拟合直线方程式中的参数个数,p(mean)是平均值线中的参数个数,n为样本总数,图15:
因此,数据拟合度越好意味着F值越大。那么F值是如何转化为p值的呢?
以老鼠为例,首先我们生成一个包含两个变量的随机数据集,并计算其SS(mean)和SS(fit),从而得到该数据集的F值。重复此步骤,则我们可以得到若干个F值,并最终得到F值的分布。图16
在老鼠体重和体长的例子中,我们通过计算得到的F值为6,则p值等于以上若干F值中大于等于6的F值的个数除以所有的F值的个数。图17
在实际应用中,为了避免大量的重复计算,人们总结除了F值的分布规律,并绘制了F分布曲线。图18
从F值的分布可以看出,当参数个数相同时,样本量越大,F分布曲线下降越快,即p值越小。

综上,在线性回归中,R2值表示变量之间的相关性,R2值越大意味着方程式的拟合度越好;p值指示该相关性是否可信,p值越小则方程式的可信度越高。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x



上一篇:StatQuest生物统计学专题(03)-标准误、标准差与置信区间
下一篇:我的StatQuest笔记: 重复与有效样本量
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-10-21 09:14 , Processed in 0.032504 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.