基本概念
方差分析(Analysis of Variance,ANOVA),又称“变异数分析”,1920年由英国数学家R.A.Fisher发明,通常用于两个以上的样本参数差别的显著性检验。
要求:各组观察值服从正态分布或近似正态分布,并且各组之间的方差具有齐性。
基本思想:将所有测量值间的总变异按照其变异的来源分解为多个部分,然后进行比较,评价由某种因素所引起的变异是否具有统计学意义(这里的"统计学意义",我的理解是使用分解后的方差构造检验统计量,利用其分布进行假设检验,说明其统计学意义)。
一点思考🤔
首先,我们需要认识到的一件事是,方差是数据信息的载体,研究没有(数据)变异的数据是没有意义的。
从数理的角度来说,方差度量的是一个随机变量或一组观测的离散程度。概率论中方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。而统计中的方差(样本方差)是每个样本值与样本均值之差的平方值的平均数。
而方差(或者说数据的变异),和"信息"的联系需要用信息论的观点去解释。事件的信息量和事件发生的概率相关,一个事件发生的概率越低,其传递的信息量越大。(最简单的例子就是,小明的高等数学一直都考100分,而在这次考试中他考了60分,这个事件信息量是巨大的,因为小概率的事件发生了。所以我们会去想探寻其中的原因,试卷难,还是小明退步了?这就是小概率事件信息量大的直观体现。)
在信息论中,一个随机变量的信息熵是这样定义的:
$$ H(X) = -\sum_{x \in \mathcal{X} }p(x)\log p(x) $$所以当一个随机变量只取一个确定值时,即$p(x)=1$。这个随机变量就不包含任何信息,信息熵为0。因为我们都知道它是一个常数!除此之外没有什么其他有用的信息。而与此相反的是,对于一个离散型随机变量,如果它服从均匀分布,即取每一种值的可能性相等,那么该离散型随机变量的信息熵是最大的。因为此时这个随机变量的不确定性是最大的,它取范围内的任何值都是等可能的!
在这样的思想下,我们不希望我们要研究的数据观测没有方差。没有方差就意味着数据没有变异,没有信息,没有研究的价值。所以各类统计模型的任务,不外乎去解释各类数据中的变异,研究现实中哪些因素导致了因变量的变异。如果建模的效果很好,我们甚至可以利用新的观测去准确预测未来时刻的因变量。
回到方差分析模型,其本质是一种方差分解技巧。"方差分析"事实上不是真正分析方差,而是分析用偏差平方和度量的数据的变异。Snedecor评价道,"它是从可比组的数据中分解出可追溯到某些指定来源的变异的一种技巧。"(这里的指定来源,理解应当是设计可比组时我们假定的各类影响因素。)
方差分析的假设检验
通过简单的数学推导(教材上有),我们可将总偏差平方和分解为
$$ \begin{align} S_T & = S_E+S_A \\ S_T & = \sum_{j = 1}^s\sum_{i = 1}^{n_j}(X_{ij}-\bar{X})^2 \\ S_E & = \sum_{j = 1}^s\sum_{i = 1}^{n_j}(X_{ij}-\bar{X} _{\cdot j})^2 \\ S_A & = \sum_{j = 1}^s\sum_{i = 1}^{n_j}(\bar{X}_{\cdot j}-\bar{X})^2 = \sum_{j=1}^s n_j (\bar{X}_{\cdot j}-\bar{X})^2\\ & s为可比组的组数,n_j为j组的观测数 \end{align} $$由于$S_T$衡量的是数据间总的变异/离散程度,$S_E$是组内变异(由随机误差和其他因素扰动产生),$S_A$是组间变异(衡量各水平效应的差异),Fisher设计了$\frac{组间方差}{组内方差}=\frac{S_A}{S_E}$这个统计量(显然,这是个F统计量),当实验组得到的数据使得该统计量足够大时,那么该单因素对试验的指标影响很大。
一点延伸
其实,我们再看回归分析中的F检验,与方差分析中的F检验有相同的味道。我们也是对总偏差平方和进行方差分解:$SST = SSR(回归平方和)+SSE(残差平方和)$,然后对$\frac{SSR}{SSE}$进行F检验。
而决定系数$R^2 = \frac{SSR}{SST}$,则衡量了回归的效果,看在我们选用的各类因素下,模型解释因变量变异的多少。当然不要过于追求R方,因为引入的自变量越多,R方也越大。
在机器学习中,我们有时也会使用R方这个指标衡量模型解释因变量变异的多少,进而对于一个模型的预测效果作出一个笼统的评价。