跳至主要内容

多层次建模:数据科学家的综合指南

了解多层次建模在分析层级数据结构中的重要性。学习如何利用固定效应与随机效应同时刻画组内与组间变异,并在教育、医疗与社会科学等领域挖掘更深层洞察。
· 15分钟 阅读

使用 AI 探索

在很多情况下,我们会遇到嵌套或层级数据,例如班级中的学生、医院中的患者,或同一受试者随时间的重复测量。我们往往倾向于使用传统线性方法建模。然而,这些标准统计模型无法捕捉此类嵌套结构中的复杂关系,从而导致结论偏差。在这种情况下,多层次建模(MLM),也称分层或混合效应建模,可以通过考虑群体层面特征对个体结果的影响,有效处理这种层级结构。

MLM 广泛应用于教育、医疗、心理学与社会科学等领域,因为它能够提供超越单层模型的细腻洞察。通过同时建模固定效应与随机效应,MLM 能够捕捉组内与组间的变异,更充分、准确地反映真实世界现象。本文将探讨多层次建模的基本原理、应用场景,以及它在复杂数据分析中的优势。阅读完本文后,请务必查看我们强烈推荐的完整课程:Hierarchical and Mixed Effects Models in R。

什么是多层次建模?

在社会科学、教育和流行病学等数据往往具有自然层级结构的领域,MLM 往往更为合适。在这些学科中,数据通常聚类成组:学生隶属班级,患者隶属医院,或问卷回答隶属社区。

以教育研究为例,MLM 可用于研究个体学生表现如何不仅受学生自身因素(如学习习惯)影响,还受班级或学校层面变量(如教师经验或学校资源)的影响。类似地,在流行病学中,多层次模型分析个体健康结局如何同时受个人特征和其所处环境(如社区或城市)影响。在社会科学中,研究者常用 MLM 来考察个人态度如何受到个人信念与群体规范的共同塑造。

单层模型假定每个观测彼此独立,而 MLM 通过引入固定效应与随机效应承认簇内相关性。固定效应刻画数据集范围内系统性的平均关系,随机效应则解释簇内的变异——例如班级、医院或社区之间的差异。这种双重方法不仅控制簇内依赖性,也揭示高层变量如何与个体特征交互。

何时需要多层次建模?

传统回归模型假定一个观测值不受另一个观测值的影响,即独立性假设。当数据来自一个同质群体且观测之间互不影响时,这一假设可能成立。然而在层级数据中,这一假设往往被违背,因为簇内个体(如同一班级或医院中的个体)彼此更相似,而与其他簇的个体差异更大。

例如,在教育研究中,同一学校的学生共享相似资源、教学质量和地方法规,导致他们的表现存在依赖性。在医疗研究中,同一医院接受治疗的患者可能经历相似的护理水平或对治疗有类似反应,从而在健康结局中引入聚类。

当在层级数据中忽视独立性假设会引发以下问题:

  • 标准误低估:传统模型假定独立,常在聚类数据中产生更小的标准误,导致对统计显著性的过度乐观判断。
  • 系数估计偏误:未考虑聚类会使系数估计产生偏差,难以分辨个体层面与群体层面变量的效应。

如何识别是否需要多层次模型

当数据具备以下一项或多项特征时,多层次模型通常适用:

  • 观测被分组于更大单元之内(如学生隶属班级)。如前所述,每个单元都可能影响个体结果。
  • 簇内观测彼此更可能相似。通常可通过计算组内相关系数(ICC)进行检查,它衡量因群体差异导致的方差占比。
  • 如果我们希望理解个体层面与群体层面变量对结果的共同影响(如学生努力和学校资源共同影响成绩),MLM 是合适选择。

用一个例子来说明。设想一项研究考察学生学业表现。单层模型会将每个学生视为独立观测,而忽视同一学校学生之间可能更相似的事实。采用 MLM,我们可以同时建模学生层面变量(如学习时长)与学校层面变量(如人均经费或师生比),从而准确捕捉两个层面的影响。

