使用 openMx 在 SEM 概念模型中选择同卵双胞胎和异卵双胞胎的路径权重

机器算法验证 相关性 结构方程建模 因果关系 配对数据
2022-03-06 03:21:16

我正在审查 R 包 OpenMx 以进行遗传流行病学分析,以了解如何指定和拟合 SEM 模型。我是新手,所以请耐心等待。我正在按照OpenMx 用户指南第 59 页上的示例进行操作。在这里,他们绘制了以下概念模型:

同卵双胞胎的 SEM 模型

并且在指定路径时,他们将潜在的“one”节点的权重设置为表现的 bmi 节点“T1”和“T2”为 0.6,因为:

感兴趣的主要路径是从每个潜在变量到相应观察变量的路径。这些也是估计的(因此全部被释放),得到一个 0.6 的起始值和适当的标签。

# path coefficients for twin 1
mxPath(
  from=c("A1","C1","E1"),
  to="bmi1",
  arrows=1,
  free=TRUE,
  values=0.6,
  label=c("a","c","e")
),

# path coefficients for twin 2
mxPath(
  from=c("A2","C2","E2"),
  to="bmi2",
  arrows=1,
  free=TRUE,
  values=0.6,
  label=c("a","c","e")
),

0.6 的值来自bmi1bmi2(严格卵双胞胎)的估计协方差。我有两个问题:

  1. 当他们说路径被赋予 0.6 的“起始”值时,这是否像在 GLM 估计中那样设置具有初始值的数值积分例程?

  2. 为什么这个值是严格从同卵双胞胎中估算出来的?

1个回答

回答你的2点:

1) 是的,确切地说——起始值只是指示算法将在哪里开始优化过程。大部分软件包实际上是默认自己确定起始值的,用户只有在估算过程中出现问题时才需要尝试输入不同的值。根据我的经验,大多数合理的起始值都可以,并且不会改变算法收敛的最终模型。

2) 值 0.6 不是 T1 和 T2 截距的起始值(“一”与 T1 和 T2 之间的路径),而是链接每个潜在变量(A、C、E)的因子载荷的起始值) 到他们的指标 T1 或 T2。这由路径from=c("A1","C1","E1"), to="bmi1"在第一种情况下和from=c("A2","C2","E2"), to="bmi2"第二种情况下的事实表明。

至于具体值“0.6”:我在文档中找不到他们提到基于同卵双胞胎亚组取这个值的地方;实际上,这些参数估计值(3 个潜在变量的因子载荷)不能直接从样本中计算出来,因为根据定义,这些潜在变量是未观察到的(它们是潜在的)。正如我在第 1 点中提到的,两个似是而非的值之间的选择很少会影响收敛模型的参数估计,所以我的猜测是,他们只是选择了这些因子载荷的许多似是而非的值之一作为起始值。该值是否仅来自单卵双胞胎子组中 bmi1 和 bmi2 之间的估计协方差应该无关紧要,因为任何合理的起始值都应该导致算法收敛到相同的最终值,也许在计算时间上有一些差异。(我说服自己的建议是:试试看!尝试几个起始值并比较收敛模型的参数估计值。)

作为一般说明,我将指出,如果参数free设置为,则任何参数估计的起始值的选择都变得非常重要FALSE,因为起始值将有效地成为最终模型中的参数估计值(它不会被估计;它在估计之前是固定的)。