AMOS输出全解读:从回归权重到拟合指标,看懂结构方程模型关键

AMOS输出全解读:从回归权重到拟合指标,看懂结构方程模型关键 简介以惠顿社会疏离感追踪研究为经典案例这份PDF面向需要借助AMOS完成结构方程建模、却常被输出结果困扰的社科研究者与统计分析学习者。内容从数据导入、模型识别与约束设置讲起依次梳理变量汇总、变量计数、参数摘要、自由度计算、迭代过程与卡方拟合指数等核心输出模块并对观测变量/非观测变量、内生/外生变量等容易混淆的概念作了中文注解便于对照软件界面逐步理解模型评价指标。资源包仅1个PDF文件大小约469KB轻量易读适合作为AMOS入门与复习的速查笔记。目前已有123人学习/下载对想快速看懂AMOS运行结果、完成论文或报告分析的用户有较高实用价值。1. 一份 AMOS 输出到底在说什么用 AMOS 跑结构方程模型真正花时间的往往不是画路径图而是点完“计算估计”之后那一屏英文输出。很多初学者盯着第一行的 Chi-square 71.544、DF 6、P .000直接得出“模型被拒绝了”的结论然后开始怀疑数据、怀疑模型、怀疑人生。但实际上这份输出里至少有七成信息值得逐段读而且每一段都有它的用途变量汇总帮你确认模型画对了没有参数摘要告诉你自由度是怎么算出来的回归权重表里的 C.R. 和 P 值才是判断路径是否显著的关键而修正指数和拟合指标则是在告诉你“模型往哪个方向改才合理”。这篇文章以 AMOS 自带的惠顿社会疏离感追踪研究为例——三个潜变量、六个观测变量、932 个样本数据文件为 ex06-a.amw——逐段拆解一份完整的 AMOS 输出。内容适合刚接触结构方程模型的用户也适合那些已经会跑模型但每次看输出都要翻手册的从业者。通过这篇文章你会知道哪些输出必须看哪些可以跳过以及如何从一堆数字中快速判断模型是否可用、是否有改进空间。2. 模型识别为什么好端端的路径系数要被固定成 12.1 潜变量没有测量单位模型就没法估计AMOS 输出的第一层逻辑隐藏在“模型识别”这四个字里。你可能会想我画好了路径图变量之间的关系都定义清楚了AMOS 直接算不就行了不行。问题的根源在于潜变量是没有测量单位的抽象概念。比如“疏离感”这个潜变量它不像“教育年限”那样有明确的刻度——你不知道 1 分是多少2 分是多少。所以潜变量的方差和与之关联的回归系数存在一个尺度模糊的问题。打个比方我说“我买了 10 块钱的黄瓜”你无法推测有几根黄瓜、每根多少钱但如果我说“买了 5 根黄瓜”你立刻能算出每根 2 块钱。潜变量也是同理——必须手工给潜变量一个尺度锚点否则模型里的参数有无穷多种解AMOS 无法收敛到唯一结果。2.2 固定路径系数为 1 的两种做法常见的做法是给每个潜变量设置测量尺度具体操作有两种将潜变量指向某个观测变量的路径系数固定为 1。将潜变量的方差固定为 1常用于潜变量没有合适参照指标时。惠顿模型采用的是第一种把anomia67到67_alienation的路径固定为 1把anomia71到71_alienation的路径固定为 1把educatio到ses的路径固定为 1。同时所有误差项指向观测变量的路径也固定为 1。这与误差项的处理有关——因为误差项同样是潜变量非观测变量也需要一个尺度。提示固定为 1 只是约定俗成你也可以固定为其他数值。改变这个数值本身不会影响标准化系数的大小但会影响非标准化系数的绝对数值以及误差项方差的测量刻度。路径系数一旦固定AMOS 输出中的“固定参数”就产生了。在惠顿模型里固定系数一共有 11 个——6 个观测变量各对应 1 个误差项路径加上 4 条潜变量到观测变量的路径中的 3 个锚定值再加上 1 个事实上更准确的说法是6 个误差项路径系数固定为 1加上 3 条潜变量到观测变量的锚定路径固定为 1再加 2 个这个具体数目要看模型怎么画。总之固定的路径都是为了给潜变量和误差项提供测量尺度这是理解输出的前提。2.3 变量计数和自由度计算在读估计结果前先核对这几个数字模型识别没问题后AMOS 输出中会出现“Variable Summary”变量汇总和“Variable Counts”变量计数。这些段落看似只是罗列变量名实际上是在帮你确认模型是否画对了。惠顿模型的变量计数如下变量类型数量具体变量观测变量6anomia67, powles67, anomia71, powles71, educatio, SEI非观测变量11潜变量与误差项外生变量9ses, 各误差项内生变量867_alienation, 71_alienation, 各观测变量判断内生与外生的口诀很简单箭头指向自己的是内生变量发出箭头的是外生变量。观测变量与非观测变量的区别在于一个用方形表示一个用椭圆表示。如果在变量汇总里发现变量的内外生状态和你的理论假设不一致那说明路径图画错了后面的所有结果都没有意义所以这一步千万不能跳过。自由度计算是另一个值得核对的地方。AMOS 输出中Number of distinct sample moments: 21 Number of distinct parameters to be estimated: 15 Degrees of freedom (21 - 15): 6这里的 6 个样本矩是指 6 个观测变量的 6 个方差加上 15 个两两协方差——即从 6 个观测变量中取两个的组合数公式为 C(6,2) 15合计 21。而模型需要估计 15 个参数6 个回归系数 9 个方差。两者之差就是自由度。提示自由度为 0 的模型称为饱和模型它必然完美拟合数据但也毫无解释力。自由度太小意味着模型参数太多、精简度不足。看到自由度大于 0 时才能真正进入拟合检验阶段。3. 回归权重表小数点后面的数字才是重点3.1 最大似然估计快照为什么 SEM 用 MLE 而不用 OLS惠顿模型的输出中AMOS 在“Maximum Likelihood Estimates”标题下给出回归权重表。我们熟悉的线性回归通常用普通最小二乘法估计而 SEM 使用最大似然估计MLE。这两者的核心区别在于目标函数OLS 是让预测值与观测值的残差平方和最小而 MLE 是寻找使当前样本出现概率最大的那组参数。最大似然估计是一个迭代过程它会从初始值开始反复调整参数直到卡方统计量不再下降。AMOS 输出中会显示迭代历史但在实用场景中你基本不需要逐行读迭代记录——你只需要知道“Minimum was achieved”这句话代表模型有解、迭代收敛。如果输出中显示“Maximum iteration reached”或类似提示则说明模型可能在边界解上跑偏或参数设置有问题。3.2 逐步读回归权重表Estimate 与 C.R.下面是一张典型的 AMOS 回归权重输出表Regression Weights: (Group number 1 - Default model) Estimate S.E. C.R. P Label 67_alienation --- ses -.614 .056 -10.912 *** par_6 71_alienation --- 67_alienation .705 .053 13.200 *** par_4 71_alienation --- ses -.174 .054 -3.213 .001 par_5 powles71 --- 71_alienation .849 .042 20.427 *** par_2 anomia71 --- 71_alienation 1.000 powles67 --- 67_alienation .888 .043 20.577 *** par_1 anomia67 --- 67_alienation 1.000 educatio --- ses 1.000 SEI --- ses 5.331 .431 12.370 *** par_3表中的 Estimate 列是回归系数的估计值S.E. 是标准误C.R. 是临界比Critical RatioP 是显著性概率。C.R. 的计算方法是C.R. Estimate / S.E.。以上面第一行为例-0.614 / 0.056 -10.912。这个临界比近似服从标准正态分布。样本量较大时比如 932如果 |C.R.| 1.96就可以认为回归系数在 0.05 显著性水平上显著不等于 0。如果 |C.R.| 2.58则达到 0.01 显著性水平。因此67_alienation --- ses这条路径的 C.R. -10.912显著性毫无疑问。再看 P 值。它给出的是检验原假设“总体中该参数为 0”的近似双尾概率。这里的 P 值显示为***代表小于 0.001而.001则代表精确值。AMOS 中***通常表示 P 0.001**表示 P 0.01*表示 P 0.05。P 值的计算以参数估计量为正态分布为前提而这一假定在大样本下才近似成立——样本量小的时候P 值只能作为参考不能作为严格标准。不过要注意在回归权重表中凡是用来固定尺度、路径系数设为 1 的行比如anomia67 --- 67_alienation都没有 S.E.、C.R. 和 P 值。原因很简单系数是固定的没有估计过程自然就没有标准误可言。这并不意味着这条路径不重要——它反而是潜变量“锚定”在观测变量上的参照系。3.3 方差表的观测重点方差表和回归权重表的结构相似列也相同。惠顿输出中ses的方差估计约 6.656误差项eps1到eps4的方差在 34 左右而delta2的方差高达 260.630。这个数值的巨大差异其实是个提醒不同观测变量的量纲不同。SEI 的数值范围可能是 0100而无力感量表的总分可能只有 020所以 SEI 误差项方差大是正常的。在解读方差表时不要横向比较绝对值而是要关注每个方差是否显著不等于 0——如果某个误差方差为 0 或负值即 Heywood 案例那通常意味着模型设定有问题。这一点在后续的标准化估计和修正指数评估中会更加清晰。4. 修正指数与模型拟合汇总从哪里下手改模型4.1 修正指数真正告诉你“下一步该做什么”的部分卡方检验和拟合指标只能告诉你模型好不好而修正指数Modification Indices则会告诉你“哪些限制被放开之后模型会好多少”。这部分内容是新手最容易忽略但最有实用价值的输出。AMOS 输出的 MI 表分为三类协方差、方差和回归权重。以惠顿模型为例协方差部分的前几行如下Covariances: (Group number 1 - Default model) M.I. Par Change eps2 -- delta1 5.905 -.424 eps2 -- eps4 26.545 .825 eps2 -- eps3 32.071 -.988 eps1 -- delta1 4.609 .421 eps1 -- eps4 35.367 -1.069 eps1 -- eps3 40.911 1.253MI 表示“如果去掉这个限制例如允许两个误差项相关卡方统计量至少会减少多少”。Par Change 表示参数的具体变化方向。以eps1 -- eps3为例MI 高达 40.911说明如果允许 1967 年无力感的误差项与 1971 年无力感的误差项相关卡方会下降约 40.9。这里为什么会有这么高的 MI因为惠顿数据是纵向追踪数据——1967 年和 1971 年使用相同量表测量无力感。同一个测量工具在不同时间点的误差项往往存在自相关这在语义上是合理的并不是建模投机取巧。同样的逻辑适用于eps2 -- eps41967 年与 1971 年无价值感的误差项。提示修正指数提供了统计层面的建议但执行时必须有理论依据。如果两个误差项在逻辑上不可能相关比如完全没有语义关联的变量即使 MI 数值很大也不应允许它们相关。否则模型会变成纯数据驱动失去解释力。修改的方法是去掉图中这两个误差项之间的零相关约束也就是在 AMOS 图形模式下用双箭头连接eps1和eps3然后重新运行模型。AMOS 自带的 ex06-b.amw 文件展示了修改后的模型拟合指标显著改善。这就是修正指数在“模型调整”环节的标准用法看 MI 从大到小逐个释放限制每释放一个就重新估计一次并观察卡方变化是否与 MI 预测值一致。4.2 拟合汇总表哪些指标必须看标准是什么AMOS 输出的模型拟合部分包含多个指标组完整罗列如下CMIN 部分Default model 的 CMIN/DF 11.924。这个值一般建议小于 2 或 3越靠近 1 越好。惠顿模型的 11.924 明显偏大按这个标准应该拒绝模型。RMR、GFI 部分模型RMRGFIAGFIPGFIDefault model.284.975.913.279Saturated model.0001.000Independence model12.342.494.292.353GFI .975 大于 0.90AGFI .913 也大于 0.90说明按照传统经验值模型在绝对拟合与简约拟合上可接受。但 RMR .284 谈不上“小”——它受变量量纲影响大单个指标的绝对值不太好解释需要结合 RMSEA 来看。基线比较部分Baseline ComparisonsNFI .966, RFI .916, IFI .969, TLI .923, CFI .969。这些指标都是拿默认模型和独立模型比。NFI 大于 0.90 可接受CFI 大于 0.90 可接受大于 0.95 则视为良好。这一系列指标中只要 CFI 和 TLI 都超过 0.90即便卡方检验显著模型仍有一定的参考价值——这也是为什么单一指标不能作为模型好坏判断依据的原因。NCP 与 RMSEA 部分RMSEA LO 90 HI 90 PCLOSE Default model .108 .087 .132 .000RMSEA 0.10890% 置信区间为 (0.087, 0.132)PCLOSE 0.000远小于 0.05拒绝“RMSEA 不大于 0.05”的原假设。按照惯例RMSEA 小于 0.05 为良好拟合小于 0.08 为可接受拟合而这里的 0.108 落在不可接受区间。这说明初始模型在近似误差层面确实不够好数据与模型结构之间仍有差距。AIC/BCC/BIC/CAIC/ECVI 是一组基于信息理论的指标用于多模型比较AIC 101.544而饱和模型的 AIC 42.000独立模型 2143.790。AIC 并不做绝对值检验只在多个竞争模型之间比较——数值越小越优。如果修改模型后 AIC 下降到靠近饱和模型的值说明模型更精简也更优。MECVI 同理是 BCC 的变体用于比较模型时看相对大小。Hoelter 临界 N 值部分0.05 水平下为 1640.01 水平下为 219。它的含义是如果样本量只有 164那么模型在 0.05 水平上可以被接受。现在样本量是 932模型被拒绝了——这并不是说模型在 932 的样本下表现变差而是卡方检验在样本量增大时极为敏感几乎必然拒绝原假设。这也是为什么卡方检验在实际 SEM 应用中基本不看唯一结论而只作为参考。4.3 一组常用拟合指标速查表指标建议标准惠顿初始模型判断CMIN/DF (卡方自由度比) 3 或 511.924拒绝GFI 0.900.975可接受AGFI 0.900.913可接受CFI 0.900.95 良好0.969良好TLI (NNFI) 0.900.95 良好)0.923可接受NFI 0.900.966可接受RMSEA 0.05 良好 0.08 可接受0.108拒绝AIC越小越好多模型比较101.544对比用PCLOSE 0.050.000拒绝从这张表能明显看出惠顿初始模型是一个“部分通过、部分拒绝”的状态。CFI、GFI 都在及格线以上但卡方检验、RMSEA 和 CMIN/DF 都不理想。对于纵向追踪数据而言这种结果非常典型——时间点之间存在的自相关没有被模型表达导致残差之间出现系统性关联。因此修正指数提示的eps1 -- eps3、eps2 -- eps4的修改路径正好击中了问题的核心。5. 标准化系数与模型比较两个值得养成的输出解读习惯5.1 用标准化回归系数比较变量模型修改完并重新估计后应该去查看标准化回归系数Standardized Regression Weights。在 AMOS 输出中这个表通常出现在非标准化估计之后或者在图形界面的表格输出栏中勾选“Standardized estimates”获得。标准化系数是衡量潜变量之间影响强度的关键指标。以惠顿模型为例非标准化结果中71_alienation --- 67_alienation的系数是 0.705而71_alienation --- ses的系数是 -0.174。由于这两个路径指向同一内生变量可以直接比较标准化系数的大小。换句话说标准化系数反映了“潜变量每变化一个标准差目标变量变化几个标准差”。这样所有路径都统一到同一个量纲可以公平比较相对重要性。在报告 SEM 结果时标准化路径系数是必须给出的内容而不仅仅是非标准化系数。5.2 用嵌套模型比较判断哪一步修改是值得的另一种实用技能是模型比较Model Comparison。修改模型后你会面临一个问题虽然卡方下降了但模型的自由度也变了每释放一个参数自由度减 1怎么判断卡方下降是否“值得”答案是利用卡方差异检验。假设初始模型的卡方为 71.544自由度为 6。修改后允许两个误差项相关新增 2 个待估参数自由度变为 4。如果新模型的卡方下降到约 30只是一个示意值卡方差异为 71.544 - 30 41.5自由度差异为 6 - 4 2。查卡方分布表自由度为 2、显著性水平 0.05 的临界值为 5.991而 41.5 远大于临界值——这意味着释放这两个参数显著改善了模型修改是合理的。实际操作中嵌套模型比较的步骤是记录初始模型的卡方值和自由度。修改模型释放参数。重新运行记录新卡方值和自由度。用下方 Python 代码计算差异检验的显著性import scipy.stats as stats chi2_diff 71.544 - 30.0 # 两个模型的卡方差值 df_diff 6 - 4 # 自由度差值 p_value 1 - stats.chi2.cdf(chi2_diff, df_diff) critical_value stats.chi2.ppf(0.95, df_diff) print(f卡方差异: {chi2_diff:.3f}) print(f自由度差异: {df_diff}) print(f临界值(α0.05): {critical_value:.3f}) print(fP 值: {p_value:.5f}) print(结论:, 差异显著模型改善有效 if p_value 0.05 else 差异不显著模型改善有限)在这个代码中chi2_diff是两个模型卡方统计量的差值df_diff是两者自由度的差值p_value则是该差异对应的显著性概率。如果 P 值小于 0.05说明模型改善有统计意义否则卡方下降只是参数增加带来的必然结果不值得为此牺牲简约性。这个判断逻辑在 AMOS 的“Model Fit Summary”的 CMIN 表里可以找到初始值但不同模型之间的差异检验需要手工计算或借助脚本。5.3 不同模型之间的信息准则对比AIC、BCC、BIC 和 ECVI 这类信息准则适合横向比较具体规则是在所有候选模型中AIC 最小者为优BIC 对模型复杂度惩罚更重样本量越大时越倾向于选择简单模型ECVI 适合做交叉验证角度的比较期望值越小说明模型在新样本中的复现性越好。在使用这些指标时最好是同时报告默认模型、饱和模型和独立模型的数值因为饱和模型与独立模型的 AIC 提供了上下界。默认模型的 AIC 越接近饱和模型说明模型在不浪费参数的情况下拟合得越好。这个比较方法在 AMOS 和 LISREL 里都适用也是审稿人常要求补充的内容。惠顿初始模型 AIC 为 101.544明显高于饱和模型的 42.000主要原因是卡方值偏高如果修改模型后 AIC 能降到 60 或 70 左右就能说明额外增加的参数带来了足够的拟合改善这是判断修正指数是否有实际价值的一个快速方法。本文还有配套的精品资源点击获取