logo

空間データ分析におけるクリギングとは? 📂統計的分析

空間データ分析におけるクリギングとは?

モデル

オーディナリークリギング

空間データ分析で、ランダムフィールド Y=(Y(s1),,Y(sn))\mathbf{Y} = \left( Y \left( s_{1} \right) , \cdots , Y \left( s_{n} \right) \right)平均 μR\mu \in \mathbb{R}共分散行列 ΣRn×n\Sigma \in \mathbb{R}^{n \times n}多変量正規分布に従う εNn(0,Σ)\varepsilon \sim N_{n} \left( \mathbf{0} , \Sigma \right) ことについて、次のモデル Y=μ1+ε \mathbf{Y} = \mu \mathbf{1} + \varepsilon を通じて、新しいサイトsite s0s_{0}Y(s0)Y \left( s_{0} \right) を推定した値をオーディナリークリギング推定値ordinary Kriging Estimateと呼ぶ。このようにモデルを立てて推定する行為自体をクリギングとも呼ぶ。


  • 1=(1,,1)\mathbf{1} = (1 , \cdots , 1) は全ての成分が 111ベクトルだ。
  • Nn(0,Σ)N_{n} \left( \mathbf{0} , \Sigma \right)多変量正規分布を意味する。

説明

語源

クリギングkrigingは、ダニエル・G・クリージdaine G. Krigeという巨匠の名前がそのまま動詞化されたものである。通常の統計学で予測、予想、適合、推定などと使う表現はもちろん、「空白の空間」の値を埋めるという意味で補間技術のように説明する場合もかなりあるが、これら全ての説明を短くしてクリギングするという一般動詞になったと考えられる。

狭義の応用数学、コンピュータアルゴリズム、機械学習技術などと区別されるクリギングの特徴は、とにかく統計学らしくその平均(点推定量)だけでなくその分散まで考慮することである。想像してみてほしいが、各地点で分散が高い場所のクリギング推定値は同様に分散が大きく、分散が低い場所同士の地点では分散が低いだろう。これはあるデータの観測所の位置を選定するのにも使われるが、例えば微粒子の濃度を測定するとしたら、微粒子をどのように測定するかが気になるのではなく、その測定がどれだけ正確か―つまり、測定値の分散が最も高い場所を選定するようなアプローチがある。

依存性

Y=μ1+ε,where εNn(0,Σ) \mathbf{Y} = \mu \mathbf{1} + \varepsilon \qquad , \text{where } \varepsilon \sim N_{n} \left( 0, \Sigma \right) モデルの数式を見ると、回帰分析時系列分析と異なり ε\varepsilon こそが我々の関心事である。Σ\Sigma対角行列、つまり観測値ごとの依存性がなければ、そもそも空間的な構造がないという意味であり、わざわざクリギングをする理由がない。実際の分析ではこの Σ\Sigmaセミバリオグラムのモデルを通じて次のように決定される。 Σ=σ2H(ϕ)+τ2I \Sigma = \sigma^{2} H \left( \phi \right) + \tau^{2} I ここで τ2\tau^{2}ナゲット効果分散(理論と異なり実際のデータで距離に関係なく基本的に見られる共分散性)であり、II単位行列である。

一般化

次のように他の独立変数に対して一般化モデルを使用するクリギングをユニバーサルクリギングと呼ぶ。 Y=Xβ+ε \mathbf{Y} = \mathbf{X} \beta + \varepsilon

公式

ランダムフィールド {Y(sk)}k=1n\left\{ Y (s_{k}) \right\}_{k=1}^{n}固有的定常空間過程であるとし、新たに予測したい地点を s0s_{0} とする。バリオグラム 2γ2 \gamma に対して行列 ΓRn×n\Gamma \in \mathbb{R}^{n \times n}(Γ)ij:=γ(sisj)\left( \Gamma \right)_{ij} := \gamma \left( s_{i} - s_{j} \right) のように定義し、ベクトル γ0Rn\gamma_{0} \in \mathbb{R}^{n}(γ0)i:=(γ(s0si))\left( \gamma_{0} \right)_{i} := \left( \gamma \left( s_{0} - s_{i} \right) \right) のように定義する。あるベクトル l=(l1,,ln)l = \left( l_{1} , \cdots , l_{n} \right) に対して Y(s0)Y \left( s_{0} \right)最良線形不偏予測量bLUP, Best Linear Unbiased PredictorllY\mathbf{Y}内積であり、 lTY=[l1ln][Y(s1)Y(s2)Y(sn)]=k=1nlkY(sk) 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) ベクトル ll は具体的に次のように求められる。 l=Γ1(γ0+11TΓ1γ01TΓ111) 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

