Chap31. 점-참조 공간 모델링(Point-Referenced Spatial Modeling)

안녕하세요!

오늘은 점-참조 공간 모델링(Point-Referenced Spatial Modeling)에 대해 살펴보겠습니다. “학교 현장의 데이터”를 예시로 들어 직관적인 설명과 수리적 엄밀함을 모두 갖춘 형태로 재구성해 드리겠습니다.

분석 도구로는 jamovi의 사용법을 설명하되, jamovi의 기반이 되는 R 코드를 함께 제시하여 모의 데이터 생성부터 분석, 시각화까지 완벽하게 구현해 드리겠습니다.


1. 초등학생도 이해하는 ‘공간 모델링’ 이야기

초등학교 교실을 떠올려 볼까요? 교실에서 어떤 친구가 지우개 가루를 불며 장난을 칩니다. 이 장난꾸러기 친구 바로 옆에 앉은 짝꿍은 지우개 가루를 많이 뒤집어쓰겠지만, 교실 맨 뒤에 앉은 친구는 거의 피해가 없을 거예요. 즉, “거리가 가까울수록 서로에게 미치는 영향이 크고, 멀어질수록 그 영향이 줄어든다”는 사실을 우리는 직관적으로 알고 있습니다.

공간 모델링도 이와 똑같습니다! 기존의 다층모형(MLM)이 주로 학생들을 학급이나 학교라는 ‘그룹’으로 묶어서 관찰하는 방식이라면 , 점-참조 공간 모델링은 각 데이터가 존재하는 ‘정확한 지리적 좌표(예: 위도와 경도)’를 바탕으로 분석을 진행합니다.

이 분석에서는 두 가지 중요한 관계(연관성)를 살펴봅니다.

  1. 첫 번째 관계: 서로 다른 위치(학교)에 있는 ‘같은’ 변수 간의 관계입니다. 예를 들어, A학교의 수학 성적은 바로 옆동네 B학교의 수학 성적과 비슷할 확률이 높습니다.
  2. 두 번째 관계: 같은 위치(학교) 내에 있는 ‘서로 다른’ 변수 간의 관계입니다. 예를 들어, A학교 학생들의 ‘수학 성적’과 ‘행복도’ 사이의 관계를 뜻합니다.

2. 수리적 모델의 이해: 단변량 및 다변량 공간 회귀모형

이제 대학원생 모드로 전환하여 조금 더 수리적으로 엄밀하게 접근해 보겠습니다.

2.1 단변량 공간 회귀모형 (Univariate Spatial Regression)

지리적 위치 ss에 위치한 학교의 성과(예: 수학 성적)를 y(s)y(s)라고 할 때, 이를 설명하는 회귀 모형은 다음과 같습니다.

y(s)=x(s)β+u(s)+ϵ(s)y(s) = x(s)’\beta + u(s) + \epsilon(s)

  • x(s)βx(s)’\beta: 학교의 교육예산이나 지역의 사회경제적 배경(SES)처럼 우리가 측정한 설명 변수들입니다.
  • u(s)u(s): 공간 확률 효과(Spatial random effects)입니다. 우리가 미처 측정하지 못했지만 공간적 패턴을 가진 요인들(예: 인근 지역의 교육열)을 잡아냅니다. 가우스 과정(Gaussian process)으로 모형화됩니다.
  • ϵ(s)\epsilon(s): 독립적인 백색 잡음(white-noise process)으로, 순수한 측정 오차나 아주 미시적인 변동성을 의미합니다. 흔히 ‘너겟(nugget)’이라고 부릅니다.

2.2 대규모 데이터의 한계와 예측 프로세스 모형 (Predictive Process Models)

학교 수가 10,000개처럼 엄청나게 많아지면 어떻게 될까요? 공간 분석에서는 데이터 개수(nn)의 세제곱인 O(n3)O(n^3) 수준으로 계산이 복잡해지는 이른바 ‘Big nn‘ 문제가 발생합니다.

이를 해결하기 위해 전체 학교 중 대표성을 띠는 소수의 지점(매듭, knots)만을 선택하여 차원을 축소하는 예측 프로세스 모형(Predictive process models)을 사용합니다. 이는 데이터의 공간적 정보를 잃지 않으면서도 계산 속도를 획기적으로 높여줍니다.

