ガウス過程入門 -線形回帰からガウス過程回帰まで-

こんにちはtatsyです。

今回はノンパラメトリックベイズ法の中で、ガウス過程についてご紹介しようと思います。

なお、ウェブ上には非常にわかりやすく有用な情報が数多く存在しておりまして、今回の記事は、少し実験的な側面からガウス過程の内容理解の助けになればと思っております。


ガウス過程の定義

まず、少し複雑ながら、ガウス過程の定義を確認しておきたいと思います。

ガウス過程では、とある集合$\mathcal{X}$上で定義された関数$f$を考えます。この時、あえて「集合」という言葉を使っているものの、$\mathcal{X}$は一般的な実数全体の集合$\mathbb{R}$でもいいし、実多次元ベクトルの集合$\mathbb{R}^n$でも構いません。

このとき、集合$\mathcal{X}$から有限個の元 $\{ x_1, \ldots, x_N \}$を取り出し、関数の値 $f(x_1), \ldots, f(x_N)$を評価します。この関数の値を要素に持つようなベクトルを$\mathbf{y}$と書くとき、$\mathbf{y}$が$x_1, \ldots, x_N$の取り方に依らず多次元ガウス分布に従うことを「ガウス過程」と呼びます。


線形回帰からガウス過程へ

上記の定義では、とある集合の上の「定数」の集まりを持ってきているにも関わらず、いつの間にか$\mathbf{y}$が確率変数となっていました。この部分を理解するために、一般によく紹介されている線形回帰からのガウス過程の導入を示します。

今、入力$x$から出力$y$をモデル化する回帰問題を考えます。線形回帰においては、ここに基底関数$\phi_1, \ldots, \phi_K$と重みパラメータ$w_1, \ldots, w_K$を導入して、 $$ \begin{equation} y = \sum_{i=1}^K w_k \phi_k(x) \label{eq:linear} \end{equation} $$ のように表すのでした。

ここで基底関数を固定して、パラメータ$w_k$の値を決定します。既知の観測データとして$(y_1, x_1), \ldots, (y_N, x_N)$が与えられているとすれば、以下の連立方程式が定義できます。 $$ \begin{aligned} y_1 &= w_1 \phi_1(x_1) + w_2 \phi_2(x_1) + \cdots + w_K \phi_K(x_1) \\ \vdots & \\ y_N &= w_1 \phi_1(x_N) + w_2 \phi_2(x_N) + \cdots + w_K \phi_K(x_N) \end{aligned} $$ 従って、これを行列形式で書き直せば $$ \mathbf{y} = \boldsymbol\Phi \mathbf{w} $$ となり、$\boldsymbol\Phi$が正則行列であれば、パラメータ$w_1, \ldots, w_K$を既知のデータから決定することができます。

今、基底関数$\phi_k$は固定していましたので、未知の値$x_{N+1}$が与えられたときに、\eqref{eq:linear}を使って、出力の予測値$y_{N+1}$を得ることができます。


上記の線形回帰はパラメータ$\mathbf{w}$が強くデータに依存しており、データが密に存在している部分では良いフィッティング性能を出せる一方で、データがあまりない部分ではオーバーフィッティング等の影響からあまり良い予測値が得られない可能性があります。

このようなパラメータを持つモデル、すなわちパラメトリックモデルの問題点を確率的な概念を導入することで解決しよう、というのがガウス過程に代表されるノンパラメトリック法の目的です。

ガウス過程の導入においては、上記のパラメータ$\mathbf{w}$が多次元正規分布$N(\mathbf{0}, \alpha^{-1}\mathbf{I})$に従うと考えます。つまり$\mathbf{w}$の事前分布が $$ \begin{equation} p(\mathbf{w}) = N(\mathbf{0}, \alpha^{-1}\mathbf{I}) \end{equation} $$ と書けるわけです。

