logo

공간데이터분석에서 크리깅이란? 📂통계적분석

공간데이터분석에서 크리깅이란?

모델

오디너리 크리깅

공간데이터분석에서 랜덤필드 $\mathbf{Y} = \left( Y \left( s_{1} \right) , \cdots , Y \left( s_{n} \right) \right)$ 의 평균 $\mu \in \mathbb{R}$ 과 공분산행렬 $\Sigma \in \mathbb{R}^{n \times n}$ 과 다변량정규분포를 따르는 $\varepsilon \sim N_{n} \left( \mathbf{0} , \Sigma \right)$ 에 대해, 다음의 모델 $$ \mathbf{Y} = \mu \mathbf{1} + \varepsilon $$ 을 통해 새로운 사이트site $s_{0}$ 의 $Y \left( s_{0} \right)$ 를 추정한 값을 오디너리 크리깅 추정치ordinary Kriging Estimate라 한다. 이렇게 모델을 세워서 추정하는 행위 자체를 크리깅이라 부르기도 한다.


  • $\mathbf{1} = (1 , \cdots , 1)$ 은 모든 성분이 $1$ 인 1벡터다.
  • $N_{n} \left( \mathbf{0} , \Sigma \right)$ 는 다변량정규분포를 의미한다.

설명

어원

크리깅kringing이란 다니 G. 크리거daine G. Krige이라는 거장의 이름이 그대로 동사화 된 것이다. 보통의 통계학에서 예측, 예상, 적합, 추정 등등으로 쓰는 표현은 물론 ‘비어있는 공간’의 값을 채워넣는다는 의미에서 인터폴레이션 기법처럼 설명하는 경우도 제법 있는데, 이 모든 설명을 줄여서 크리깅하다라는 일반동사가 된 것으로 보면 된다.

좁은 의미에서의 응용수학, 컴퓨터 알고리즘, 머신러닝 기법 등과 구분되는 크리깅의 특징은 어쨌거나 통계학답게 그 평균(점추정량)만이 아니라 그 분산까지 고려한다는 것이다. 상상하기를, 각 지점에서 분산이 높은 곳의 크리깅 추정치는 마찬가지로 분산이 크고 분산이 낮은 곳들 사이의 지점에선 분산이 낮을 것이다. 이는 어떤 데이터의 관측소 입지를 선정하는데에도 쓰일 수 있는데, 예로써 미세먼지의 농도를 측정한다고 하면 미세먼지를 어떻게 측정할지가 궁금한 게 아니라 그 측정이 얼마나 정확한지―다시 말해 측정치의 분산이 가장 높은 곳을 선정하는 식의 접근법이 있다.

종속성

$$ \mathbf{Y} = \mu \mathbf{1} + \varepsilon \qquad , \text{where } \varepsilon \sim N_{n} \left( 0, \Sigma \right) $$ 모델의 수식을 보면 회귀분석이나 시계열분석과 달리 $\varepsilon$ 이야말로 우리의 관심사다. $\Sigma$ 가 대각행렬, 즉 관측치마다의 종속성이 없다면 애초에 공간적인 구조가 없다는 의미고 딱히 크리깅이라는 걸 할 이유가 없다. 실제 분석이서 이 $\Sigma$ 는 세미배리오그램의 모형을 통해 다음과 같이 정해진다. $$ \Sigma = \sigma^{2} H \left( \phi \right) + \tau^{2} I $$ 여기서 $\tau^{2}$ 는 너겟 이펙트 분산(이론과 달리 실제 데이터에서 거리에 상관없이 기본적으로 보게 되는 공분산성)고, $I$ 는 항등행렬이다.

일반화

다음과 같이 다른 독리변수에 대해 일반화 모델을 사용하는 크리깅을 유니버설 크리깅이라고 한다. $$ \mathbf{Y} = \mathbf{X} \beta + \varepsilon $$

공식

