PythonでRBMを書いて実験しました.
Bernoulli-Bernoulli RBMだけでなく,Gaussian-Bernoulli RBMも実装しました.
ただし,GB-RBMは"Improved Learning of Gaussian-Bernoulli Restricted Boltzmann Machines"[pdf]という論文を参考に分散を更新するようにしています.
improved GB-RBMは人間の音声のパラメータであるメルケプストラム系列を使って実験しました.
実装はGitレポジトリにあります.
実験(BB-RBM)
reconstruct error$E$はいい感じに下がっています.
E = \frac{1} {2}(data-reconst)^{2}
さて,RBMにパターンを覚えさせたところで,適当にノイズを加えた画像をRBMにつっこんでみます.