正定値関数と再生核ヒルベルト空間

概要

正定値関数は,ユークリッド空間における線形的な統計手法を非線形へと拡張するカーネル法において,非常に重要な役割を果たす. カーネル法は,正定値関数の形に応じて定まる再生核ヒルベルト空間上の線形データ解析とみなすことができるが, 解析者は特に再生核ヒルベルト空間自体を把握せずとも,データ解析が可能である. 一方,正定値関数より広い関数のクラスである条件付き負定値関数も,統計解析や数値解析において非常に重要な役割を果たす. ここでは,正定値関数や条件付き負定値関数の定義を確認した後に,気象データの解析に用いたスプライン補間がこれらの理論に裏打ちされたものであることを説明する.

正定値関数

ある\(n\)次正方実行列\(A\)が正定値行列であるとは,\(A\)が対称行列であり,かつ任意の\(n\)次実ベクトル\(\boldsymbol{p}\in \mathbb{R}^n\)について \(\boldsymbol{p}^\top A \boldsymbol{p}\geq 0\)が成り立つということである. これは全ての固有値が非負の対称行列であるということと同値である.

一方,関数\(k:\mathbb{R}^d\times \mathbb{R}^d\rightarrow \mathbb{R}\)が,対称関数\(k(x,x')=k(x',x)\)であり, さらに任意の\(n\in\mathbb{Z}_{\geq 1}\), \(p_1,\dots,p_n\in \mathbb{R}\)および,任意の\(\boldsymbol{x}_1,\dots,\boldsymbol{x}_n\in \mathbb{R}^d\)に対して \[ \sum_{i=1}^n \sum_{j=1}^n p_i p_j k(\boldsymbol{x}_i,\boldsymbol{x}_j)\geq 0. \] が成立するとき,\(k\)は実正定値関数であるという.本ページでは実関数のみ扱うため,これを単に正定値関数と呼ぶことにする. また,\(\mathbb{R}^d\times \mathbb{R}^d\)上だけでなく,任意の集合\(\mathcal{X}\)に対して\(\mathcal{X}\times\mathcal{X}\)上の関数に関しても 同様に正定値性を定義できる.

再生核ヒルベルト空間

以下の定理により,正定値関数はある関数集合のヒルベルト空間(完備な内積空間)を定める.

Moore-Aronszajn Theorem \(k(\cdot,\cdot)\)を正定値関数とする.このとき, \(\mathcal{X}\)上の複素関数ヒルベルト空間\((\mathcal{H},\langle\cdot,\cdot\rangle_\mathcal{H})\)のうち, 任意の\(x\in \mathcal{X}, f\in \mathcal{H}\)に対して \[ f(x)=\langle f,k(\cdot,x)\rangle_\mathcal{H} \tag{1} \] を満たすものが一意に存在する.

この定理により正定値関数から定義されるヒルベルト空間を 再生核ヒルベルト空間(Reproducing Kernel Hilbert Space, RKHS)とよび\(\mathcal{H}_k\)と表す. また,正定値関数\(k(\cdot,\cdot)\)をカーネル関数とよぶ.
各\(y\in \mathcal{X}\)に対して式(1)に\(f:=k(\cdot,y)\)を代入すると, \[ k(x,y)=\langle k(\cdot,x),k(\cdot,y) \rangle_{\mathcal{H}_k} \] となる.つまり,\(\psi_x:=k(\cdot,x)\in\mathcal{H}_k\)を\(x\in \mathcal{X}\)のヒルベルト空間\(\mathcal{H}_k\)への写像とすると, カーネル関数\(k(x,y)\)の値は2点\(x,y\)をそれぞれ写像したベクトル\(\psi_x,\psi_y\)の内積と解釈できる点がポイントである. これにより,元のデータがどのような値を持とうと,またどのような空間に分布していようと,その上にカーネル関数さえ定義されていれば ヒルベルト空間に分布するベクトル値のデータとして扱うことができることになる.

カーネル法とよばれる統計解析においては,以下の定理が重要な役割を果たす.

Representer 定理 \(k\)を実数値カーネル関数,\(g\)を単調増加関数,\(L\)を任意の関数とすると,最適化問題
\[ \min_{f\in \mathcal{H}_k}~~L(\{x_i,y_i,f(x_i)\}_{i=1}^n)+g(\|f\|_{\mathcal{H}_k}) \] の解は,ある\(a_1,\dots,a_n \in \mathbb{R}\)を用いて,以下のように表される: \[ f^* = \sum_{i=1}^n a_i k(\cdot,x_i). \tag{2}\]

証明の概略は以下の通りである.\(f\in \mathcal{H}_k\)を\(f=f_0+f_1\),\(f_0\in {\rm Span}(k(\cdot,x_1),\dots,k(\cdot,x_n))\), \(f_1\in {\rm Span}(k(\cdot,x_1),\dots,k(\cdot,x_n))^\perp\)と分解すると, \( f(x_i)=\langle f,k(\cdot,x_i)\rangle = \langle f_0,k(\cdot,x_i)\rangle=f_0(x_i)\)かつ, \(\|f\|=\sqrt{\|f_0\|^2+\|f_1\|^2} \geq \|f_0\|\)であり等号は\(f_1\equiv 0\)となるときである. よって,\(f\)が\({\rm Span}(k(\cdot,x_1),\dots,k(\cdot,x_n))\)に属さないときは,\(f_0\)の方が目的関数を小さくすることがわかる.