랜덤필드 $\left\{ Y (s_{k}) \right\}_{k=1}^{n}$ 가 내재적 정상 공간과정이라고 하고 새롭계 예측하고 싶은 지점을 $s_{0}$ 이라 하자. 배리오그램 $2 \gamma$ 에 대해 행렬 $\Gamma \in \mathbb{R}^{n \times n}$ 를 $\left( \Gamma \right)_{ij} := \gamma \left( s_{i} - s_{j} \right)$ 와 같이 정의하고 벡터 $\gamma_{0} \in \mathbb{R}^{n}$ 을 $\left( \gamma_{0} \right)_{i} := \left( \gamma \left( s_{0} - s_{i} \right) \right)$ 와 같이 정의하자. 어떤 벡터 $l = \left( l_{1} , \cdots , l_{n} \right)$ 에 대해 $Y \left( s_{0} \right)$ 의 최선선형불편예측량bLUP, Best Linear Unbiased Predictor은 $l$ 과 $\mathbf{Y}$ 의 내적인 $$ l^{T} \mathbf{Y} = \begin{bmatrix} l_{1} & \cdots & l_{n} \end{bmatrix} \begin{bmatrix} Y \left( s_{1} \right)\\ Y \left( s_{2} \right)\\ \vdots\\ Y \left( s_{n} \right) \end{bmatrix} = \sum_{k=1}^{n} l_{k} Y \left( s_{k} \right) $$ 이며, 벡터 $l$ 은 구체적으로 다음과 같이 구해진다. $$ l = \Gamma^{-1} \left( \gamma_{0} + {{ 1 - \mathbf{1}^T \Gamma^{-1} \gamma_{0} } \over { \mathbf{1}^T \Gamma^{-1} \mathbf{1} }} \mathbf{1} \right) $$

유도 1

구체적으로 크리깅이 어떻게 이루어지는지 수식으로 알아보는 과정이다. 이 공식의 가정에서 가우시안 프로세스라는 가정까지 추가되면 오디너리 크리깅이 된다.


Part 1. 최적화 문제

어떤 상수 $l_{1} , \cdots , l_{n} , \delta_{0} \in \mathbb{R}$ 들에 대해 새로운 $Y \left( s_{0} \right)$ 를 기존 데이터의 선형결합 $$ \hat{y} \left( s_{0} \right) = l_{1} y_{1} + \cdots + l_{n} y_{n} + \delta_{0} $$ 으로 예측하고 싶다고 하자. 이는 다시 말해 목적 함수 $$ E \left[ Y \left( s_{0} \right) - \left( \sum_{k} l_{k} Y \left( s_{k} \right) + \delta_{0} \right) \right]^{2} $$ 를 최소화하는 최적해 $l_{1} , \cdots , l_{n} , \delta_{0}$ 를 찾는 것이다.

내재적 정상성의 정의: 유클리드 공간의 픽스된 부분집합 $D \subset \mathbb{R}^{r}$ 에서 확률변수 $Y(s) : \Omega \to \mathbb{R}^{1}$ 의 집합공간과정 $\left\{ Y(s) \right\}_{s \in D}$ 와 방향벡터 $\mathbf{h} \in \mathbb{R}^{r}$ 를 생각해보자. 구체적으로 $n \in \mathbb{N}$ 개의 사이트site를 $\left\{ s_{1} , \cdots , s_{n} \right\} \subset D$ 과 같이 나타내고, $Y(s)$ 는 모든 $s \in D$ 에 대해 분산이 존재하는 것으로 가정한다. $\left[ Y \left( s + \mathbf{h} \right) - Y(s) \right]$ 의 평균이 $0$ 이면서 분산이 오직 $\mathbf{h}$ 에만 의존하면 $\left\{ Y \left( s_{k} \right) \right\}$ 가 내재적 정상성intrinsic Stationarity을 가진다고 한다. $$ \begin{align*} E \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right] =& 0 \\ \operatorname{Var} \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right] =& 2 \gamma ( \mathbf{h} ) \end{align*} $$

여기서 $\left\{ Y \left( s_{k} \right) \right\}_{k=1}^{n}$ 가 내재적 정상성을 가진다면, $\sum_{k} l_{k} = 1$ 이라 제약조건을 둠으로써 $$ \begin{align*} & E \left[ Y \left( s_{0} \right) - \left( \sum_{k} l_{k} Y \left( s_{k} \right) \right) \right] \\ =& E \left[ \sum_{k} l_{k} Y \left( s_{0} \right) - \left( \sum_{k} l_{k} Y \left( s_{k} \right) \right) \right] \\ =& \sum_{k} l_{k} E \left[ Y \left( s_{0} \right) - Y \left( s_{k} \right) \right] \\ =& 0 \end{align*} $$ 이 되게끔 할 수 있다. 이에 따라 우리가 최소화할 목적 함수는 $\delta_{0}$ 만 밖으로 빠진 다음의 꼴이 된다. $$ E \left[ Y \left( s_{0} \right) - \sum_{k} l_{k} Y \left( s_{k} \right) \right]^{2} + \delta_{0}^{2} $$ 여기서 $\delta_{0}^{2}$ 는 예측과 상관없다. 실제로도 모델이 $\mathbf{Y} = \mu \mathbf{1} + \varepsilon$ 이라면 $\delta_{0}$ 는 $\mu$ 에 해당해서 $\delta_{0} = 0$ 으로 두어 $$ E \left[ Y \left( s_{0} \right) - \sum_{k} l_{k} Y \left( s_{k} \right) \right]^{2} $$ 라 해도 무방하다. 이제 $a_{0} = 1$ 이라 두고 $a_{k} = - l_{k}$ 라 하면 $$ E \left[ Y \left( s_{0} \right) - \sum_{k=1}^{n} l_{k} Y \left( s_{k} \right) \right]^{2} = E \left[ \sum_{k=0}^{n} a_{k} Y \left( s_{k} \right) \right]^{2} $$ 이므로, 우리는 다음과 같은 최적화문제를 라그랑주 승수법으로 풀게 된 것이다. $$ \begin{matrix} \text{Minimize} & \displaystyle E \left[ \sum_{k=0}^{n} a_{k} Y \left( s_{k} \right) \right]^{2} \\ \text{subject to} & \displaystyle \sum_{k=0}^{n} a_{k} = 0 \end{matrix} $$