2.3 다변량 공간 회귀모형 (Multivariate Spatial Regression)

만약 수학 성적(y1y_1)과 학생 행복도(y2y_2)라는 다수의 결과 변수를 동시에 분석하고 싶다면 다변량 모형을 확장하여 사용합니다.

y(s)=X(s)β+u(s)+ϵ(s)y(s) = X(s)’\beta + u(s) + \epsilon(s)

이때 구조는 동일하지만, y(s)y(s), u(s)u(s), ϵ(s)\epsilon(s)가 단일 숫자가 아닌 벡터(vector) 형태가 되며, 변수들 간의 교차-공분산(cross-covariance)을 고려하게 됩니다.

💡 면적 데이터(Areal Data)와의 차이점 교육청에서 개인정보 보호를 위해 개별 학교의 위치를 숨기고 “수원시 장안구 전체 평균 성적”, “권선구 전체 평균 성적”처럼 행정 구역 단위로 묶어서 발표할 때가 있습니다. 이처럼 불연속적이고 이웃한 ‘구역’ 간의 인접성(adjacency)을 바탕으로 분석하는 것을 면적 모형(CAR, SAR 등)이라고 합니다. 반면 오늘 우리가 다루는 점-참조 모형은 공간 상의 어느 지점에서든 연속적으로 예측할 수 있다는 점에서 근본적인 차이가 있습니다.


3. 학교 현장 모의 데이터 생성 및 스토리텔링

[가상의 시나리오]

경기도 K시의 교육감은 관내 100개 초등학교를 대상으로 “교육 예산(Budget) 투입이 학교별 평균 수학 성적(Math)과 학생 행복도(Happiness)에 미치는 영향”을 조사하고자 합니다. 그런데 지도를 보니, 특정 신도시 지역에 위치한 학교들이 예산과 무관하게 전반적으로 성적과 행복도가 모두 높은 ‘공간적 군집 현상’을 보이고 있었습니다. 단순히 예산만 볼 것이 아니라, 지리적 근접성에 따른 후광효과(공간 상관성)를 통제하고 진짜 예산의 효과를 알고 싶습니다.

3.1 R을 활용한 모의 데이터 생성

이 분석을 구현하기 위한 R 코드를 작성해 보겠습니다.

R

# 필요한 패키지 로드
library(MASS)
library(ggplot2)

# 1. 공간 좌표 생성 (K시 내 100개 초등학교)
set.seed(2026)
n_schools <- 100
coords <- cbind(Easting = runif(n_schools, 0, 10), Northing = runif(n_schools, 0, 10))

# 2. 공간 거리 행렬 및 공분산 구조 생성
dist_matrix <- as.matrix(dist(coords))
phi <- 0.5 # 공간 감쇠 파라미터
sigma_sq <- 2.0 # 공간 분산
spatial_cov <- sigma_sq * exp(-phi * dist_matrix)

# 3. 공간 임의 효과 (Spatial random effects) 생성
u_math <- mvrnorm(1, mu = rep(0, n_schools), Sigma = spatial_cov)
u_happy <- 0.6 * u_math + mvrnorm(1, mu = rep(0, n_schools), Sigma = spatial_cov * 0.5)

# 4. 설명 변수(교육 예산) 및 최종 종속 변수 생성
budget <- rnorm(n_schools, mean = 50, sd = 10)
math_score <- 30 + 0.5 * budget + u_math + rnorm(n_schools, 0, 1) # 백색 잡음(nugget) 추가
happiness <- 10 + 0.2 * budget + u_happy + rnorm(n_schools, 0, 0.5)

# 데이터 프레임 구축
school_data <- data.frame(
  School_ID = 1:n_schools,
  Easting = coords[,1],
  Northing = coords[,2],
  Budget = budget,
  Math = math_score,
  Happiness = happiness
)

# 데이터 확인
head(school_data)

4. jamovi 및 R을 활용한 분석 방법

4.1 jamovi에서의 탐색적 분석

