태그 보관물: 추정

Chap 08. 잠재변수 모형과 구조방정식의 추정: 원리와 실제

안녕하세요, 여러분.
이번 장에서는 구조방정식 모형(SEM)과 잠재변수 모형(LVM)의 핵심 엔진이라고 할 수 있는 ‘추정(Estimation)’에 대해 깊이 있게 다뤄보겠습니다. 우리는 흔히 모형을 설정하고 버튼을 눌러 결과값을 얻지만, 그 이면에서 어떤 수학적, 통계적 과정이 일어나는지 이해하는 것은 매우 중요합니다. 특히 교육학 데이터처럼 문항 반응이 범주형(예: 리커트 척도)이거나 결측치가 있는 경우, 올바른 추정 방법을 선택하는 것이 연구의 타당성을 결정짓습니다.

1. 기초: 표기법과 모형의 프레임워크

우리가 다룰 모형은 크게 측정 모형(Measurement Model)구조 모형(Structural Model)으로 나뉩니다.

1.1 변수의 정의

Bollen(1989)의 표기법을 따르되, 범주형 데이터까지 포괄할 수 있도록 확장합니다.

  • η\eta (에타): 내생 잠재변수 (구조 모형에 의해 설명되는 잠재변수, 예: 학업 성취도)
  • ξ\xi (크사이): 외생 잠재변수 (다른 변수에 영향을 주는 잠재변수, 예: 가정 배경)
  • YY: η\eta의 관측지표 (예: 성취도 검사 점수)
  • XX: ξ\xi의 관측지표 (예: 부모 소득, 부모 학력)

1.2 모형의 구조

SEM은 관측 데이터 (Y,X)(Y, X)와 잠재변수 (η,ξ)(\eta, \xi)의 결합 분포를 다룹니다.

  • 측정 모형: 잠재변수가 관측변수를 어떻게 설명하는가? (예: X=Λxξ+δX = \Lambda_x \xi + \delta)
  • 구조 모형: 잠재변수 간의 관계는 어떠한가? (예: η=Bη+Γξ+ζ\eta = B\eta + \Gamma\xi + \zeta)

WaurimaL의 팁: 교육 연구에서 흔히 사용하는 문항반응이론(IRT) 모델도 사실은 구조적 파트가 없는(혹은 간단한) 잠재변수 모형의 일종입니다.

2. 추정 방법 선택의 5가지 기준

어떤 추정 방법을 사용할지 결정할 때, 다음 5가지 기준을 고려해야 합니다.

  1. 효율성 (Efficiency): 추정량이 참값(True Parameter)에 얼마나 빠르고 정확하게 수렴하는가? 표본이 클수록 효율적인 추정량이 선호됩니다.
  2. 모형 비교 (Model Comparison): 내재된 모형(Nested Model) 간의 비교가 용이한가? (예: χ2\chi^2 차이 검증 가능 여부)
  3. 강건성 (Robustness): 데이터가 정규분포 가정을 위반했을 때도 믿을 만한 결과를 주는가? 교육 데이터는 종종 정규성을 위반하므로 매우 중요합니다.
  4. 결측 데이터 (Missing Data): 결측치가 무작위(MCAR)인지, 아니면 특정 패턴이 있는지(MAR)에 따라 사용할 수 있는 방법이 다릅니다.
  5. 계산 비용 (Computational Cost): 계산이 얼마나 복잡하고 시간이 오래 걸리는가?

3. 완전 정보 추정량 (Full Information Estimators)

데이터의 전체 반응 패턴을 사용하여 우도(Likelihood)를 최대화하는 방법입니다.

3.1 주변최대우도추정법 (Marginal Maximum Likelihood; MML)

가장 대표적인 방법으로, 잠재변수를 적분하여 제거한 후 관측 데이터의 우도함수를 최대화합니다.

  • 장점: 모형이 정확하다면 가장 효율적입니다. 결측치가 MAR(Missing At Random)일 때도 편향 없는 추정을 제공합니다.
  • 단점: 고차원 적분이 필요하여 잠재변수가 많아지면 계산이 매우 느려집니다. 정규성 가정이 위배되면 결과가 왜곡될 수 있습니다.

3.2 베이지안 추정량 (Bayesian Estimator)

모수를 고정된 상수가 아닌 확률변수로 취급합니다. 사전분포(Prior)와 데이터(Likelihood)를 결합하여 사후분포(Posterior)를 구합니다.

  • 특징: 표본이 작거나 모형이 매우 복잡할 때 유용합니다. MCMC(Markov Chain Monte Carlo) 알고리즘을 사용하여 계산합니다.