Part 2. 세미배리오그램 $\gamma$

이제 $E \left[ \sum_{k=0}^{n} a_{k} Y \left( s_{k} \right) \right]^{2}$ 를 ‘우리가 데이터에서 계산할 수 있을 것으로 가정할 수 있는’ 세미배리오그램에 종속된 꼴로 나타내보자.

세미배리오그램의 정의: 유클리드 공간의 픽스된 부분집합 $D \subset \mathbb{R}^{r}$ 에서 확률변수 $Y(s) : \Omega \to \mathbb{R}^{1}$ 의 집합공간과정 $\left\{ Y(s) \right\}_{s \in D}$ 와 방향벡터 $\mathbf{h} \in \mathbb{R}^{r}$ 를 생각해보자. 구체적으로 $n \in \mathbb{N}$ 개의 사이트를 $\left\{ s_{1} , \cdots , s_{n} \right\} \subset D$ 과 같이 나타내고, $Y(s)$ 는 모든 $s \in D$ 에 대해 분산이 존재하는 것으로 가정한다. 다음과 같이 정의되는 $2 \gamma ( \mathbf{h} )$ 를 배리오그램variogram이라 한다. $$ 2 \gamma ( \mathbf{h} ) := E \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right]^{2} $$ 특히 배리오그램의 절반 $\gamma ( \mathbf{h} )$ 를 세미배리오그램semivariogram이라 한다.

$\gamma \left( s_{i} - s_{j} \right)$ 를 두 사이트 $s_{i}, s_{j}$ 사이의 방향벡터에 따른 세미배리오그램이라 하자. $\sum_{0=1}^{n} a_{k} = 0$ 을 만족하는 아무 집합 $\left\{ a_{k} : k = 1 , \cdots , n \right\} \subset \mathbb{R}$ 에 대해 다음이 성립한다. $$ \sum_{i} \sum_{j} a_{i} a_{j} \gamma \left( s_{i} - s_{j} \right) = - E \left[ \sum_{i} a_{i} Y \left( s_{i} \right) \right]^{2} $$ 이는 다음의 전개 $$ \begin{align*} & \sum_{i} \sum_{j} a_{i} a_{j} \gamma \left( s_{i} - s_{j} \right) \\ =& {{ 1 } \over { 2 }} \sum_{i} \sum_{j} a_{i} a_{j} \operatorname{Var} \left[ Y \left( s_{i} \right) - Y \left( s_{j} \right) \right] \\ =& {{ 1 } \over { 2 }} \sum_{i} \sum_{j} a_{i} a_{j} E \left[ Y \left( s_{i} \right) - Y \left( s_{j} \right) \right]^{2} \\ =& {{ 1 } \over { 2 }} \sum_{i} \sum_{j} a_{i} a_{j} E \left( \left[ Y \left( s_{i} \right) \right]^{2} - 2 Y \left( s_{i} \right) Y \left( s_{j} \right) + \left[ Y \left( s_{j} \right) \right]^{2} \right) \\ =& - \sum_{i} \sum_{j} a_{i} a_{j} E \left( Y \left( s_{i} \right) Y \left( s_{j} \right) \right) & \because \text{cases of } i = j \\ =& - E \sum_{i} \sum_{j} a_{i} a_{j} Y \left( s_{i} \right) Y \left( s_{j} \right) \\ =& - E \sum_{i} a_{i} Y \left( s_{i} \right) \sum_{j} a_{j} Y \left( s_{j} \right) \\ =& - E \left[ \sum_{i} a_{i} Y \left( s_{i} \right) \right]^{2} \end{align*} $$ 에서 확인할 수 있다. 이제 $\gamma_{ij} = \gamma \left( s_{i} - s_{j} \right)$ 라 하고 $\gamma_{0j} = \gamma \left( s_{0} - s_{j} \right)$ 라 두면 우리의 목적함수는 $$ \begin{align*} & E \left[ \sum_{i} a_{i} Y \left( s_{i} \right) \right]^{2} \\ =& - \sum_{i} \sum_{j} a_{i} a_{j} \gamma \left( s_{i} - s_{j} \right) \\ =& - \sum_{i} \sum_{j} l_{i} l_{j} \gamma_{ij} + 2 \sum_{i} l_{i} \gamma_{0i} \end{align*} $$ 와 같이 나타나고, 라그랑주 승수법에 따라 제약조건 $\sum_{i} l_{i} = 1$ 에 라그랑주 승수lagrange Multiplier를 곱해서 빼면 $$ \ - \sum_{i} \sum_{j} l_{i} l_{j} \gamma_{ij} + 2 \sum_{i} l_{i} \gamma_{0i} - \lambda \sum_{i} l_{i} $$ 을 얻는다. 따라서 $l_{i}$ 들로 편미분해서 $$ \ - \sum_{j} l_{j} \gamma_{ij} + \gamma_{0i} - \lambda = 0 $$ 이 될 때 목적함수를 최소화 시킬 수 있음을 알 수 있다.


