广义线性混合模型GLMM

广义线性混合模型GLMMGeneralized Linear Mixed Model),是广义线性模型GLM线性混淆模型LMM 的扩展形式,于二十世纪九十年代被提出。GLMM因其借鉴了混合模型的思想,其在处理纵向数据重复测量资料)时,被认为具有独特的优势。GLMM不仅擅长处理重复测量资料,还可以用于任何层次结构的数据(因为本质上又是多水平模型)。

提到GLMM,有必要先介绍几个容易混淆的概念:GLM、LMM、MLM、GMM 和GEE。

 

相关模型简介

广义线性模型 GLM

广义线性模型GLM,是大家经常接触的概念了,比如经典的Logistic模型。GLM是普通线性模型的扩展形式,由于普通线性回归的因变量必须服从正态分布,而实际问题中经常会遇到分类问题或计数问题的建模,GLM采用连接函数(Link Function),将因变量的分布进行了扩展,使得因变量只要服从指数分布族即可(如正态分布,二项分布,泊松分布,多项分布等)。

GLM 可以分解为 Random Component、System Component 和 Link Function 三个部分。Random Component 为残差部分,取决于因变量的分布;System Component 为预测部分,又称 linear predictor,是拟合的关键;Link Function 为连接变化函数,用于将指数分布族转化成正态分布,或者说,对预测结果进行非线性映射(建立 linear predictor与 label 之间的变换关系),是LM成长为GLM的关键环节。

需要强调的是,link function 是从 label 映射到 linear predictor的过程,link function的反函数称为响应函数 response function。响应函数 把 linear predictor 直接映射到了预测目标 label。较常见的link function如 logit函数(又称log-odds);较常用的响应函数如 logistic(又称sigmoid,是二分类中的相应函数)和 softmax(是sigmoid的扩展形式,用于多分类问题),这两个都是 logit 的反函数。

Logistic为例,如下(本部分摘自:GLM(广义线性模型) 与 LR(逻辑回归) 详解):

最后啰嗦一句,因变量为Bernoulli Distribution也就是对二分类问题建模,因变量为Binomial Distribution也就是对多分类问题建模,因变量为Poisson Distribution也就是对计数问题建模(注意区分计数问题和多分类问题)。

本文讲得比较简略,有两篇博客对GLM总结得比较棒,给出链接如下,值得一读:

GLM(广义线性模型) 与 LR(逻辑回归) 详解

广义线性模型GLM

 

线性混合模型 LMM

本部分参考自:《高级医学统计学》和 Wiki: Mixed_model

线性混合模型LMM,又称混合线性模型MLM、混合模型MM、多水平模型MLM、随机系数模型RCM、等级线性模型HLM 等。首先看一下 Wiki上对混合模型MM的介绍:A mixed model (or more precisely mixed error-component model) is a statistical model containing both fixed effects and random effects. (注意:fixed在这里译为固定,不同于mixed混合)

混合模型擅长于处理纵向数据(重复测量数据)和有缺失的数据,并且往往优于ANOVA等方法。

在混合模型中,需要区分两个概念:random effectsrandom errors

以矩阵定义混合模型,可以写成:

      y=X\beta+Z\gamma +\epsilon

y 是观测值的向量,服从多元正态分布,且平均值可以表示为 E(y)=X\beta

\beta 是固定因子的效应值(与X对应的固定效应参数向量)

\gamma 是随机因子的效应值,服从多元正态分布,且平均值为 E(\gamma)=0,它的方差为 Var(\gamma)=G

\epsilon 是残差的向量矩阵,它的平均值为 E(\epsilon )=0,它的方差为 Var(\epsilon )=R

X 为固定效应自变量的设计矩阵(可包括连续性变量和分类变量,甚至可包含交互项或二次项等),Z 为随机效应变量构造的设计矩阵。

[ 注意:切勿将固定效应狭义理解为主要变量,而应该是所有可能的解释变量(如分组变量和时间变量),包括这些变量之间的交互项。而随机效应则是假定的随机效应部分(这部分的意义应当从多水平模型的角度来理解了) ]

该模型为固定效应 X\beta 和随机效应 Z\gamma 的混合,且固定效应和随机效应均与响应变量为线性关系,因此称为线性混合模型。

注意:当满足球形检验时,重复测量资料的线性混合效应模型可退化为一般线性模型。

 

混合模型的假定为 \gamma\sim N(0,G)\epsilon \sim N(0,R),其中 Cov(\gamma,\epsilon )=0,即两者的协方差为0(二者互相独立)。可以给出Henderson's "mixed model equations" (MME):

      \begin{pmatrix} X'R^{-1}X & X'R^{-1}Z \\ Z'R^{-1}X & Z'R^{-1}Z + G^{-1} \end{pmatrix} \begin{pmatrix} \hat{\boldsymbol{\beta}} \\ \hat{\boldsymbol{u}} \end{pmatrix} = \begin{pmatrix} X'R^{-1}\boldsymbol{y} \\ Z'R^{-1}\boldsymbol{y} \end{pmatrix}