以下是 MLM 在多种真实场景中的应用方式:

  • 在教育领域,MLM 通过同时考虑学生层面(社会经济地位、学习习惯)与学校层面因素(经费、教师经验)来分析学生表现,揭示学校资源是否在个体差异之外进一步影响学生结果。
  • 在医疗领域,MLM 让研究者在考量患者层面(年龄、健康状况)与医院层面变量(设施质量、员工经验)的同时,识别医院特征(如护患比)是否影响康复率。
  • 在纵向研究中,MLM 非常适合跟踪个体随时间的变化(如治疗过程中的心理健康),同时纳入时间特定因素与个体因素,帮助区分会话层面与整体进展的效应。
  • 在公共卫生中,MLM 通过同时考虑个体(疫苗接种状况)与社区层面因素(人口密度、干预措施)来理解疾病传播,厘清哪些社区策略(如宣传活动)能有效降低传播。
  • 在团体治疗研究中,MLM 同时考虑个体(自尊、治疗投入)与团体层面动力(凝聚力、带领者经验),展示改进有多少源自个人与团体影响,从而指导更优的治疗结构。

在上述领域中,MLM 能捕捉单层模型可能忽略的依赖性,从而制定既面向个体需求又兼顾结构性因素的干预方案。

多层次建模的关键概念

MLM 的主要组成包括固定与随机效应、中心化技术、协方差结构以及数据结构。下面逐一说明其含义,以及如何应用与解读。

固定效应 vs. 随机效应

在 MLM 中,固定效应估计被认为在所有分析单元中一致的关系。这些系数的解释类似于传统回归模型,并普遍适用于所有群体或簇。例如,若我们研究学习时长如何影响各学校的考试成绩,学习时长的固定效应就假定这一影响在所有学校相同。

相对地,随机效应通过估计可在群体或簇间变化的参数,允许群体间存在差异。它们刻画群体层面对整体固定效应的偏离,例如一些学校的平均分天生高或低。就像线性回归有截距与斜率一样,MLM 的随机效应通过随机截距与随机斜率来参数化。

随机截距用于建模簇之间基线(截距)的差异。例如,随机截距允许每所学校拥有独特的平均成绩,反映学校间基线表现的差异。

随机斜率用于刻画自变量与因变量之间的关系在簇间的变化。如果学习时长对成绩的影响在不同学校有所不同,可用随机斜率来建模,使每所学校都拥有独特的学习时长—成绩关系。

何时使用固定与随机效应

当我们假定所有簇间关系一致时,通常使用固定效应;当我们预期群体间存在差异时,随机效应更有用。尤其当有证据表明预测变量与结果之间的关系在不同簇中会变化时,随机斜率尤为重要。

总体均值中心化 vs. 组内均值中心化

中心化是一种用于调整预测变量并提升多层次模型可解释性的技术。

  • 总体均值中心化:将每个预测变量相对于总体均值(跨所有簇的均值)进行中心化。该方法有助于将截距解释为预测变量处于平均水平时的预测结果。
    例:研究学习时长对跨校成绩的影响时,围绕总体均值对学习时长中心化,可将学习时长固定效应解释为跨所有学校的平均效应。
  • 组内均值中心化:将每个预测变量相对于其所在组或簇内的均值进行中心化。该方法有助于区分预测变量在簇内与簇间的效应,适用于我们关注簇内变动如何影响结果的情形。
    例:对学习时长进行组内均值中心化,可将某个学生的学习时长效应相对于其学校平均水平来解释,有助于分离校内效应与校际差异。

在总体均值与组内均值中心化之间选择

当我们关注预测变量相对于总体均值的效应时,适合采用总体均值中心化;当必须区分组内效应与组间效应时,组内均值中心化更为有用。例如,如果我们希望在各自学校的平均学习时间语境下比较学生的学习时长,组内均值中心化可使这类组内比较更清晰。

协方差矩阵