具体的にクリギングがどのように行われるか、数式で調べるプロセスである。この公式の仮定にガウス過程という仮定まで追加されれば、オーディナリークリギングになる。


パート1. 最適化問題

ある定数 l1,,ln,δ0Rl_{1} , \cdots , l_{n} , \delta_{0} \in \mathbb{R} に対して新しい Y(s0)Y \left( s_{0} \right) を既存データの線形結合 y^(s0)=l1y1++lnyn+δ0 \hat{y} \left( s_{0} \right) = l_{1} y_{1} + \cdots + l_{n} y_{n} + \delta_{0} で予測したいとする。これはつまり、目的関数 E[Y(s0)(klkY(sk)+δ0)]2 E \left[ Y \left( s_{0} \right) - \left( \sum_{k} l_{k} Y \left( s_{k} \right) + \delta_{0} \right) \right]^{2} 最小化する最適解 l1,,ln,δ0l_{1} , \cdots , l_{n} , \delta_{0} を見つけることになる。

固有的定常性の定義: ユークリッド空間の固定された部分集合 DRrD \subset \mathbb{R}^{r} で、確率変数 Y(s):ΩR1Y(s) : \Omega \to \mathbb{R}^{1}集合である空間過程 {Y(s)}sD\left\{ Y(s) \right\}_{s \in D} と方向ベクトル hRr\mathbf{h} \in \mathbb{R}^{r} を考える。具体的に nNn \in \mathbb{N} 個のサイトsite{s1,,sn}D\left\{ s_{1} , \cdots , s_{n} \right\} \subset D のように表し、Y(s)Y(s) はすべての sDs \in D に対して分散が存在すると仮定する。[Y(s+h)Y(s)]\left[ Y \left( s + \mathbf{h} \right) - Y(s) \right] の平均が 00 でありながら分散が唯一 h\mathbf{h} にのみ依存する場合、{Y(sk)}\left\{ Y \left( s_{k} \right) \right\}固有的定常性intrinsic Stationarityを持つと言われる。 E[Y(s+h)Y(s)]=0Var[Y(s+h)Y(s)]=2γ(h) \begin{align*} E \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right] =& 0 \\ \Var \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right] =& 2 \gamma ( \mathbf{h} ) \end{align*}

ここで {Y(sk)}k=1n\left\{ Y \left( s_{k} \right) \right\}_{k=1}^{n} が固有的定常性を持つ場合、klk=1\sum_{k} l_{k} = 1 という制約条件を置くことにより、 E[Y(s0)(klkY(sk))]=E[klkY(s0)(klkY(sk))]=klkE[Y(s0)Y(sk)]=0 \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*} となるようにできる。これにより、我々が最小化するべき目的関数δ0\delta_{0} が外れた次の形になる。 E[Y(s0)klkY(sk)]2+δ02 E \left[ Y \left( s_{0} \right) - \sum_{k} l_{k} Y \left( s_{k} \right) \right]^{2} + \delta_{0}^{2} ここで δ02\delta_{0}^{2} は予測と関係ない。実際にもモデルが Y=μ1+ε\mathbf{Y} = \mu \mathbf{1} + \varepsilon であれば、δ0\delta_{0}μ\mu に該当し、δ0=0\delta_{0} = 0 として E[Y(s0)klkY(sk)]2 E \left[ Y \left( s_{0} \right) - \sum_{k} l_{k} Y \left( s_{k} \right) \right]^{2} としても問題ない。今、a0=1a_{0} = 1 とし、ak=lka_{k} = - l_{k} とすると、 E[Y(s0)k=1nlkY(sk)]2=E[k=0nakY(sk)]2 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} となるため、我々は次の最適化問題をラグランジュ乗数法で解くことになる。 MinimizeE[k=0nakY(sk)]2subject tok=0nak=0 \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}


パート2. セミバリオグラム γ\gamma

今、E[k=0nakY(sk)]2E \left[ \sum_{k=0}^{n} a_{k} Y \left( s_{k} \right) \right]^{2} を「我々がデータから計算できると仮定できる」セミバリオグラムに依存した形で表してみよう。

