ガウス過程と機械学習に関するコードです.
ガウス過程を使いたいときは参考程度にしてみてください.
jupyterhubを開く.
新規を押す.
端末を開く.
$ git clone https://github.com/LABO-M/gaussian-process.git
を入力してEnterを押す.
ディレクトリが入っているか確認.
手元にあるソースコードを更新したい場合は、以下の手順を行う。
jupyterhubを開く.
「新規」ボタンから端末を開く.
$ cd gaussian-process
$ git pull origin main
手元のコードの追加や変更をした場合、上記の方法ではリポジトリの更新ができず、以下のエラーが発生する。
error: Your local changes to the following files would be overwritten by merge:
変更を行ったファイル名
Please commit your changes or stash them before you merge.
このエラーが表示されている場合は、以下の手順を行う。
jupyterhubを開く.
「新規」ボタンから端末を開く.
$ cd gaussian-process
$ git fetch origin main
$ git reset --hard origin/main
ガウス過程回帰を実装してみたファイルになります.
ブラウン運動もどきを生成し,実際にガウス過程回帰をしています.
まずはカーネルの定義です.このカーネルを持ったガウス過程を我々はモデル化します.
モデル化したカーネルを使い,訓練データを用いてフィッティングします.
テストデータを用いて,各説明変数における目的変数の分布を計算します.
$p(y^* | \vec{x}^* ,\mathcal{D}) = \mathcal{N} (\textbf{k}^{\top}_* K^{-1} \vec{y} , \textbf{k}_{**} - \textbf{k}^{\top}_* K^{-1} \textbf{k}_*)$
各点にガウス分布を定義できたら,それを可視化しました.可視化したのは期待値と標準偏差を2倍した範囲です.
教科書の図を再現したコードです.教科書のイメージがつかない方は参考にしてください.
ガウス過程と生成モデルに関連する内容が記載されています.