MLM 中的协方差矩阵对于理解簇内与簇间的变异至关重要,是解读随机效应与残差结构的关键:

  • 残差协方差矩阵刻画未被固定或随机效应建模覆盖的簇内观测间相关性。
  • 随机效应协方差矩阵刻画随机效应(包括随机截距与随机斜率)的变异,以及簇间依赖结构。例如,在含随机斜率的模型中,该矩阵揭示斜率如何在簇间变化。

协方差在 MLM 中的重要性

MLM 的协方差结构使模型能够正确估计标准误与系数,考虑到聚类数据中的依赖性。恰当设定协方差结构有助于模型准确反映簇内与簇间关系,从而获得更可靠的推断。

嵌套结构 vs. 交叉分类结构

识别数据结构(是嵌套还是交叉分类)是构建准确 MLM 的关键一环:

  • 嵌套结构指一个层级的数据完全包含于另一个(父层级)之内,例如学生隶属于学校。
  • 交叉分类结构无法整齐地归入单一层级,因为低层单元可能隶属多个高层单元。这类结构需要更复杂的建模。教育研究中一个例子是,学生可能同时按社区与学区分类。每个学生的社区与学校组合独特,形成交叉分类结构。

确定正确的数据结构

要确定结构,可评估低层单元是否只隶属一个高层单元(嵌套)或多个高层单元(交叉分类)。正确识别结构有助于 MLM 准确捕捉真实世界中的数据依赖关系并提供有意义的见解。

多层次模型的实现

接下来我们将在 R 中使用lme4包来实现 MLM,步骤如下。

步骤 1:准备数据

我们创建一个嵌套的合成数据。学生嵌套于学校中,每一行代表一个学生,并包含学校分组变量。

# Create the data frame
our_multilevel_data <- data.frame(
  StudentID = 1:20,
  SchoolID = c("A", "A", "B", "B", "A", "A", "B", "B", "A", "B", 
               "A", "C", "C", "C", "C", "A", "B", "C", "B", "C"),
  StudyHours = c(5, 3, 4, 6, 2, 7, 5, 8, 6, 3, 
                 4, 5, 6, 2, 7, 9, 2, 8, 4, 3),
  TestScore = c(80, 70, 85, 90, 60, 95, 88, 92, 85, 75, 
                72, 78, 83, 65, 89, 96, 67, 91, 79, 68)
)

# Display the first 5 rows of the data frame
head(our_multilevel_data, 5)
StudentIDSchoolIDStudyHoursTestScore
1A580
2A370
3B485
4B690
5A260

步骤 2:安装并加载 lme4 库

lme4 是 R 中广泛用于多层次建模的库。按如下方式安装并加载:

# Install lme4 if you haven't already
install.packages("lme4")

# Load the library
library(lme4)

步骤 3:拟合两层随机截距模型

在此示例中,我们将TestScore作为结果变量,StudyHours作为预测变量,同时考虑学校之间的差异(随机截距)。该模型为每所学校估计一个截距,使其拥有独特的基线分数。

在lme4中,公式语法使用(1 | SchoolID)来为分组变量SchoolID指定一个随机截距。

# Fit a two-level random intercept model
our_multilevel_model <- lmer(TestScore ~ StudyHours + (1 | SchoolID), data = our_multilevel_data)

该模型包括:

  • StudyHours 的固定效应:估计学习时长对考试成绩在所有学校间的平均影响。
  • SchoolID 的随机截距:允许不同学校的截距(基线成绩)变化。

步骤 4:查看摘要与模型输出

拟合模型后,使用summary()函数查看结果,其中包含固定效应估计、方差分量与标准误。

# Summary of the model
summary(our_multilevel_model)
Linear mixed model fit by REML ['lmerMod']
Formula: TestScore ~ StudyHours + (1 | SchoolID)
   Data: data

REML criterion at convergence: 105.7

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-1.81620 -0.59553  0.03922  0.27094  1.86051 

Random effects:
 Groups   Name        Variance Std.Dev.
 SchoolID (Intercept)  9.41    3.068   
 Residual             11.17    3.343   