Part3. 최적해

이제 구체적인 최적해의 공식을 유도할 것이다. 행렬 $\Gamma \in \mathbb{R}^{n \times n}$ 의 $(i,j)$ 성분을 $\gamma_{ij}$ 로, 즉 $\left( \Gamma \right)_{ij} := \gamma_{ij}$ 라 하고 벡터 $\gamma_{0} \in \mathbb{R}^{n}$ 을 $\left( \gamma_{0} \right)_{i} := \gamma_{0i}$ 와 같이 정의하자. 계수의 벡터 역시 $l := \left( l_{1} , \cdots , l_{n} \right) \in \mathbb{R}^{n}$ 이라 두면 Part2에서 얻은 식은 다음과 같은 행렬/벡터 폼으로 나타낼 수 있다. $$ \begin{align*} & - \sum_{j} l_{j} \gamma_{ij} + \gamma_{0i} - \lambda = 0 \\ \implies & - \Gamma l + \gamma_{0} - \lambda \mathbf{1} = 0 \\ \implies & \Gamma l + \lambda \mathbf{1} = \gamma_{0} \end{align*} $$ 한편 제약조건에서 $$ \sum_{i} l_{i} = 1 \iff \begin{bmatrix} 1 & \cdots & 1 \end{bmatrix} \begin{bmatrix} l_{1} \\ \vdots \\ l_{n} \end{bmatrix} = 1 \iff \mathbf{1}^{T} l = 1 $$ 이므로 $\mathbf{1}^{T} l = 1$ 도 얻을 수 있다. 여기서 $\mathbf{x}^{T}$ 는 $\mathbf{x}$ 의 트랜스포즈를 나타낸다. 우선 단독으로 $\lambda$ 는 $$ \begin{align*} 1 =& \mathbf{1}^T l \\ =& \mathbf{1}^T \Gamma^{-1} \Gamma l \\ =& \mathbf{1}^T \Gamma^{-1} \left( \gamma_{0} - \lambda \mathbf{1} \right) \\ =& \mathbf{1}^T \Gamma^{-1} \gamma_{0} - \lambda \mathbf{1}^T \Gamma^{-1} \mathbf{1} \end{align*} $$ 이고, 정리하면 $$ \ - \lambda = {{ 1 - \mathbf{1}^T \Gamma^{-1} \gamma_{0} } \over { \mathbf{1}^T \Gamma^{-1} \mathbf{1} }} $$ 와 같이 나타낼 수 있다. 이제 $l$ 은 다 구한 것이나 마찬가지다. $$ \begin{align*} & \Gamma l + \lambda \mathbf{1} = \gamma_{0} \\ \implies & \Gamma l = \gamma_{0} - \lambda \mathbf{1} \\ \implies & \Gamma l = \gamma_{0} + {{ 1 - \mathbf{1}^T \Gamma^{-1} \gamma_{0} } \over { \mathbf{1}^T \Gamma^{-1} \mathbf{1} }} \mathbf{1} \\ \implies & l = \Gamma^{-1} \left( \gamma_{0} + {{ 1 - \mathbf{1}^T \Gamma^{-1} \gamma_{0} } \over { \mathbf{1}^T \Gamma^{-1} \mathbf{1} }} \mathbf{1} \right) \end{align*} $$


  1. Banerjee. (2015). Hierarchical Modeling and Analysis for Spatial Data(2nd Edition): p25, 40~41. ↩︎