💖 Hongsi's Study/📊 통계・공간통계・공간최적화

[공간통계] 공간회귀분석 (Spatial Regression Analysis): SAR & GWR

김 홍시 2025. 3. 18.
반응형

공간회귀분석 (Spatial Regression Analysis): SAR & GWR

공간 데이터는 지리적으로 인접한 값들 간의 자기상관이 강하게 나타나는 특징이 있습니다.
일반적인 회귀분석(OLS)은 공간적 의존성(spatial dependency)을 고려하지 않기 때문에 **공간적 자기상관을 반영한 공간회귀모형(Spatial Regression Models)**이 필요합니다.

대표적인 공간회귀분석 기법에는 **SAR(공간자기회귀, Spatial Autoregressive Model)**과 **GWR(지리적 가중 회귀, Geographically Weighted Regression)**이 있습니다.


📌 1. 공간자기회귀모형(SAR: Spatial Autoregressive Model)

SAR 모델은 종속변수(Y)가 공간적으로 자기상관을 가진다고 가정하는 회귀모형입니다.
즉, 한 지역의 종속변수 값이 인접한 지역의 종속변수 값에 영향을 받는 경우 유용합니다.

🔹 SAR 모델의 수식

SAR 모형은 다음과 같이 정의됩니다.



  • YY : 종속변수 (예: 주택 가격)
  • XX : 독립변수 (예: 인구밀도, 교통 접근성 등)
  • WW : 공간 가중치 행렬(Spatial Weights Matrix)
  • ρ\rho : 공간 자기회귀 계수(공간적 의존성의 정도)
  • β\beta : 회귀 계수
  • ε\varepsilon : 오차항

📌 SAR의 핵심

  • **ρ\rho (공간자기회귀 계수)**가 0보다 크면 인접 지역이 서로 유사한 값을 가짐 (공간적 클러스터링이 강함)
  • 0보다 작으면 공간적 분산(heterogeneity) 패턴이 나타남
  • 0이면 공간적 상관이 없음

📊 SAR 활용 사례

  • 부동산 분석: 특정 지역의 주택 가격이 이웃 지역의 주택 가격과 얼마나 관계가 있는지 분석
  • 교통 데이터 분석: 도로 혼잡도가 주변 도로 혼잡도와 어떤 관계가 있는지 평가
  • 환경 분석: 대기 오염 수준이 인접 지역과 어떤 영향을 주고받는지 분석

📌 2. 지리적 가중 회귀(GWR: Geographically Weighted Regression)

GWR은 위치에 따라 회귀계수가 다르게 추정되는 모형으로, 공간적으로 변화하는 관계를 분석하는 데 적합합니다.
즉, 특정 독립변수(X)가 종속변수(Y)에 미치는 영향이 공간적으로 다르게 나타나는 경우 사용됩니다.

🔹 GWR 모델의 수식



  • (ui,vi)(u_i, v_i) : 데이터 포인트 ii의 지리적 좌표
  • βk(ui,vi)\beta_k(u_i, v_i) : 위치별 회귀 계수 (고정된 값이 아니라 지역별로 다르게 계산됨)
  • XikX_{ik} : 독립변수
  • YiY_i : 종속변수
  • εi\varepsilon_i : 오차항

📌 GWR의 핵심

  • 일반 회귀(OLS) 모델은 전 지역에서 동일한 회귀계수 사용
  • GWR은 지역마다 다른 회귀계수를 추정하여 공간적 변화를 반영
  • 지역별로 특정 독립변수의 영향이 다를 때 유용

📊 GWR 활용 사례

  • 부동산 시장 분석: 지역별로 다른 요인이 주택 가격에 미치는 영향을 분석
  • 교통 분석: 특정 지역에서 교통량 증가에 영향을 주는 요인이 무엇인지 지역별로 파악
  • 환경 분석: 미세먼지 농도가 도시와 교외에서 다른 요인에 의해 결정되는지 분석

🚀 Python을 활용한 SAR & GWR 분석 예제

1️⃣ 공간자기회귀(SAR) 분석

import geopandas as gpd
import libpysal as ps
from spreg import ML_Lag

# 데이터 불러오기
gdf = gpd.read_file("real_estate_data.geojson")

# 공간 가중치 행렬 생성 (Queen's case)
w = ps.weights.Queen.from_dataframe(gdf)
w.transform = 'r'

# 종속변수 (주택 가격) 및 독립변수 (인구밀도, 접근성 등) 설정
y = gdf['house_price'].values.reshape(-1, 1)
X = gdf[['population_density', 'accessibility']].values

# SAR 모델 학습
sar_model = ML_Lag(y, X, w=w, name_y="House Price", name_x=["Population Density", "Accessibility"])
print(sar_model.summary)

🔹 결과 해석

  • ρ\rho 값이 높을수록 공간적 자기상관이 강함
  • 공간적 의존성을 고려한 회귀 모델로 더 정확한 주택 가격 예측 가능

2️⃣ 지리적 가중 회귀(GWR) 분석

import numpy as np
from mgwr.gwr import GWR
from mgwr.utils import compare_AIC

# GWR에 사용할 커널 밴드폭 최적화
from mgwr.sel_bw import Sel_BW
bw = Sel_BW(gdf[['longitude', 'latitude']].values, y, X).search()

# GWR 모델 학습
gwr_model = GWR(gdf[['longitude', 'latitude']].values, y, X, bw)
gwr_results = gwr_model.fit()

# 결과 출력
print(gwr_results.summary())

🔹 결과 해석

  • 지역별 회귀계수를 확인하여 공간적 변동성을 분석
  • 특정 지역에서 인구밀도가 주택 가격에 미치는 영향이 다를 수 있음

🎯 SAR vs GWR 비교

모델 특징 장점 단점

SAR (공간자기회귀) 인접 지역의 종속변수가 영향을 줌 공간적 의존성 반영 지역별 변동성을 반영하지 못함
GWR (지리적 가중 회귀) 위치마다 회귀계수가 다름 공간적 이질성 반영 해석이 어려울 수 있음

SAR이 적합한 경우

  • 종속변수가 이웃 지역의 영향을 받는 경우 (예: 주택 가격, 대기오염)
  • 공간적 자기상관이 강한 데이터

GWR이 적합한 경우

  • 특정 변수의 영향이 지역별로 다르게 나타나는 경우 (예: 지역별 교통량 증가 요인)
  • 공간적 이질성이 강한 데이터

📌 결론

공간 데이터 분석에서는 SAR과 GWR을 적절히 활용하면 더 정확한 인사이트 도출 가능

📢 SAR을 통해 공간적 자기상관을 반영한 예측 모델을 구축하고, GWR을 활용하여 지역별로 다른 변수의 영향을 탐색하면 더욱 정교한 공간 분석이 가능합니다! 🚀

반응형

댓글