データ解析の問題設定では,\(L\)は\(y_i\)を\(f(x_i)\)で推定した残差に対する損失関数, \(g\)は\(f\)の複雑さに対する罰則項とみなすことができる. 例えば, \[ \min_{f\in \mathcal{H}_k} ~~ \sum_{i=1}^n \|f(x_i)-y_i\|^2+\lambda\|f\|_{\mathcal{H}_k}^2 \] はカーネルリッジ回帰分析(\(\lambda\)は正則化パラメータ), \[ \min_{f\in \mathcal{H}_k} ~~ \sum_{i=1}^n \max(0,1-y_if(x_i))+\lambda\|f\|_{\mathcal{H}_k}^2 \] はソフトマージンのサポートベクトルマシン(SVM)とよばれる. これらの手法で計算される最適解は,(無限次元)ヒルベルト空間内での最適解を探索するのに, 式(2)の\(n\)個の変数\((a_1,\dots,a_n)\in\mathbb{R}^n\) を最適化すれば十分であるということが保証される.

スプライン関数と再生核ヒルベルト空間

\(H^2[a,b]:=\{f\in L^2[a,b] \mid f,f'\mbox{は絶対連続}, f''\in L^2[a,b]\}\)として,\(H^2[a,b]\)上に内積 \[ \langle f,g \rangle =f(a)g(a)+f'(a)g'(a)+\int^b_a f''(t)g''(t) dt \ \] を定義すると,ヒルベルト空間となることが確かめられる.また,\(H^2[a,b]\)はソボレフ空間とよばれる関数空間の一種である. さらに,以下のカーネル関数を持つ再生核ヒルベルト空間でもある. \[k(x,y) = 1+ (x-a)(y-b) + \int^b_a (x-t)_+(y-t)_+dt\] ここで,\((\cdot)_+:=\max(\cdot,0)\)である.実際,\(\left.\frac{d}{dt}k(t,x)\right|_{t=a}=x-a\),\(\frac{d^2}{dt^2}k(t,x)=(x-t)_+\)および Taylor展開 \( f(x)= f(a)+f'(a)(x-a)+ \int^x_a f''(t)(x-t)dt\) を用いて,以下の再生性が成立する. \[ \begin{align*} \langle f,k(\cdot,x)\rangle &= f(a)k(\cdot,a)+f'(a)\left.\frac{d}{dt}k(t,x)\right|_{t=a} + \int^b_a f''(t)\frac{d^2}{dt^2}k(t,x)dt\\ &= f(a)+f'(a)(x-a)+\int^x_a f''(t)(x-t)dt\\ &= f(x) \end{align*} \] ところで,自然3次スプライン平滑化の最適化問題は以下のものであった.

自然3次スプライン平滑化の最適化問題 \[ \begin{aligned} \min_f \sum_{i=1}^{n} \{ y_i - f(x_i) \}^2 + \lambda \int_{a}^{b} |f''(x)|^2 dx. \end{aligned} \tag{2} \]

自然3次スプライン平滑化の基底関数は上記の再生核ヒルベルト空間\(H^2[a,b]\)にRepresenter定理を適用することで得られることが知られている. \(H^2[a,b]\)の部分空間\(\mathcal{H}_1\)を \[\mathcal{H}_1:=\{f\in H^2[a,b] \mid f(a)=0,f'(a)=0\}\] と定義し,\(f\)の\(\mathcal{H}_1\)への射影を\(\Pi_1f\)とすると,罰則化項は\(\int^a_b|f''(x)|^2dx= \|\Pi_1 f\|_{\mathcal{H}_1}^2\)となる.

ここでrepresenter定理を用いると,最適化問題(2)の解は \[\hat{f}(x)=\sum_{i=1}^n \alpha_i k(x,x_i) + \beta_0 + \beta_1 x \tag{3}\] と表すことができる. ただし,\(\beta_0+\beta_1 x\)は,罰則化項が\(\|f\|_{H^2(a,b)}\)の関数ではなく\(\|\Pi_1 f\|_{\mathcal{H}_1}\)の関数となっているために必要となる項である.

また,\(H^2[a,b]\)のカーネル関数 \[k(x,y) = 1+ (x-a)(y-b) + \int^b_a (x-t)_+(y-t)_+dt\] のうち,\(\mathcal{H}_1\)に対応するのは, \[k_1(x,y) = \int^b_a (x-t)_+(y-t)_+dt\] の部分であり,直接計算より \[k_1(x,y) = \frac{1}{6}(y-x)_+^3+ \frac{1}{2}(x-a)(y-a)^2-\frac{1}{6}(y-a)^3\] となることを示すことができる.

この\(k_1(x,y)\)を(3)に用いて,適当に\(\alpha_i(i=1,\dots,n),\beta_0,\beta_1\)を選びなおすと \[\hat{f}(x)=\sum_{i=2}^n \tilde{\alpha}_i (x_i-x)_+^3 + \tilde{\beta}_0 + \tilde{\beta}_1 x \] の形で表すことができる. ただし,\(a < x < b\)では\((x_1-x)^3_+=(a-x)^3_+\equiv 0\)なので\(\tilde{\alpha}_1\)は必要ないことに注意.

このとき,\(\hat{f}(x)\)は\(a < x < b \)で微分可能であり,各\(x_i\leq x\leq x_{i+1}\)で3次式となっている. 一方,\(\hat{f}'(b)=0\)は常に成立するため,\(\hat{f}'(a)=0\)となるような条件を \(\tilde{\alpha}_i(i=1,\dots,n),\tilde{\beta}_0,\tilde{\beta}_1\) に課せば, \(\hat{f}(x)\)は自然スプライン関数の基底関数表現の一種となる.

詳細は文献[1]を参照.

[1] 福水健次,『カーネル法入門―正定値カーネルによるデータ解析―』,朝倉書店,2010.