すると、パラメータ$\mathbf{w}$を用いて定義される$\mathbf{y}$も別の確率分布に従うようになります。実際、 $$ \begin{aligned} \bar{\mathbf{y}} &= \mathbb{E}[\mathbf{y}] = \boldsymbol\Phi \mathbb{E}[\mathbf{w}] = \mathbf{0} \\ \text{Cov}(\mathbf{y}) &= \mathbb{E}[(\mathbf{y} - \bar{\mathbf{y}})^\top(\mathbf{y} - \bar{\mathbf{y}})] \\ &= \mathbb{E}[\mathbf{y} \mathbf{y}^\top] \\ &= \boldsymbol\Phi \mathbb{E}[\mathbf{w} \mathbf{w}^\top ] \boldsymbol\Phi^\top \\ &= \alpha^{-1} \boldsymbol\Phi \boldsymbol\Phi^{\top} \end{aligned} $$ のようになり、$\mathbf{y}$が平均を$\mathbf{0}$, 共分散行列を$\alpha^{-1}\boldsymbol\Phi \boldsymbol\Phi^{\top}$とする正規分布に従うことが分かります。 $$ \begin{equation} p(\mathbf{y}) = N(\mathbf{0}, \alpha^{-1} \boldsymbol\Phi \boldsymbol\Phi^{\top}) \label{eq:posterior} \end{equation} $$

今、$\mathbf{w}$というのは適当に与えられた観測点$x_1, \ldots, x_N$に対応するものでしたが、上記の定義は特に$x_1, \ldots, x_N$の選び方に依存しないことが分かります。

以上から、

  • 基底関数$\phi_1, \ldots, \phi_K$が固定である
  • 重みパラメータ$w_k$はそれぞれ$N(0, \alpha^-1)$の正規分布に従う

という条件を課すことで$\mathbf{y}$が常に多次元ガウス分布に従う、すなわち上記のガウス過程の定義を満たすことが分かります。


補足: ガウス過程とノンパラメトリック法

上記のようにガウス過程においては、線形回帰などのパラメトリック法においてデータから決まる対象であったパラメータに事前分布を仮定することで「パラメータ」をなくしています。この意味で、ガウス過程(およびその他の方法)がノンパラメトリック法と呼ばれています。

ただし「続・分かりやすい パターン認識」などでも触れられている通り、ガウス過程を始めとするノンパラメトリック法が本当にパラメータに依存していないのか?という部分には疑問が残ります。

ガウス過程はパラメータ$\mathbf{w}$が特定の確率分布に従っており、それをパラメータとするか否かは微妙なところです。ノンパラメトリック法はパラメータを無限次元のベクトル(=関数解析における線形汎関数)と考えたときに、そのベクトルの各次元が確率分布を記述するパラメータに従う、という意味で、無限のパラメータを持つ機械学習モデルだと見ることもできます。

ただ、あくまでガウス過程などがデータによって決定されるパラメータには依存しない、という意味でノンパラメトリックと呼んでいるということに留意ください。


ガウス過程とカーネル法

上記の説明では出力ベクトル$\mathbf{y}$の共分散行列が基底関数により記述されていました。この共分散行列を$\mathbf{K}$と書くことにすると、その要素$K_{ij}$は$\phi(x) = (\phi_1(x), \ldots, \phi_K(x))^\top \in \mathbb{R}^K$というベクトル表記を導入して $$ \begin{equation} K_{ij} = \alpha^{-1} \sum_{k=1}^K \phi_k(x_i) \phi_k(x_j) = \alpha^{-1} \phi(x_i)^\top \phi(x_j) \label{eq:discrete-dot} \end{equation} $$ のように書くことができます。

このように行列$\mathbf{K}$は各要素がベクトル同士の内積によって定義される「グラム行列」になっていることが分かります。この記事で、詳しく言及することは避けますが、このようなケースにおいては、内積を特定の条件を満たすカーネル関数$k$によって書き換えて $$ K_{ij} = k(x_i, x_j) $$ とかけるのでした。

