本文皆为个人看法,才疏学浅,如果有不妥不准确的对方,还请指正。有些数学推导可能显得不严谨,主要是为了数学基础薄弱的同学能看懂。
“自由度”是统计学中一个很不好懂的概念,因为它的定义有好几个,而每个定义都是从不同的侧面来解说,所以对它的理解要求你有一定的数学知识,因为只有具备了足够的数学知识你才发现这几个定义是相通的,否则你会感到无所适从。某一种定义你觉得自己懂了,然后去运用它,发现在有些情况下你无法运用你所懂的自由度知识去分析问题。但是如果运用另一种自由度的定义则可以解释清楚。
首先我们要明白统计学中的自由度到底有什么用。出现自由度的地方一般都会出现某种检验方法,比如 t 检验,独立性卡方检验,回归模型的模型显著性检验等等。要不是这些地方需要自由度,个人感觉统计学中的“自由度”就没必要出现了。
统计学中有三大分布:t分布,卡方分布和F分布,其中t分布和F分布都和卡方分布有关。两个独立的卡方分布统计量就能形成一个F分布的统计量,标准正态分布和卡方分布在一起又能构成一个t分布,要确定卡方分布的密度函数就必须先确定卡方分布的自由度,否则统计量的概率就没办法计算。
统计学中所有检验方法如果需要求自由度,则都会告诉你自由度怎么计算,比如单因素方差分析,组间平方和的自由度是总处理数减一,经典线性回归(带截距)中回归平方和的自由度是预测变量的个数。对于我们普通人来讲其实根本不需要知道计算自由度的原理,只有你在设计新的检验方法,并且其中涉及到和卡方分布有关的分布时你才需要知道怎么得到自由度,因为你要告诉使用你检验方法的人计算自由度。设计新的检验方法,对于一般人来讲有点太遥远了。
下面讲讲统计学中自由度的不同定义。
第零种定义:独立偏差/离差的个数称为自由度。偏差/离差指的是:数据减去均值,
。
这种定义简单明了,缺点是没告诉我们如何计算自由度。下面介绍一些更复杂的定义。
第一种定义:总体参数估计量中变量值独立自由变化的个数。比如样本方差是用来估计总体方差的,样本方差我们第一步是计算样本离差平方和,
,其中
,然后用SS除以 n 或者(n-1)。通常是除以n-1,因为这样样本方差是无偏估计,如果是大样本,则无所谓。样本方差 s 的自由度等于 SS 的自由度,为什么?因为按照第零种定义,它们的自由度是同一个东西。这里SS的自由度怎么算?根据定义来计算。SS中一共有n个随机变量,在计算SS之前必须先要估计总体平均值,于是用这n个样本估计平均值
,在真正计算SS的时候其实只有n-1个自由变量,因为其中一个变量的值一定是平均值的n倍减去另外n-1个值的和。n个独立随机样本,因为不知道总体的均值,在计算样本方差的时候要用样本估计总体平均值,结果就导致自由度减一,所以SS的自由度是n-1。
上面这段话不是很好理解,是因为我们抽样通常只抽样一次,要是进行多次抽样那就比较好理解了。第一次抽样,计算样本方差,你要计算样本均值。假如接着进行第二次抽样,这次抽样前假设样本的均值和第一次抽样一致,那么第二次抽样前n-1个值你可以随机从总体中抽取,但是最后一个值就不能随意抽取了,如果最后一个还是随机抽取,那么样本均值就不会等于第一次抽样的样本均值。第二次抽样和第一次抽样有区别吗,没区别。你完全可以把第二次抽样看成是第一次抽样。
如果总体均值是已知的,那么
自由度是多少?自由度是n,为何?因为你可以随机从总体抽取n个值,原因就是你没有了样本均值必须为
的约束。上面第二次抽样中就是因为必须要均值为
这个约束才导致最后一个值不能随意抽取。
第二种定义:自由度是样本容量n减去独立限制因素的个数。计算样本方差的时候
就是一个限制因素。从第二种定义可以很轻松的计算出SS的自由度是n-1。
第三种定义:看总体参数估计量中使用了几个总体参数估计量,假设使用了m个,则自由度是样本容量n减m。计算样本方差的时候使用了一个总体参数估计量(样本平均值
),所以SS的自由度是n-1。
以上三种定义碰到简单的情况还好,稍微复杂点就不好计算了。比如经典线性回归里面的回归平方和SSR的自由度。
第四种定义:自由度是一个随机向量的自由维度数,也就是一个向量能被完整描述所需的最少标准单位向量数(单位矩阵的列向量也叫“标准单位向量”)。
Fisher 给“Student(t分布的发现者)”解释自由度的时候是这么来解释的:将n个样本随机变量构造成一个随机向量,那么这个向量可以看成是n维空间的一个点,每有一个约束条件,则向量的自由维度减1。比如n个样本在求样本方差的时候要先计算样本均值,所以最后一个变量就和前面n-1个相关,这样随机向量只能有n-1个元素可以在n-1维空间自由取值。在Fisher指出老皮尔逊的卡方检验方法自由度计算错误的时候他是用“约束”这个词来解释的,这个“约束”有点像上面的定义二。
如果所研究的问题能抽象为线性模型,使用第四种定义计算自由度并不是一个很难的事情。样本容量为n的样本有n个随机变量,这n个随机变量可以表示为
,y是n个随机变量形成的n纬随机向量,I是n维单位矩阵,因为 I 的列空间是n维,Iy=y,所以y一定在 I 的列空间中,y的n个元素可以在n维空间自由取值,得出y的自由度是n。下面计算线性回归拟合值(回归方程部分)的自由度。
是估计出来的回归系数向量,很显然,拟合值向量
一定在设计矩阵X的列空间中,X列空间维度是回归系数个数,假设有p个预测变量,加上截距则回归系数个数是p+1,所以拟合值向量的自由维度就是p+1。回归平方和
是样本因变量的平均值,需要估计出来,失去一个自由度,所以SSR的自由度是拟合值的自由度减1,即p。因变量y的自由度是n,拟合值的自由度是p+1,那么残差向量的自由度是n-(p+1),为什么?
,残差向量
垂直于“设计矩阵列空间”,也就是它在设计矩阵列空间的垂直补空间中,y是n维,设计矩阵列空间是 p+1维,p+1