LoginSignup
3
5

More than 5 years have passed since last update.

Hopfield networkに画像を覚えさせる

Last updated at Posted at 2018-11-10

Hopfield networkでやれること

複数の画像をモデルに埋め込むことができる。

  1. モデルに画像を学習させる
  2. 学習済みモデルを使って、ノイズありの覚えさせた画像から、元々のノイズなしの画像を復元

1. モデルに複数枚の画像を学習させる

覚えさせる画像1:「lena.jpg」 ↓
woman.png

2. 学習済みモデルを使って、ノイズありの覚えさせた画像から、元々のノイズなしの画像を復元

ノイズあり画像1(lena.jpgにノイズを加えた後):「noise_lena.jpg」 ↓
noise_woman.png

ノイズあり画像1(noise_lena.jpg)から復元した画像:「restored_noise_woman.jpg」 ↓
restored_noise_woman.png

Hopfield networkとは

ニューロン間に対照的な相互作用があるニューラルネットワークである。

例として、2 x 2 の画像を想定する。
各ピクセルがニューロンとなり、ニューロン間には自分以外のニューロンとの間に学習した重みwを設定する。

network.png
(※参考1)

学習モード(重みの設定)

プレゼンテーション1.png

想起モード(復元)

プレゼンテーション2.png

(例では、閾値θ=0でも想起できた。)

Hopfield network の学習から想起(復元)までのアルゴリズムは、(とりあえず)以上です。

めちゃくちゃシンプルです。

備考

「適当に長い時間」とは?

ここで、エネルギー関数 E を考える。

プレゼンテーション3.png

エネルギーのイメージ図です。 ↓
谷に落ちると、画像がうまく復元できる。(できない場合もある。 -> 局所解)

enegy.gif
(※参考2)

ボルツマンマシン

Hopfield network は局所最適解に落ちやすい。
よって、この問題を改良したのがボルツマンマシン

ボルツマンマシン

参考

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5