The solutions to the MME, \hat{\beta} and \hat{u} are best linear unbiased estimates (BLUE) and predictors (BLUP) for \beta and u(此处的u指的就是\gamma,有的版本习惯使用 u 来替代 \gamma 字符), respectively. 拟合混合模型还可以使用 EM 算法。

工具包:R (nlme包中的lme方法,或 lme4 包中的lmer方法), Python (statsmodels包)。

 

多水平模型 MLM

本部分参考自:《高级医学统计学》

多水平模型其实和线性混合模型LMM是等价的,只是理解的角度不同而已。MLM是从模型组建的多个水平来理解,关注构建过程;LMM则仅关注模型构建的结果(固定效应部分+随机效应部分)。多水平模型可以分层表述,然后整合成一个公式(即等价于LMM的公式)。下面以两水平模型为例,进行解读。

一个包含“2个水平1的解释变量(x和z)和1个水平2的解释变量(w)”的两水平模型可以表述为:

      \\ y_{ij}=\beta _{0j}+\alpha _1x_{1ij}+\beta _{1j}z_{1ij}+e_{ij} \\ \beta _{0j}=\gamma _{00}+\gamma _{01}w_{1j}+u_{0j} \\ \beta _{1j}=\gamma _{10}+\gamma _{11}w_{1j}+u_{1j}

其中,i=1,2,...,N (N是总样本量),j=1,2,...,J (J是水平2的解释变量的w的取值个数,假定w为分类变量)。则 y_{ij} 表示在变量w的第 j 种取值的情况中的第 i  个个体的结局测量值。第1水平方程(第1个等式)中,截距\beta _{0j} 带有下标 j,表示其值随 w 的取值变化而变化;系数\beta _{1j} 带有下标 j,表示变量z_{1ij} 对 y_{ij} 的效应随 w 的取值变化而变化;而系数\alpha _1 不带有下标 j,表示变量x_{1ij} 对 y_{ij} 的效应不随 w 的取值变化而变化。在两个第2水平方程(第2、3个等式)中,第1水平的回归系数变成了因变量。关于其他参数如e和u的规则,此处跳过(感兴趣的可查阅统计书《高级医学统计学》)。

从概念上来讲,该模型的建立是从顶向下的,先进行第1水平的参数计算(通过枚举 j 来获得 j 组回归系数\beta _{0j}\beta _{1j});然后使用估计的回归系数进行第2水平的参数计算,生成多个第2水平的方程。这种计算步骤是传统的计算方法,现在的计算其实是同步进行的。

如果将两个第2水平的方程代入到第1水平的方程中,可以得到:

      y_{ij}=(\gamma _{00}+\gamma _{01}w_{1j}+\alpha _1x_{1j}+\gamma _{10}z_{1ij}+\gamma _{11}w_{1j}z_{1ij})+(u_{0j}+u_{1j}z_{1ij}+e_{ij})

这是一个组合模型,该式右边分为两部分,第一个括号部分是各个解释变量及其交互项产生的效应,第二个括号部分是复合残差结构。第一部分便可对应为LMM中提到的固定效应部分,第二部分可对应为LMM中提到的随机效应部分(包括纯粹残差项)。

 

更一般地,两水平模型可表述为:

      \\ y_{ij}=\beta _{0j}+ \sum_{p=1}^P\alpha _px_{pij}+\sum_{q=1}^Q\beta _{qj}x_{qij}+e_{ij} \\ \beta _{0j}=\gamma _{00}+\sum_{m=1}^M\gamma _{0m}w_{mj}+u_{0j} \\ ... \\ \beta _{Qj}=\gamma _{Q0}+\sum_{m=1}^M\gamma _{Qm}w_{mj}+u_{Qj}

将Q个第2水平的方程代入到第1水平的方程中,可以得到:

      \\ y_{ij}=(\gamma _{00}+\sum_{m=1}^M\gamma _{0m}w_{mj}+\sum_{p=1}^P\alpha _px_{pij}+\sum_{q=1}^Q\gamma _qz_{qij}+\sum_{q=1}^Q\sum_{m=1}^M\gamma _{qm}w_{mj}z_{qij}) \\+(u_{0j}+\sum_{q=1}^Qz_{qij}u_{qj}+e_{ij})

该组合模型由两部分组成:固定效应部分(第一个括号中)和随机效应部分(第二个括号中)。

MLM的参数估计十分复杂,模型构建的步骤也比较繁琐,此处都不进行讲解。

 

高斯混合模型 GMM

高斯混合模型GMM(Gaussian Mixed Model)指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通常用于解决同一集合下的数据包含多个不同的分布的情况(或者是同一类分布但参数不一样,或者是不同类型的分布,比如正态分布和伯努利分布)。