Number of obs: 20, groups:  SchoolID, 3

Fixed effects:
            Estimate Std. Error t value
(Intercept)  56.7194     2.6280   21.58
StudyHours    4.7643     0.3612   13.19

Correlation of Fixed Effects:
           (Intr)
StudyHours -0.682

该输出包括:

  • 固定效应:StudyHours的系数(估计值),显示学习时长对成绩的平均影响。

  • 随机效应:截距的方差分量,反映校际差异。

  • 残差方差:校内变异(误差项)。

步骤 5:解读关键结果

现在来理解这些结果:

固定效应估计

摘要中的固定效应告诉我们StudyHours对TestScore在学校之间的平均影响。

  • 截距:学习时长为零的学生的平均分数。
  • 斜率(StudyHours):每增加一小时学习时间,成绩的平均提升幅度。该估计适用于所有学校。

随机效应方差分量

随机效应代表群体层面的变异(如学校之间)。输出中 SchoolID 的随机截距方差 9.14 表明学校平均分的差异程度(标准差约为 3),捕捉学校间基线表现的差别。

残差方差

残差方差 11.17 表示组内方差(例如同一学校学生之间的差异)。

组内相关系数(ICC)

ICC 量化组间方差所占比例,有助于评估是否需要使用 MLM。较高的 ICC 表明结果变量的显著变异源于组间差异。

ICC 的计算如下:

# Extract variance components
school_variance <- as.numeric(VarCorr(our_multilevel_model)$SchoolID[1])
residual_variance <- attr(VarCorr(our_multilevel_model), "sc")^2

# Calculate ICC
ICC <- school_variance / (school_variance + residual_variance)
ICC
0.4571434

ICC 接近 1 表示大部分变异来自群体层面;接近 0 则说明组内变异占主导。一般来说,ICC 高于 0.1 或 0.2 即提示需要多层次方法。在此我们得到约 0.46 的 ICC,表明有必要采用 MLM。

步骤 6:额外的模型调整

接下来可以进行一些模型调整。

加入随机斜率

如果StudyHours的效应在学校间存在差异(有的学校关系更强或更弱),可为StudyHours添加随机斜率:

# Model with random slope for StudyHours
model_slope <- lmer(TestScore ~ StudyHours + (StudyHours | SchoolID), data = our_multilevel_data)

该模型为每所学校估计一个独特斜率,使学习时长与成绩之间的关系可在学校间变化。

模型比较

使用anova()函数比较含与不含随机斜率的模型,以检验增加复杂度是否改善拟合。

# Compare models
anova(our_multilevel_model, model_slope)
Data: data
Models:
model: TestScore ~ StudyHours + (1 | SchoolID)
model_slope: TestScore ~ StudyHours + (StudyHours | SchoolID)
            npar    AIC    BIC  logLik deviance  Chisq Df Pr(>Chisq)
model          4 116.44 120.43 -54.221   108.44                     
model_slope    6 119.31 125.28 -53.655   107.31 1.1331  2     0.5675

显著差异表示随机斜率改善了模型。此处加入斜率后并无显著差异,AIC 与 BIC 的数值亦体现了这一点。

多层次建模的进阶主题

在处理微妙数据模式时,采用贝叶斯方法与高级数据结构可带来更深入的洞察。以下是超越标准层级结构的高级 MLM 技术概览。

1. 随机斜率与跨层交互

跨层交互

跨层交互使我们能够探索一个层级(如个体)上的关系如何随更高层级(如群体)因素而变化。当低层预测变量的效应依赖于高层特征时,这些交互尤为重要。

例:研究不同学校学生的学习时长与成绩关系。跨层交互可帮助我们理解,学习时长对成绩的影响是否会随学校层面变量(如经费或教师平均经验)而改变。

在这种情况下:

  • 学习时长的随机斜率允许其效应在学校间变化。
  • 跨层交互用于建模学习时长—成绩的关系是否在高经费学校更强。

