PRMLの6.4.5〜6.4.6の範囲にあるガウス過程による分類をRで実装してみました。 ソースコード全文はgithubにアップしています。 http://github.com/thorikawa/prml/blob/master/gaussian_process_classify.R ここでは例として、(1,0),(2,0),(3,0)で1、(0,1),(0,2),(0,3)で0の値を取る訓練集合を用いています。 # Training data x=list(c(1,0),c(2,0), c(3,0), c(0,1), c(0,2), c(0,3)) t=c(1,1,1,0,0,0) training_data_num <- length(x) この訓練集合とカーネル関数をもとに予測分布を導出しています。 ガウス過程においては、訓練集合から予測分布を決める(ほぼ)唯一の要素はカーネル関数