4. 제한 정보 추정량 (Limited Information Estimators)

전체 데이터 패턴 대신, 일차(평균) 및 이차(공분산) 적률 정보만을 사용합니다. 계산이 빠르고 특정 상황에서 더 강건합니다.

4.1 연속형 변수: 모멘트 기반 추정 (ULS, GLS, WLS)

관측된 공분산 행렬(SS)과 모형이 예측하는 공분산 행렬(Σ(θ)\Sigma(\theta))의 차이를 최소화합니다.

  • WLS (Weighted Least Squares): 정규성 가정이 깨졌을 때(예: 첨도가 높을 때) 사용하지만, 매우 큰 표본이 필요합니다. 이를 보완한 것이 jamovi나 Mplus에서 자주 보는 WLSMV 같은 방법들입니다.

4.2 범주형 변수: 다단계(Multistage) 및 쌍대 우도(PML)

교육학 설문조사(예: “매우 그렇다” ~ “전혀 그렇지 않다”)는 연속형이 아닙니다. 이를 연속형처럼 다루면 오차가 발생합니다.

  • 기본 아이디어: 범주형 반응 이면에 연속적인 기저변수(Underlying Variable, XX^*)가 있다고 가정합니다.
  • 다단계(MS) 추정: 1단계에서 문항 간의 폴리코릭(Polychoric) 상관계수를 구하고, 2단계에서 이를 이용해 모수를 추정합니다.
  • 쌍대 우도 (Pairwise Maximum Likelihood; PML): 전체 우도 대신, 모든 변수 쌍(Pair)의 우도를 곱해서 추정합니다. MML보다 계산이 훨씬 빠르면서도 효율성이 높습니다.

5. 실습: 교육학 예제를 통한 적용

이제 이론을 실제 데이터에 적용해 봅시다.

시나리오: 여러분은 중학생의 ‘디지털 리터러시(DL)’‘STEM 교과 흥미(STEM)’에 미치는 영향을 연구합니다.

  • DL: 3개의 문항 (5점 리커트 척도 – 범주형)
  • STEM: 3개의 문항 (0~100점 점수 – 연속형)

5.1 모의 데이터 생성 (R 코드)

jamovi의 Rj 에디터나 R Studio에서 아래 코드를 실행하여 데이터를 생성합니다.

R

# 필요한 패키지 로드
if(!require(MASS)) install.packages("MASS")
if(!require(lavaan)) install.packages("lavaan")

set.seed(1228)

# 1. 표본 크기 설정
N <- 500

# 2. 잠재변수 생성 (Digital Literacy -> STEM Interest)
# DL은 STEM에 0.6 정도의 영향력을 가짐
DL_latent <- rnorm(N, 0, 1)
STEM_latent <- 0.6 * DL_latent + rnorm(N, 0, sqrt(1 - 0.6^2))

# 3. 관측변수 생성
# DL 문항 (범주형, Threshold 적용)
dl1_star <- 0.8 * DL_latent + rnorm(N, 0, sqrt(1 - 0.8^2))
dl2_star <- 0.7 * DL_latent + rnorm(N, 0, sqrt(1 - 0.7^2))
dl3_star <- 0.85 * DL_latent + rnorm(N, 0, sqrt(1 - 0.85^2))

# 컷오프를 사용하여 5점 척도로 변환 (1~5)
cutoffs <- c(-1.5, -0.5, 0.5, 1.5)
DL1 <- as.numeric(cut(dl1_star, breaks=c(-Inf, cutoffs, Inf), labels=1:5))
DL2 <- as.numeric(cut(dl2_star, breaks=c(-Inf, cutoffs, Inf), labels=1:5))
DL3 <- as.numeric(cut(dl3_star, breaks=c(-Inf, cutoffs, Inf), labels=1:5))

# STEM 문항 (연속형)
STEM1 <- 50 + 10 * (0.8 * STEM_latent + rnorm(N, 0, 0.6))
STEM2 <- 50 + 10 * (0.75 * STEM_latent + rnorm(N, 0, 0.65))
STEM3 <- 50 + 10 * (0.9 * STEM_latent + rnorm(N, 0, 0.45))

# 데이터 프레임 생성
data <- data.frame(DL1, DL2, DL3, STEM1, STEM2, STEM3)

# 데이터 확인
head(data)

5.2 분석: jamovi (SEMLj 모듈) 활용