当群体语境(如学校或地区)可能影响个体层面行为时,跨层交互尤为有用,可揭示群体特征如何增强或削弱这种关系。

用随机斜率捕捉交互

随机斜率允许我们在群体间对预测变量与结果之间关系的变异进行建模。当我们怀疑某个预测变量(如学习时长)的效应在不同群体(如学校)间并不一致时,此技术尤为有用。通过指定随机斜率,模型可捕捉群体特异的变异。

在以下情况下使用随机斜率:

  • 有证据表明预测变量与结果的关系在群体间显著变化。
  • 您希望了解个体层面效应如何在群体间不同,以及群体层面变量是否调节这些效应。

2. 超越层级结构的多层次模型

传统 MLM 假定严格的层级,但现实数据常更为复杂,个体可能同时隶属多个不构成简单层级的群体。

交叉分类模型

交叉分类模型适用于低层单元同时嵌套于两个或多个高层群体的情形。与严格层级结构不同,这类模型考虑个体属于多重分类,使每个分类都能对结果产生影响。

例如,在教育研究中,学生可能同时嵌套于社区与学校之中。有些学生就读的学校与其邻居不同,从而形成一种个体不只嵌套于单一群体,而是横跨两个交叉分类分组的结构。

在这种情况下,模型将社区和学校视为分离却交叉分类的方差来源,使研究者能够估计两类分类各自对结果的影响。这种方法常见于人们同时与多个社会或地理群体互动的研究。

何时使用交叉分类模型

交叉分类模型适用于:

  • 个体或低层单元同时受多个高层单元影响(如学生同时受学校与社区语境影响)。
  • 我们希望了解各分类对结果变异的贡献,尤其当这些分类不构成严格层级时。

3. 多层次模型的贝叶斯方法

贝叶斯多层次建模是一种概率化的方法,尤其适用于复杂或小样本数据集。

贝叶斯多层次建模的优势

与频率学派方法相比,贝叶斯 MLM 具备多项优势:

  • 小样本中的更优估计:在样本量有限或数据稀疏时,贝叶斯方法可借助先验分布提供更可靠的估计。
  • 更灵活地处理复杂模型:对于含多重随机效应或复杂协方差结构的模型,贝叶斯方法往往更易实现。
  • 不确定性估计:贝叶斯方法提供参数的完整后验分布,使我们能够更丰富地解读估计值的不确定性。

在贝叶斯 MLM 中,模型输出的是可能取值的分布而非点估计,使我们能够表达不确定性并对参数作概率性陈述。例如,我们可以说“有 95% 的概率,学习时长对成绩的真实效应处于某个区间内”。

贝叶斯多层次建模工具

常用的贝叶斯 MLM 工具有:

  • Stan:Stan 是功能强大的贝叶斯建模工具,常通过 R 接口如 rstanarm 与 brms 使用,它们自动化了贝叶斯 MLM 的大量设置。

  • PyMC3:在 Python 中,PyMC3 被广泛用于贝叶斯建模,也能灵活构建自定义贝叶斯 MLM。

Stan 与 PyMC3 都使用 马尔可夫链蒙特卡罗(MCMC) 方法从后验分布采样。尽管计算量较大,但能提供精确的参数估计,尤其适用于多层次场景。

示例用例:医疗领域的贝叶斯 MLM

考虑将贝叶斯 MLM 应用于多家医院的患者康复时间。如果我们考察治疗类型与医生经验等因素,贝叶斯 MLM 能为各医院的治疗方式对康复的影响提供概率区间。这种方法允许研究者量化不确定性,并为各医院的康复时间估计构建可信区间,这在需要高置信度估计的医学与心理学研究中尤为重要。

常见陷阱与最佳实践

