akiyamalab/NNSim

提案:gaussian modelとhopfield modelを1つのコードに統合する

Closed this issue · 4 comments

Hopfield型NNはGaussian Machineの出力分散 σ=0 のケースで、その他は変化はないはず。コードはなるべく小さくした方が今後の開発のために有利なのと、主にGaussian Machineを使う、という議論になったので、
Hopfield型NNはσ=0にしたGaussian Machineとして対応する方が良いのではないか。

  • Advantage
    • 保守性:コード修正のポイントが減少する
  • DIsadvantage
    • 速度:Hopfield型NNの実行時にも(不要な)乱数生成が発生するので、速度が低下する
      • ただし、計算がO(N^2) (実際には疎結合なのでO(N)程度かもしれないが)なのに対し、乱数生成回数はO(N)で定数項もそこまで大きくないので、ほとんど速度性能に現れないかも?

ありがとうございます。

src/hopfield_model.hpp, src/hopfield_model.cppを削除し、optionにてhopfieldが指定された場合はノイズの分散σ=0としてGaussian Machineを実行するようにしました。

次回以降からで良いので、Issueに関するcommitを行う際にはコミットタイトルの一番最初に #4 のようにIssueの番号を付与すると良いと思います。そうすると自動的にこのIssueに、Commitが紐づいてくれます。

#4 remove hopfield_model.cpp」とか。

ありがとうございます。
pd-blast2の時にそういった練習をしていたはずなんですが、完全に忘れてました…。以降は付けようと思います。

いえいえ。よろしくお願いします 👍