设有随机变量X,则混合高斯模型可以用下式表示:

      

 为混合模型中的第k 个分量(component)。比如有两个聚类,可以用两个二维高斯分布来表示,那么分量数K=2 \pi_k 是混合系数(mixture coefficient),且满足:

      \sum _{k=1}^K\pi_k=1, 0\leq \pi_k\leq 1

实际上,可以认为\pi_k就是每个分量的权重。

GMM常用于聚类。如果要从 GMM 的分布中随机地取一个点的话,实际上可以分为两步:首先随机地在这 K 个 Component 之中选一个,每个 Component 被选中的概率实际上就是它的系数\pi_k,选中 Component 之后,再单独地考虑从这个 Component 的分布中选取一个点就可以了──这里已经回到了普通的 Gaussian 分布,转化为已知的问题。

可以用EM算法估计GMM参数。

此处介绍较为简略,有一篇博客讲得比较好,值得参考:高斯混合模型(GMM)及其EM算法的理解

另外,还有个概念叫广义矩方法,也简称GMM,其与GEE密切相关,可参考:广义矩方法(GMM)和广义估计方程(GEE)到底有什么区别

 

广义估计方程 GEE

广义估计方程(generalized estimating equation, GEE)用于估计广义线性模型的参数(其中线性模型的结果之间可能存在未知的相关性)。于1986年由Liang和Zeger首次提出,是在广义线性模型和重复测量数据中,运用准似然估计方法估计参数的一种用于分析相关性数据的回归模型。

详细介绍请参考这篇博客:广义估计方程GEE

 

广义线性混合模型 GLMM

广义线性混合模型GLMM,可以看做是线性混合模型LMM的扩展形式,使得因变量不再要求满足正态分布;也可以看作是GLM的扩展形式,使得可以同时包含固定效应随机效应

回顾一下,LMM模型的一般形式为:

      y=X\beta+Z\gamma +\epsilon

y 是N*1的向量,表示观测值;X是N*p的矩阵,表示固定效应自变量;\beta 是p*1的向量,表示固定效应参数向量;Z是N*q的矩阵,表示随机效应变量;\gamma 是q*1的向量(\gamma 在某些版本中也写成u),表示随机因子的效应值;\epsilon 是N*1的向量,表示残差(随机误差)。

      

GLMM在此基础上做了一些改动。令 linear predictor, \eta, 表示固定效应和随机效应的组合(随机误差不包含在内),即:

      \eta =X\beta+Z\gamma

令g(⋅)表示link function,用来连接 linear predictor 和 label,h(⋅)为g(⋅)的反函数,即response function。则有:

      g(E(y))=\eta , E(y)=H(\eta )=u, 因此:y=h(\eta )+\epsilon

此处的 link function 和 response function 的示例,请直接参考GLM中的介绍(但此处会额外接触到几个概念:带随机效应的Logistic回归中的 probability density function 或简称PDF,和带随机效应的Poisson回归中的probability mass function 或简称PMF)。结果的解读,和GLM中的解读类似,细微的差别仅在于随机效应部分的解读。

借鉴知乎上的一个理解:

举个例子,我们认为疗效可能与服药时间相关,但是这个相关并不是简简单单的疗效随着服药时间的变化而改变。更可能的是疗效的随机波动的程度与服药时间有关。比如说,在早上10:00的时候,所有人基本上都处于半饱状态,此时吃药,相同剂量药物效果都差不多。但在中午的时候,有的人还没吃饭, 有的人吃过饭了,有的人喝了酒,结果酒精和药物起了反应,有的人喝了醋,醋又和药物起了另一种反应。显然,中午吃药会导致药物疗效的随机误差非常大。这种疗效的随机误差(而非疗效本身)随着时间的变化而变化,并呈一定分布的情况,必须用广义线性混合模型了。对于固定效应来说,参数的含义是,自变量每变化一个单位,应变量平均变化多少。而对于随机效应而言,参数是服从正态分布的一个随机变量,也就是说对于两个不同的自变量的值,对应变量的影响不一定是相同的。

 

一篇文献以一个案例对以上几种模型进行了比较,值得一读:GEE、GLMM和MLM分析卫生重复测量资料的效果比较

 

参考资料

万崇华等. 高级医学统计学. 科学出版社.

Wiki: Generalized_linear_model

Wiki: Mixed_model

Wiki: Generalized_linear_mixed_model

Introduction to generalized linear mixed models

GLM(广义线性模型) 与 LR(逻辑回归) 详解

广义线性模型GLM

广义估计方程GEE

高斯混合模型(GMM)及其EM算法的理解

混合模型初探

周婷,兰蓝,邱建青,杜春霖,李晓松,张韬.GEE、GLMM和MLM分析卫生重复测量资料的效果比较[J].现代预防医学,2017,44(16):2881-2885+2899

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章