ここで多くの文献では、$\phi_k$を$\mu_k$中心とするガウス分布とおいて、カーネル関数としてガウス関数が再び得られることを示しています。この時、基底関数$\phi_k$の添字$k$によって変化するのは分布中心$\mu_k$だけなので、$k$をベクトルの要素を表す添字として定義した\eqref{eq:discrete-dot}は$\mu_k$を変数とする関数同士の内積として、 $$ K_{ij} = \alpha^{-1} \int_{-\infty}^{\infty} \phi(x_i; \mu_k) \phi(x_j; \mu_k) d\mu_k $$ のような形で書き直せます。この$\phi(x; \mu_k)$に具体的なガウス関数の値、すなわち $$ \phi(x; \mu_k) = \exp \left( -\frac{\| x - \mu_k \|^2}{r^2} \right) $$ を代入してみると、 $$ \begin{aligned} K_{ij} &= \exp\left( -\frac{\| x_i - x_j \|^2}{2 r^2} \right) \int_{-\infty}^{\infty} \exp \left( -\frac{ 2 \| \mu_k - \frac{x_i + x_j}{2} \|^2}{r^2} \right) d\mu_k \\ &= \sqrt{\left( \frac{\pi r^2}{2} \right)^n} \exp\left( -\frac{\| x_i - x_j \|^2}{2 r^2} \right) \end{aligned} $$ となり、確かに一般的なガウスカーネルの形を得ることができます。


このような説明をすると結局、具体的な$\phi_k$の形を決めて$K_{ij}$を導くしかないのか、と思ってしまいそうですが、実はそうでなくとも良い、というのがカーネル法の良いところです。

カーネル法においては「Mercerの定理」というカーネル関数の性質に関する定義を利用して、ある程度自由にカーネル関数の形を決めることが可能です。

この「Mercerの定理」では、ある二変数関数$k(x, x’)$について、以下の2つの条件が同値であると言っています。

  • $k(x, x’) = \phi(x)^\top \phi(x’)$を満たす関数$\phi$が存在する
  • 任意の$x, x’$について$k(x, x’) = k(x’, x)$であり、$k(x, x’)$が半正定値性を持つ

上記の条件に現れる半正定値性とは任意の関数$f(x)$について、 $$ \iint k(x, x’) f(x) f(x’) dx dx’ \geq 0 $$ を満たすことで、これは関数を$k(x, x’)$を無限次元の行列 (関数解析的には線形作用素)であると考えた時、その行列が半正定値行列であることに対応しています。

この性質を利用したカーネル関数$k$の一例として、ガウス過程においては、 $$ \begin{equation} k(x_i, x_j) = \theta_0 \exp \left( -\frac{\theta_1}{2} \| x_i - x_j \|^2 \right) + \theta_2 + \theta_3 x_i^\top x_j \label{eq:kernel-function} \end{equation} $$ という形のカーネルを用いることが多い(PRML本下巻 P.18)のですが、この関数はおそらく単純な関数同士の内積としては表せないと思います (もし間違っていたらご指摘いただければ幸いです)。

その一方で、\eqref{eq:kernel-function}の各項、すなわちガウス関数の項、定数の項、内積の項はそれぞれが対称かつ半正定値 (Mercerの定理の2つ目の条件)を満たすので、その和も同様に対称かつ半正定値となります。

このように単純なカーネル関数の組み合わせにより、より複雑なカーネル関数を使用できる、というのがカーネル法の強力なところです。カーネル法について、より詳しく知りたい方は赤穂先生の「カーネル多変量解析」などをご参照ください。


ノイズモデルの導入

ここまでの議論では、観測値である$y$がノイズを含まないモデルを考えていましたが、より実用的には観測値にノイズが含まれるとしてモデル化をすることが重要です。

そこでノイズ$\epsilon$が以下の事前分布に従うと考えます。 $$ p(\boldsymbol\epsilon) = N(\mathbf{0}, \beta^{-1} \mathbf{I}) $$ このノイズモデルを導入して、 $$ \mathbf{t} = \mathbf{y} + \boldsymbol\epsilon = \boldsymbol\Phi \mathbf{w} + \boldsymbol\epsilon $$ という定式化を考えてみましょう。今、ノイズ項の影響から、 $$ p(\mathbf{t} | \mathbf{y}) = N(\mathbf{y}, \beta^{-1} \mathbf{I}) $$ であり、なおかつ\eqref{eq:posterior}から $$ p(\mathbf{y}) = N(\mathbf{0}, \alpha^{-1} \boldsymbol\Phi \boldsymbol\Phi^\top) $$ なのでした。

この二つの式から確率分布に関する積分公式を使って$\mathbf{y}$を消去します。なお計算の過程を簡単にするため、$p(\mathbf{t} | \mathbf{y})$と$p(\mathbf{y})$に対応する正規分布の共分散行列を、それぞれ$\mathbf{B}$, $\mathbf{K}$と書くことにします。 $$ \begin{aligned} p(\mathbf{t}) &= \int p(\mathbf{t} | \mathbf{y}) p(\mathbf{y}) d\mathbf{y} \\ &= C \int \exp\left( -\frac{1}{2} (\mathbf{t} - \mathbf{y})^\top \mathbf{B}^{-1} (\mathbf{t} - \mathbf{y}) \right) \exp\left(-\frac{1}{2} \mathbf{y}^\top \mathbf{K}^{-1} \mathbf{y} \right) d\mathbf{y} \end{aligned} $$ 上記の式で$C$は定数です。かなり複雑なのですが、注意して$\exp$の中身を整理していくと、 $$ \begin{aligned} & -\frac{1}{2}\mathbf{y}^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) \mathbf{y} + \mathbf{t}^\top \mathbf{B}^{^-1} \mathbf{y} -\frac{1}{2} \mathbf{t}^\top \mathbf{B}^{-1} \mathbf{t} \\ =& -\frac{1}{2}\mathbf{y}^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) \mathbf{y} + \left( (\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top} \mathbf{t} \right)^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) \mathbf{y} \\ & \quad -\frac{1}{2} \left( (\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top} \mathbf{t} \right)^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) \left( (\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top} \mathbf{t} \right) \\ & \quad +\frac{1}{2} \left( (\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top} \mathbf{t} \right)^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) \left( (\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top} \mathbf{t} \right) \\ & \quad -\frac{1}{2} \mathbf{t}^\top \mathbf{B}^{-1} \mathbf{t} \\ =& -\frac{1}{2} (\mathbf{y} - (\mathbf{B}^{-1} + \mathbf{K}^{-\top})\mathbf{B}^{-\top} \mathbf{t})^\top (\mathbf{B}^{-1} + \mathbf{K}^{-1}) (\mathbf{y} - (\mathbf{B}^{-1} + \mathbf{K}^{-\top})\mathbf{B}^{-\top} \mathbf{t}) \\ & \quad -\frac{1}{2} \mathbf{t}^\top (\mathbf{B}^{-1} - \mathbf{B}^{-1}(\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top}) \mathbf{t} \end{aligned} $$ となります。最終結果の第1項を$\exp$の中に入れると多次元ガウス分布になり、第2項には積分変数である$\mathbf{y}$が含まれないので、積分結果においては第1項は適当な定数になって第2項だけが残ります。

この点に注意すると、$C’$を新たな定数として、$p(\mathbf{t})$は次のように書き直せます。 $$ \begin{equation} p(\mathbf{t}) = C’ \exp\left( -\frac{1}{2} \mathbf{t}^\top (\mathbf{B}^{-1} - \mathbf{B}^{-1}(\mathbf{B}^{-1} + \mathbf{K}^{-1})^{-\top} \mathbf{B}^{-\top}) \mathbf{t} \right) \label{eq:posterior-t-incomplete} \end{equation} $$ ここで、逆行列に関するSharman-Morrison-Woodburyの公式: $$ (\mathbf{A} + \mathbf{BDC})^{-1} = \mathbf{A}^{-1} - \mathbf{A}^{-1}\mathbf{B}(\mathbf{D}^{-1} + \mathbf{CA}^{-1} \mathbf{B})^{-1} \mathbf{CA}^{-1} $$ において、$\mathbf{A} = \beta^{-1} \mathbf{I}$, $\mathbf{B} = \mathbf{C} = \mathbf{I}$, $\mathbf{D} = \mathbf{K}$を代入すると、 $$ (\beta^{-1} \mathbf{I} + \mathbf{K})^{-1} = \beta \mathbf{I} - \beta^2 (\beta \mathbf{I} + \mathbf{K}^{-1})^{-1} $$ という等式が得られます。ここで$\mathbf{K}$ならびにその逆行列が対称行列であることに注意すると、\eqref{eq:posterior-t-incomplete}の共分散行列は$\beta^{-1} \mathbf{I} + \mathbf{K}$であることが分かります。

以上より、ノイズを考慮したガウス過程$\mathbf{t}$の分布: $$ p(\mathbf{t}) = C’ \exp\left( -\frac{1}{2} \mathbf{t}^\top (\beta^{-1} \mathbf{I} + \mathbf{K})^{-1} \mathbf{t} \right) = N(\mathbf{0}, \beta^{-1}\mathbf{I} + \alpha^{-1} \boldsymbol\Phi \boldsymbol\Phi^\top) $$ が得られます。


未知データに予測値とその分散

今、既知のデータとして$N$個のデータの組$(y_1, x_1), \ldots, (y_N, x_N)$が与えられていて、そこから未知のデータ$x_{N+1}$に対する予測値$t_{N+1}$を求めてみます。以下、これらのデータのうち$N$個をまとめたベクトルを$\mathbf{t}_{N}$のように書くことにします。

これら全ての値に対する同時分布は、ここまでの説明から $$ p(\mathbf{t}_{N+1}) = N(\mathbf{0}, \mathbf{C}_{N+1}) $$ という確率分布に従うことが分かります。この時、共分散行列$\mathbf{C}_{N+1}$はブロック行列として、 $$ \mathbf{C}_{N+1} = \begin{bmatrix} \mathbf{C}_N & \mathbf{k} \\ \mathbf{k}^\top & c \end{bmatrix} $$ のような形で書くことができます。ここで$\mathbf{k}$は$k(x_i, x_{N+1})$を要素取るすような$N$次元ベクトルです。以下の計算で使うため、このブロック行列の逆行列を示しておきます。 $$ \mathbf{C}_{N+1}^{-1} = \begin{bmatrix} \mathbf{Z}^{-1} & -\frac{\mathbf{C}_{N}^{-1} \mathbf{k}}{d} \\ -\frac{\mathbf{k}^\top \mathbf{C}_{N}^{-1}}{d} & d^{-1} \end{bmatrix} $$ ただし、$\mathbf{Z}$は適当な行列、$d = c - \mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{k}$とします。

この確率分布において、$\mathbf{t}_{N}$が定数であるとして、$t_{N+1}$の事後分布を求めてみると、上記の逆行列を用いて、 $$ \begin{aligned} p(t_{N+1} | \mathbf{t}_N) &= C \exp \left( -\frac{1}{2}\mathbf{t}_{N+1}^\top \mathbf{C}_{N+1}^{-1} \mathbf{t}_{N+1} \right) \\ &= C \exp \left( -\frac{1}{2} \mathbf{t}_N^\top \mathbf{Z}^{-1} \mathbf{t}_{N} + \frac{\mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{t}_N}{d} t_{N+1} + \frac{t_{N+1}^2}{d} \right) \\ &= C’ \exp \left( -\frac{(t_{N+1} - \mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{t}_{N})^2}{2 (c - \mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{k})} \right) \end{aligned} $$ となります。なお$C$ならびに$C’$は適当な定数です。従って、新しいデータ$x_{N+1}$に対する予測値$t_{N+1}$は、 $$ \begin{equation} p(t_{N+1} | \mathbf{t}_{N}) = N(\mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{t}_N, c - \mathbf{k}^\top \mathbf{C}_{N}^{-1} \mathbf{k}) \end{equation} $$ という正規分布に従うことが分かります。


ハイパーパラメータの最適化

ここまでの例では、重みパラメータ$\mathbf{w}$およびノイズ$\boldsymbol\epsilon$が従う正規分布に対して、それぞれ$\alpha$、$\beta$というパラメータを用いてきました。また、この他にも\eqref{eq:kernel-function}はいくつかのパラメータを持っています。これらのパラメータはデータから決定されないハイパーパラメータとなっています。

これらのハイパーパラメータは、データに合うように事前知識によって設定されることが一般的ですが、最尤推定によって決定することもできます。

尤度関数$L(\theta | \mathbf{t})$として確率$p(\mathbf{t})$の対数をとって、尤度を最大化することを考えます。正規分布の定義から、尤度関数は $$ L(\theta | \mathbf{t}) = -\frac{1}{2} \log \det \mathbf{C}_{N} + \frac{1}{2} \mathbf{t}^\top \mathbf{C}_{N}^{-1} \mathbf{t} - \frac{N}{2} \log (2 \pi) $$ のようになります。尤度を最大化するためには尤度関数の勾配をもとめて、最急降下法などを適用すれば良いと考えられるので、尤度関数の微分を計算します。行列式の対数と逆行列の微分に注意すると、とあるパラメータ$\theta$に関する尤度関数の偏微分は以下のようになります。 $$ \begin{equation} \frac{\partial L(\theta | \mathbf{t})}{\partial \theta} = -\frac{1}{2} \text{tr} \left( \mathbf{C}_{N}^{-1} \frac{\partial \mathbf{C}_{N}}{\partial \theta} \right) + \frac{1}{2} \mathbf{C}_{N}^{-1} \frac{\mathbf{C}_{N}}{\partial \theta} \mathbf{C}_{N}^{-1} \label{eq:likelihood-grad} \end{equation} $$

以下に示す実験例では$p(\mathbf{w})$ならびに$p(\boldsymbol\epsilon)$のパラメータである$\alpha$と$\beta$を最適化する例を示します。これらのパラメータに関する$\mathbf{C}_{N}$の微分は $$ \begin{aligned} \frac{\partial \mathbf{C}_N}{\partial \alpha} &= -\frac{\boldsymbol\Phi \boldsymbol\Phi^\top}{\alpha^2} \\ \frac{\partial \mathbf{C}_N}{\partial \beta} &= -\frac{\mathbf{I}}{\beta^2} \end{aligned} $$ となるので、これらの式を\eqref{eq:likelihood-grad}に代入することで$\alpha$, $\beta$それぞれに関する勾配を求めることができます。

以下に示す実験例ではscipy.optimize.minimizeに上記の勾配を与えて、共役勾配法によりハイパーパラメータを最適化します。

なお、カーネル関数に用いられているパラメータも同時に最適化する場合も、カーネル関数の微分を使えば容易に尤度関数の微分を計算することができます。


実験

それでは、上記の結果を使って、モデルの決定と未知データに対する予測を行ってみます。

今回は予測する関数として、 $$ f(x) = \sin(2\pi x) \quad x \in [0, 2 \pi] $$ を採用し、この関数を適当な$x_i$で評価したのち、積分布に従うノイズ$\epsilon$を付加しておきます。

1つ目の実験では、$\alpha$と$\beta$を適当に決定してガウス過程を導きます。その後、2つ目の実験では$\alpha$, $\beta$を「ハイパーパラメータの最適化」に示した内容を用いて勾配法により最適化します。

こちらの結果から分かる通り、1つ目の実験の結果を見ると「データが多いところでは分散が小さく」、逆に「データが少ないところでは分散が大きく」なるという傾向は見られるものの、実際の分散の量 (b_realの逆数)と離れたb etaの値を設定しているがために、平均の曲線 (赤い実践)が実際の曲線 (青の点線)と離れていて、分散もかなり大きく見積もられていることが分かります。

その一方で、2つ目の実験により$\alpha$と$\beta$の値を最適化してあげることで、$\beta$の値に関しては、より実際の値 (b_real)に近い値(b_best = 4.797)が得られていることが分かります。また回帰により得られる曲線も目的の曲線に近く、分散も小さく抑えられています。


まとめ

今回の記事では、ガウス過程の回帰問題への応用をご紹介しました。

ガウス過程は一般的な回帰問題でデータから求められるパラメータを「確率分布」によって与えることで、推定量も同様に確率分布として表現するモデルでした。このようなパラメータが確率分布であることを「パラメータがない」とみなして、ノンパラメトリック・ベイズ法の一種と位置づけられています。

ただ実用的にはカーネル関数やノイズモデルにいくつかの(ハイパー)パラメータを含むため、これを最尤推定によりデータから決定する方法もご紹介いたしました。今回の記事がPRML本やその他の文献を理解する助けになれば幸いです。

今回も最後までお読みいただきありがとうございました。


参考文献

  • 石井 健一郎, 上田 修功 著 『続・分かりやすい パターン認識』 [link]

  • C.M.ビショップ『パターン認識と機械学習 下』 [link]

  • 赤穂 昭太郎『カーネル多変量解析』 [link]

  • Rasmussen and Willams, “Gaussian Processes for Machine Learning” [link]