jamovi는 직관적인 UI를 제공하여 기초 통계를 확인하기 매우 좋습니다.

  1. 위에서 생성한 school_data.csv를 jamovi에 불러옵니다.
  2. Exploration -> Descriptives 탭을 클릭하여 Math, Happiness, Budget의 평균과 산포도를 확인합니다.
  3. 변수 간의 단순한 관계는 Regression -> Correlation Matrix를 통해 확인할 수 있습니다.
  4. 주의: jamovi의 기본 기능이나 GAMLj 다층모형 모듈은 ‘지리적 좌표 기반의 연속적 공간 상관구조’를 완벽히 모델링하는 데 한계가 있습니다.

4.2 R을 활용한 본격적인 베이지안 공간 모델링 (spBayes 패키지)

본문에서 제시된 바와 같이, 점-참조 공간 모델링은 MCMC 기법을 활용한 베이지안 방식으로 추정하며 spBayes 패키지를 사용하면 효과적입니다. jamovi의 Rj Editor 모듈을 열어 다음 코드를 실행하면 분석이 가능합니다.

R

# spBayes 패키지 로드 (설치 필요: install.packages("spBayes"))
library(spBayes)

# 종속 변수 행렬 구성
Y <- as.matrix(school_data[, c("Math", "Happiness")])

# 필요한 패키지가 불러와져 있다고 가정합니다. (MASS, spBayes)

# 1. 다변량 모형을 위한 수식(Formula) 작성
formulas <- list(Math ~ Budget, Happiness ~ Budget)

# 2. 모형 적합 (퍼즐 조각 개수 완벽 수정 버전!)
n_iters <- 1000 
fit_mv <- spMvLM(formulas, 
                 data = school_data,  
                 coords = as.matrix(school_data[, c("Easting", "Northing")]),
                 
                 # 수정 포인트 1: A는 길이 3 (하삼각행렬), Psi는 길이 2 (대각행렬)로 설정
                 starting = list("beta" = rep(0, 4), 
                                 "phi" = rep(0.5, 2), 
                                 "A" = c(1, 0, 1), 
                                 "Psi" = c(1, 1)),
                 
                 # 수정 포인트 2: tuning 파라미터도 starting의 길이에 맞춤
                 tuning = list("phi" = rep(0.1, 2), 
                               "A" = c(0.1, 0.1, 0.1), 
                               "Psi" = c(0.1, 0.1)), 
                 
                 # 수정 포인트 3: 역위샤트 분포(K.IW)의 자유도를 2보다 큰 3으로 두어 수학적 안정성 확보
                 priors = list("beta.flat", 
                               "phi.Unif" = list(rep(0.1, 2), rep(2, 2)), 
                               "K.IW" = list(3, diag(2)), 
                               "Psi.ig" = list(c(2, 2), c(0.1, 0.1))),
                 
                 cov.model = "exponential",
                 n.samples = n_iters)

# 3. 모델 적합 후 사후표본(posterior samples) 복원
# 공간 임의효과를 포함하여 최종적으로 베타(회귀계수)를 복원해 냅니다.
fit_mv <- spRecover(fit_mv, start = 501, thin = 1) 

# 4. 결과 요약 확인
summary(fit_mv$p.beta.recover.samples)

이 결과를 통해 우리는 “주변 학교의 공간적 영향을 통제한 후에도, 교육 예산이 수학 성적과 행복도에 유의미한 정(+)의 효과를 가지는지” 정확하게 평가할 수 있습니다.


5. 요약 및 참고문헌

다층모형에서 공간 모델링으로의 확장은 교육 연구에 새로운 시각을 제공합니다. 학생이나 학교를 독립된 개체로 보는 것을 넘어, “우리는 지리적으로 연결되어 있다”는 사실을 데이터로 증명해 낼 수 있기 때문입니다.

참고문헌

  • Banerjee, S., Carlin, B. P., & Gelfand, A. E. (2004). Hierarchical modeling and analysis for spatial data. Chapman and Hall/CRC Press.
  • Finley, A. O., & Banerjee, S. (2012). Point-Referenced Spatial Modeling. In The SAGE Handbook of Multilevel Modeling (pp. 559-579).
  • Finley, A. O., Sang, H., Banerjee, S., & Gelfand, A. E. (2009). Improving the performance of predictive process modeling for large datasets. Computational Statistics and Data Analysis, 53(8), 2873-2884.