Skip to content

106-/DBM-tensorflow

Repository files navigation

DBM-tensorflow

Implementation of deep Boltzmann machine using TensorFlow.

numpyでの実装を元にTensorFlowで実装し直したものです. GPUが使えたり, numpyのボトルネック(計算過程がいちいちメモリに配置される)が無い分こっちのが早いです. 使い方もほぼ同じ.

numpyでの実装では処理速度的な限界から3層までの実装となっていますが, この実装では好きなだけ層を重ねることができます(2-SMCI法を除く).

使い方

Python3.12が必要です.

tensorflowという大きめのモジュールを使用するため、python -m venv .venv などで環境を分離するのをおすすめします。

$ git clone https://github.com/106-/DBM-tensorflow.git DBM
$ cd DBM

サブリポジトリのファイルを持ってくる

$ git submodule update --init --recursive

必要モジュールのインストール

$ pip install -r ./requirements.txt

あとは実験条件をjsonファイルに記述し実行すればOK

./train_main.py ./config/3-layer/exact/double.json 100     # 100は実行エポック

result/ 下に実験の結果が出力されます. *_log.json のものがKLDと対数尤度のログ, *_model.json がモデルの重みパラメータのファイルです.

References

About

Implementation of deep Boltzmann machine using TensorFlow.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •