はじめに
機械学習に関するちょっとしたメモ書きです。
傾きが(従属変数と独立変数の共分散)/(独立変数の分散)であるということを思い出すと、機械学習の予測式が理解しやすくなる、という話です。メモ書きなので結構適当ですが、理解の助けになれば幸いです。
最小二乗解の理解
こちらのサイトにあるように、$y=ax+b$というモデルにおける$a,b$の最小二乗解$\hat{a},\hat{b}$はそれぞれ次の形で与えられます。
\begin{align}
\hat{a}&=\frac{Cov(x,y)}{Var(x)}\\
\hat{b}&=\mu_y-\hat{a}\mu_x
\end{align}
ここで$\mu_y,\mu_x$は$y,x$それぞれの平均を表しています。やや気持ち悪い形をしていますが、$y=ax+b$の中にそれぞれを代入し、形を整えると…
(y-\mu_y)=\frac{Cov(x,y)}{Var(x)}(x-\mu_x)
これは傾きが$\frac{Cov(x,y)}{Var(x)}$となる線形式を$(\mu_x,\mu_y)$を通るように移動させただけであり、思いのほか大したことを言っていないことが分かります。
ここで重要なのは、線形予測をする際、その傾きは(従属変数と独立変数の共分散)/(独立変数の分散)で与えられるということです。以下では、(従属変数と独立変数の共分散)/(独立変数の分散)という量が機械学習の予測式でよく出てくること、また、それを傾きとして捉えると予測式がより理解しやすくなることを見ていきます。
条件付多変量正規分布
n次元多変量正規分布に従う$\mathbf{x}\sim MVN(\mathbf{0},V)$に対して、ベクトル$\mathbf{x}$を二つに分割し$\mathbf{x}_1,\mathbf{x}_2$とします($\mathbf{x}=(\mathbf{x}_1,\mathbf{x}_2)$)。この時$\mathbf{x}_1|\mathbf{x}_2$が従う分布は条件付多変量正規分布と呼ばれ、その分布は解析的に導くことができます。詳しい計算はこちらに譲りますが、その分布の期待値は次の式に従うことが知られています。
\mu_{x_1|x_2}=\mu_{x_1}+V_{x_1x_2}V_{x_2x_2}^{-1}(x_2-\mu_{x_2})
ここで、$V_{x_1x_2}V_{x_2x_2}^{-1}$が(従属変数と独立変数の共分散)/(独立変数の分散)であることに気づけば、先ほどと同じ単純な線形回帰式であることが分かります。
カーネル法による予測
パターン認識と機械学習(prml)の第6章p3にはカーネル法による線形回帰の予測式が次のように書かれています。
y(\mathbf{x})=\mathbf{k}(\mathbf{x})^T(\mathbf{K}+\lambda\mathbf{I})^{-1}\mathbf{t}
ここで$\mathbf{t}$は$y$の観察値、$\mathbf{k}(\mathbf{x})$は$k_n(\mathbf{x})=k(\mathbf{x}_n,\mathbf{x})$を要素に持つベクトル、$\mathbf{K}$は$n$行$m$列の要素を$k(\mathbf{x}_n,\mathbf{x}_m)$とする行列を表しています。
さて、少し飛躍はありますが、$\lambda$を誤差分散とすると、$(\mathbf{K}+\lambda\mathbf{I})$は$y$の全分散であり、$\mathbf{k}(\mathbf{x})$は$\mathbf{t}$と$y$の共分散であると考えることができます。さらに$\mathbf{t},y$の平均値が0であるとするならば、この予測式は線形回帰の式と全く同じ形をしていることが分かります。
推定可能関数の予測式
ここでは詳しく書きませんが、佐々木義之さんの「変量効果の推定とBLUP法」に出てくる推定可能関数$\mathbf{a}^T\mathbf{y}$の予測式もよくよく見ると、(従属変数と独立変数の共分散)/(独立変数の分散)が出てきており、線形回帰式と全く同じであることが分かります。詳しい説明はこちらに譲り、ここでは結果の予測式のみを載せておきます。気になる方は記事をご覧ください。
{\begin{align}
\mathbf{a}^T\mathbf{y}&=\mathbf{k}^T(X^TV^{-1}X)^{-1}X^TV^{-1}\mathbf{y}+C^TV^{-1}(\mathbf{y}-X(X^TV^{-1}X)^{-1}X^TV^{-1}\mathbf{y})
\end{align}\\
}