处理层级数据时,若干注意事项能显著提升使用 MLM 的效果。

  • 高层样本量过小:MLM 需要足够多的群体或簇来准确估计组间变异。若簇少于 30,随机效应与标准误的估计可能不可靠。若簇数有限,可考虑更简单的模型或采用能通过先验信息更好处理小样本的贝叶斯 MLM。
  • 误解随机效应:随机效应反映的是群体间的变异,而非个体特定的结果。将其解读为个体层面效应会导致错误结论。应关注群体间变异在您的研究语境中是否具有意义。
  • 协方差结构设定不当:在含随机斜率的模型中,未能恰当设定协方差结构可能导致偏倚估计。建议先使用更简单的结构,再视需要探索更复杂结构。似然比检验等工具可帮助判断是否值得增加复杂度。
  • 中心化指引:通常建议对预测变量进行总体均值中心化以提升可解释性,尤其在含跨层交互的模型中。组内均值中心化可澄清组内关系,但应在确有该类关系研究兴趣时使用。
  • 解读随机截距:随机截距捕捉结果变量基线水平的组间差异。它们允许群体特定的基线,但过于复杂的随机截距结构可能导致过拟合。应谨慎解读,关注其是否揭示了有意义的方差。

若 ICC 很低(接近零),表明组间方差极小,则可能无需 MLM。同样地,若簇数量极少(如少于 10),MLM 的额外复杂性相较更简单方法可能并无优势。

结论

综上所述,多层次模型为分析层级数据提供了有力框架,能处理当数据点嵌套于更大单元时出现的复杂性。通过同时捕捉个体与群体层面效应,MLM 使研究者能够考虑单层模型常常忽视的嵌套结构。固定与随机效应、方差分量以及组内相关系数使我们得以量化不同层级的变异,并评估关系如何变化。

下一步,欢迎学习我们非常全面的课程:Hierarchical and Mixed Effects Models in R。您将看到数据常常涉及多层级的复杂关系,并逐步理解 MLM 如何处理严格层级或交叉分类的聚类结构,从而为分析增添深度与准确性。这也是多层次模型成为制定明智决策与政策的有价值工具的原因。此外也推荐我们的Statistician in R 职业路径课程,内容十分丰富。

Vidhi Chugh

作者

Vidhi Chugh

我是一名 AI 策略与伦理专家,致力于在数据科学、产品与工程的交汇处构建可扩展的机器学习系统。曾入选全球“200 位顶尖商业与技术创新者”之一,我的使命是让机器学习走向大众,打破术语壁垒,让每个人都能参与这场变革。

多层次建模常见问答

什么是多层次建模(MLM),为什么要使用它?

多层次建模(MLM),也称分层或混合效应建模,是一种用于分析具有嵌套或层级结构数据的统计技术。它通过建模聚类数据中的依赖关系(如学校中的学生、医院中的患者),同时刻画群体层面与个体层面的变异,从而比单层模型提供更准确的洞察。

什么时候应考虑使用多层次模型而不是标准回归模型?

当您的数据具有层级或聚类结构,且组内相关系数(ICC)显示存在显著的群体层面方差时,推荐使用 MLM。举例而言,当分析个体观测嵌套在更大单元之中的数据(如学生隶属班级、员工隶属公司)时,MLM 能够考虑组内依赖性。

在多层次建模中,固定效应与随机效应有何区别?

固定效应估计在所有群体中被假定一致的关系;随机效应则捕捉群体之间的变异。例如,固定效应可度量学习时长对各校成绩的平均影响;而随机效应允许每所学校拥有独特的基线分数,或学习时长与成绩之间的独特关系。

什么是跨层交互?为什么在 MLM 中重要?

跨层交互是指低层预测变量(如学习时长)与结果(如成绩)之间的关系会随高层特征(如学校经费)而变化。它们有助于刻画群体层面因素如何影响个体层面的关系,从而提供更细致的理解。

实现 MLM(尤其是复杂模型或贝叶斯模型)可以用哪些工具和软件?

在频率学派的 MLM 中,R 语言的 lme4 包因其易用性而广受欢迎。对于贝叶斯 MLM,推荐使用如 Stan(通过 R 中的 rstanarm 或 brms)以及 Python 中的 PyMC3,这些工具提供灵活性并能估计后验分布,特别适合复杂模型或小样本数据。

主题