2017-03-04 7 views
1

元のオートエンコード変分ベイズpaperでは、著者は2.4節の「再パラメータ化トリック」について説明します。トリックは、潜在状態zを学習可能な平均とシグマ(エンコーダによって学習)に分解し、ガウスノイズを追加することです。その後、zからデータポイントをサンプリングして(基本的にはエンコードされた画像を生成します)、デコーダがエンコードされたデータポイントを元の画像にマッピングするようにします。バリアントオートエンコーダのガウスパラメータ化の説明

私は、これがどれほど奇妙であるかを知りません。潜在変数モデルについて具体的に説明してください:

  1. 潜在的な状態がガウス型であると仮定しているのはなぜですか?
  2. ガウスが画像を生成することはどうしたら可能ですか?
  3. そして、バックプロップは、未知の非線形関数ではなく、ガウス関数を学習するためにエンコーダをどのように破壊しますか?

TensorFlowのhereの潜在モデルの実装例です。

...neural net code maps input to hidden layers z_mean and z_log_sigma 

self.z_mean, self.z_log_sigma_sq = \ 
self._recognition_network(network_weights["weights_recog"], 
          network_weights["biases_recog"]) 

# Draw one sample z from Gaussian distribution 
n_z = self.network_architecture["n_z"] 
eps = tf.random_normal((self.batch_size, n_z), 0, 1, 
          dtype=tf.float32) 
# z = mu + sigma*epsilon 
self.z = tf.add(self.z_mean, 
       tf.mul(tf.sqrt(tf.exp(self.z_log_sigma_sq)), eps)) 

...neural net code maps z to output 

答えて

1
  1. 彼らはガウスに似たものを選ぶ。彼らは可能な解決策のことを強制され、エンコーダのアクティベーションがガウス分布に従うと仮定されていません

  2. イメージはアクティベーション/機能のデコードから生成され、アクティベーションはガウス型に似ています。

  3. これらは、アクティベーション分布とガウス分布との間のKL発散を最小限に抑えます。

+0

私が質問を書いた時、私はKL最小化の重要性を忘れていたと思います。 – vega