セミバリオグラムの定義: ユークリッド空間の固定された部分集合 DRrD \subset \mathbb{R}^{r} で、確率変数 Y(s):ΩR1Y(s) : \Omega \to \mathbb{R}^{1}集合である空間過程 {Y(s)}sD\left\{ Y(s) \right\}_{s \in D} と方向ベクトル hRr\mathbf{h} \in \mathbb{R}^{r} を考える。具体的に nNn \in \mathbb{N} 個のサイトを {s1,,sn}D\left\{ s_{1} , \cdots , s_{n} \right\} \subset D のように表し、Y(s)Y(s) はすべての sDs \in D に対して分散が存在すると仮定する。次のように定義される 2γ(h)2 \gamma ( \mathbf{h} )バリオグラムvariogramと呼ぶ。 2γ(h):=E[Y(s+h)Y(s)]2 2 \gamma ( \mathbf{h} ) := E \left[ Y \left( s + \mathbf{h} \right) - Y(s) \right]^{2} 特にバリオグラムの半分 γ(h)\gamma ( \mathbf{h} )セミバリオグラムsemivariogramと呼ぶ。

γ(sisj)\gamma \left( s_{i} - s_{j} \right) を2つのサイト si,sjs_{i}, s_{j} の間の方向ベクトルによるセミバリオグラムとしよう。0=1nak=0\sum_{0=1}^{n} a_{k} = 0 を満たす任意の集合 {ak:k=1,,n}R\left\{ a_{k} : k = 1 , \cdots , n \right\} \subset \mathbb{R} に対して次が成立する。 ijaiajγ(sisj)=E[iaiY(si)]2 \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} これは次の展開 ijaiajγ(sisj)=12ijaiajVar[Y(si)Y(sj)]=12ijaiajE[Y(si)Y(sj)]2=12ijaiajE([Y(si)]22Y(si)Y(sj)+[Y(sj)]2)=ijaiajE(Y(si)Y(sj))cases of i=j=EijaiajY(si)Y(sj)=EiaiY(si)jajY(sj)=E[iaiY(si)]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} \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*} で確認できる。今、γij=γ(sisj)\gamma_{ij} = \gamma \left( s_{i} - s_{j} \right) とし、γ0j=γ(s0sj)\gamma_{0j} = \gamma \left( s_{0} - s_{j} \right) とすれば、我々の目的関数は E[iaiY(si)]2=ijaiajγ(sisj)=ijliljγij+2iliγ0i \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*} のように表され、ラグランジュ乗数法によって制約条件 ili=1\sum_{i} l_{i} = 1 にラグランジュ乗数lagrange Multiplierを掛けて引くことで、  ijliljγij+2iliγ0iλili \ - \sum_{i} \sum_{j} l_{i} l_{j} \gamma_{ij} + 2 \sum_{i} l_{i} \gamma_{0i} - \lambda \sum_{i} l_{i} を得る。したがって、lil_{i} に対して偏微分して  jljγij+γ0iλ=0 \ - \sum_{j} l_{j} \gamma_{ij} + \gamma_{0i} - \lambda = 0 となる時、目的関数を最小化できることがわかる。


パート3. 最適解

ここで、具体的な最適解の公式を導出する。行列 ΓRn×n\Gamma \in \mathbb{R}^{n \times n}(i,j)(i,j) 成分を ▷

eq74◁ とし、つまり (Γ)ij:=γij\left( \Gamma \right)_{ij} := \gamma_{ij} とし、ベクトル γ0Rn\gamma_{0} \in \mathbb{R}^{n}(γ0)i:=γ0i\left( \gamma_{0} \right)_{i} := \gamma_{0i} のように定義しよう。係数のベクトルも同様に l:=(l1,,ln)Rnl := \left( l_{1} , \cdots , l_{n} \right) \in \mathbb{R}^{n} とすると、パート2で得た式は次のような行列/ベクトル形式で表すことができる。 jljγij+γ0iλ=0    Γl+γ0λ1=0    Γl+λ1=γ0 \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*} 一方、制約条件で ili=1    [11][l1ln]=1    1Tl=1 \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 となるので、1Tl=1\mathbf{1}^{T} l = 1 も得られる。ここで、xT\mathbf{x}^{T}x\mathbf{x}転置を表す。まず単独で λ\lambda1=1Tl=1TΓ1Γl=1TΓ1(γ0λ1)=1TΓ1γ0λ1TΓ11 \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*} となり、整理すると  λ=11TΓ1γ01TΓ11 \ - \lambda = {{ 1 - \mathbf{1}^T \Gamma^{-1} \gamma_{0} } \over { \mathbf{1}^T \Gamma^{-1} \mathbf{1} }} のように表すことができる。今、ll はほぼ求めたも同然である。 Γl+λ1=γ0    Γl=γ0λ1    Γl=γ0+11TΓ1γ01TΓ111    l=Γ1(γ0+11TΓ1γ01TΓ111) \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. ↩︎