jamovi에서는 SEMLj 모듈을 사용하여 쉽게 분석할 수 있습니다.

  1. 데이터 불러오기: 위에서 생성한 데이터를 csv로 저장 후 jamovi에서 엽니다.
  2. 모듈 선택: SEMLj > Structural Equation Models.
  3. 모형 설정:
    • Measurement Model:
      • Latent Variable DL =~ DL1 + DL2 + DL3
      • Latent Variable STEM =~ STEM1 + STEM2 + STEM3
    • Structural Model:
      • STEM ~ DL (STEM is regressed on DL)
  4. 추정 방법(Estimation) 선택 – 중요!
    • 이 데이터에는 범주형 변수(DL1~3)가 포함되어 있습니다.
    • 일반적인 ML (Maximum Likelihood)을 사용하면 범주형 변수를 연속형으로 취급하여 편향이 발생할 수 있습니다.
    • 옵션: Estimation Method에서 Robust 또는 DWLS(Diagonally Weighted Least Squares)를 선택해야 합니다. SEMLj는 변수 타입을 자동으로 감지하여 적절한 추정법을 제안하기도 하지만, 명시적으로 설정하는 것이 좋습니다.
    • 참고: 본 내용에서 다룬 PML(Pairwise Maximum Likelihood)lavaan 패키지의 옵션(estimator="PML")을 통해 R에서 구현 가능합니다. jamovi에서는 주로 DWLS 계열이 범주형 데이터의 표준으로 쓰입니다.

5.3 분석 결과 해석 (예시)

분석 결과 테이블을 볼 때 다음 사항을 확인합니다.

  • 적합도 지수 (Goodness of Fit): CFI, TLI > 0.90, RMSEA < 0.08 인가?
    • 교재 내용 연결: WLS나 DWLS를 사용할 때는 χ2\chi^2 검증 통계량이 평균과 분산이 조정된(scaled) 형태를 띱니다.
  • 회귀계수 (Regression Weights): DL이 STEM에 미치는 영향(β\beta)이 유의한가?
    • 범주형 변수를 고려한 추정(DWLS/PML)은 일반 ML보다 표준오차(SE)를 더 정확하게 추정하여 1종 오류를 줄여줍니다.

6. 계산 알고리즘 (Computation: Under the Hood)

우리가 버튼을 누를 때 컴퓨터 내부는 어떻게 작동할까요?

6.1 수치 최적화 (Numerical Optimization)

목적함수(예: logL-log L)의 최솟값을 찾아가는 과정입니다.

  • 경사 하강법 (Gradient Descent): 가장 가파른 경사를 따라 내려갑니다. 단순하지만 느릴 수 있습니다.
  • 뉴턴-랩슨 (Newton-Raphson): 곡률(2차 미분, Hessian) 정보까지 사용하여 더 빨리 수렴합니다. 하지만 계산량이 많습니다.
  • Quasi-Newton (BFGS): Hessian 행렬을 근사하여 계산 속도와 효율성의 균형을 맞춥니다. 대부분의 SEM 소프트웨어 기본값입니다.

6.2 EM 알고리즘 (Expectation-Maximization)

잠재변수처럼 관측되지 않은 데이터가 있을 때 강력합니다.

  • E-Step: 현재 파라미터로 잠재변수의 기대치를 계산(채워 넣기).
  • M-Step: 채워진 데이터를 바탕으로 우도를 최대화(파라미터 업데이트).
  • 이 과정을 수렴할 때까지 반복합니다.

결론 및 제언

SEM 추정은 단순히 “소프트웨어 돌리기”가 아닙니다. 여러분의 데이터가 정규성을 띠는지, 범주형인지, 결측치가 있는지에 따라 적절한 도구(추정량)를 꺼내 써야 합니다.

  • 연속형 데이터 + 정규성 만족 \to MML (ML)
  • 범주형 데이터 (리커트 척도) \to WLSMV (DWLS) 또는 PML
  • 복잡한 모형 + 소표본 \to Bayesian

이 원칙을 지킬 때, 여러분의 연구 결과는 통계적으로 견고해집니다.

참고문헌

  • Bollen, K. A. (1989). Structural equations with latent variables. New York: Wiley.
  • Chen, Y., Moustaki, I., & Zhang, S. (n.d.). On the Estimation of Structural Equation Models with Latent Variables. In Chapter 8
  • Jöreskog, K. G., & Moustaki, I. (2001). Factor analysis of ordinal variables: A comparison of three approaches. Multivariate Behavioral Research, 36, 347-387.
  • Katsikatsou, M., Moustaki, I., Yang-Wallentin, F., & Jöreskog, K. G. (2012). Pairwise likelihood estimation for factor analysis models with ordinal data. Computational Statistics and Data Analysis, 56, 4243-4258.
  • Rosseel, Y. (2012). lavaan: An R package for structural equation modeling. Journal of Statistical Software, 48(2), 1-36.