タグ付けされた質問 「variational-bayes」

変分ベイズ法は、ベイズ推論および機械学習で見られる扱いにくい積分を近似します。主に、これらの方法は次の2つの目的のいずれかを果たします。事後分布の近似、または観測されたデータの限界尤度の境界。


1
変分推論とMCMC:どちらを選択するか
Gibbsサンプリング、Metropolis HastingsなどのMCMCのさまざまなフレーバーを含め、VIとMCMCの両方の一般的なアイデアが得られたと思います。このペーパーでは、両方の方法のすばらしい説明を提供します。 次の質問があります。 ベイジアン推論を行いたい場合、なぜ一方の方法をもう一方より選択するのですか? 各方法の長所と短所は何ですか? これはかなり広範な質問であることを理解していますが、洞察をいただければ幸いです。

1
変分ベイズとEMの関係
変分ベイズ法はEMアルゴリズムの一般化であるとどこかで読みました。実際、アルゴリズムの反復部分は非常に似ています。EMアルゴリズムが変分ベイズの特別なバージョンであるかどうかをテストするために、次のことを試しました。 YYYはデータ、は潜在変数のコレクション、はパラメーターです。変分ベイズでは、ような近似を作成できます。どこ sが単純で、扱いやすい分布です。Θ P (X 、Θ | Y )≈ Q X(X )Q Θ(Θ )QXXXΘΘ\ThetaP(X,Θ|Y)≈QX(X)QΘ(Θ)P(X,Θ|Y)≈QX(X)QΘ(Θ)P(X,\Theta|Y) \approx Q_X(X)Q_\Theta(\Theta)QQQ EMアルゴリズムはMAPポイントの推定値を見つけるため、Q ^ 1_ \ Theta(\ Theta)= \ delta _ {\ Theta ^ 1}(\ Theta)のようなデルタ関数を使用すると、変分ベイズがEMに収束できると考えました。Q1Θ(Θ)=δΘ1(Θ)QΘ1(Θ)=δΘ1(Θ)Q^1_\Theta(\Theta)=\delta_{\Theta^1}(\Theta)。Θ1Θ1\Theta_1は、EMで通常行われるパラメーターの最初の推定値です。 場合Q1Θ(Θ)=δΘ1(Θ)QΘ1(Θ)=δΘ1(Θ)Q^1_\Theta(\Theta)=\delta_{\Theta^1}(\Theta)、与えられたQ1バツ(X)QX1(X)Q^1_X(X) KL発散を最小化式によって求められるQ1バツ(X)= exp(EδΘ1[ lnP(X、Y、Θ )] )∫exp(EδΘ1[ lnP(X、Y、Θ )] )dバツQX1(X)=exp⁡(EδΘ1[ln⁡P(X,Y,Θ)])∫exp⁡(EδΘ1[ln⁡P(X,Y,Θ)])dXQ^1_X(X)=\frac{\exp(E_{\delta_{\Theta^1}}[\ln P(X,Y,\Theta)])}{\int\exp(E_{\delta_{\Theta^1}}[\ln P(X,Y,\Theta)])dX} 上記の式はQ1バツ(X)= P(X| Θ1、Y)QX1(X)=P(X|Θ1,Y)Q^1_X(X)=P(X|\Theta^1,Y)に簡略化され、このステップはExpectationステップと同等であることが判明しました。 EMアルゴリズムの! しかし、これを継続するものとして最大化ステップを導き出すことはできません。次のステップでは、Q ^ 2_ \ Theta(\ …

2
変分オートエンコーダーでのKLD損失と再構成損失の重み付け方法
VAEで見たほぼすべてのコード例で、損失関数は次のように定義されています(これはtensorflowコードですが、theano、torchなどでも同様です。これはconvnetでも見られますが、あまり関係ありません) 、単に合計が引き継がれる軸に影響します): # latent space loss. KL divergence between latent space distribution and unit gaussian, for each batch. # first half of eq 10. in https://arxiv.org/abs/1312.6114 kl_loss = -0.5 * tf.reduce_sum(1 + log_sigma_sq - tf.square(mu) - tf.exp(log_sigma_sq), axis=1) # reconstruction error, using pixel-wise L2 loss, for each batch rec_loss = …

1
変分オートエンコーダーとは何ですか?また、どの学習タスクに使用されますか?
ごとに 、このと、この答えは、オートエンコーダは、次元削減のためのニューラルネットワークを使用する技術であるように見えます。さらに、変分オートエンコーダー(「従来の」オートエンコーダーとの主な違い/利点)、およびこれらのアルゴリズムが使用される主な学習タスクも知りたいと思います。

4
オートエンコーダではなく、バリエーションオートエンコーダを使用する必要があるのはいつですか?
変分オートエンコーダーと通常の(決定論的)オートエンコーダーの基本構造とそれらの背後にある数学を理解していますが、あるタイプのオートエンコーダーを他のタイプよりもいつ、なぜ好むのでしょうか?私が考えることができるのは、変分オートエンコーダーの潜在変数の事前分布だけで、潜在変数をサンプリングしてから新しいイメージを構築できることです。決定論的オートエンコーダに対する変分オートエンコーダの確率論はどのような利点がありますか?

1
機械学習モデルの「容量」とは何ですか?
Carl DoerschによるVariational Autoencodersに関するこのチュートリアルを勉強しています。2ページ目には、次のように記載されています。 このようなフレームワークの中で最も人気のあるものの1つは、このチュートリアルの主題であるVariational Autoencoder [1、3]です。このモデルの前提条件は弱く、逆伝播によるトレーニングは高速です。VAEは概算を行いますが、この概算によって導入されるエラーは、大容量モデルを考えると間違いなく小さいものです。これらの特徴は人気の急速な上昇に貢献しています。 私は過去に、大容量モデルに関するこの種の主張を読みましたが、それについて明確な定義を見つけられないようです。私はこの関連するスタックオーバーフローの質問も見つけましたが、私にとっては答えは非常に満足できません。 モデルの容量の定義はありますか?測定できますか?

3
「扱いやすい」分布とはどういう意味ですか?
たとえば、生成的敵対的ネットワークでは、潜在変数zが与えられたxの条件付き分布が「扱いやすい」ため、推論が容易であるとよく耳にします。また、ボルツマンマシンと変分オートエンコーダーが使用され、事後分布が扱いにくいため、何らかの近似を適用する必要があることをどこかで読んだことがあります。厳密な定義で、「扱いやすい」とはどういう意味ですか?または、上記の例で誰かが説明できますか?そのコンテキストで扱いやすいとはどういう意味ですか?

3
数値積分が高すぎるとはどういう意味ですか?
ベイジアン推論について読んでいて、「限界尤度の数値積分は高すぎる」というフレーズに出会いました 私は数学のバックグラウンドを持っていませんが、ここで高価とはどういう意味か疑問に思っていましたか?それは単に計算能力の観点からですか、それとも何かありますか。

1
変分推論、KLダイバージェンスには真のが必要
変分推論について(非常に控えめに)理解するには、以下を最適化する分布を見つけることにより、未知の分布を近似しようとします。pppqqq KL(p||q)=∑xp(x)logp(x)q(x)KL(p||q)=∑xp(x)logp(x)q(x)KL (p||q) = \sum\limits_{x} p(x)log \frac {p(x)}{q(x)} 変分推論の理解に時間を費やすときはいつでも、私はこの公式に挑戦し続け、私は要点を見逃しているように思わずにはいられません。を計算するためにを知る必要があるようです。しかし、全体の要点は、この分布知らなかったということです。pppKL(p||q)KL(p||q)KL(p||q)ppp 私が変分を読み込もうとするたびに私を悩ませてきたのはまさにこの点です。何が欠けていますか? 編集: @wijの回答の結果として、ここにいくつかのコメントを追加します。より正確に説明します。 私が興味を持っているケースでは、次のことが当てはまると考えるのは確かに完全に合理的だと思われます。 p(θ|D)=p(D|θ)p(θ)p(D)∝p(D|θ)p(θ)p(θ|D)=p(D|θ)p(θ)p(D)∝p(D|θ)p(θ)p(\theta | D) = \frac{p(D|\theta)p(\theta)}{p(D)} \propto p(D|\theta)p(\theta) この場合、とモデルを選択したので、がどのように比例して見えるかを知ることができました。次に、を推定できるように、家族分布 [ガウシアンと言いましょう] を選択する必要があると言って正しいでしょうか。この場合、正規化されていない近いガウス分布に適合しようとしているように感じます。これは正しいです?p (D | θ )p (θ )q K L (p (θ | D )| | q )p (D | θ )p (θ )pppp(D|θ)p(D|θ)p(D|\theta)p(θ)p(θ)p(\theta)qqqKL(p(θ|D)||q)KL(p(θ|D)||q)KL(p(\theta|D) || q)p(D|θ)p(θ)p(D|θ)p(θ)p(D|\theta)p(\theta) もしそうなら、私の事後は正規分布であると想定しているように感じ、ダイバージェンスに関してこの分布の可能性のある値を見つけようとするだけです。KLKLKL

1
深い生成モデルのVAEと確率的バックプロパゲーションの違いは何ですか?
ディープ生成モデルの自動エンコード変分ベイズと確率的バックプロパゲーションの違いは何ですか?両方の方法での推論は同じ結果につながりますか?著者の両方のグループが互いに引用しているにもかかわらず、2つの方法の明確な比較については知りません。

2
ガウス単位のKL損失
私はVAEを実装しており、単純化された一変量ガウスKL発散の2つの異なる実装がオンラインであることに気付きました。当たり、元発散ここでは、ある 我々は仮定した場合、当社の前単位ガウスすなわちあるμ2=0及びσ2=1、この簡素化まで KLのLO、S、S=-ログ(σ1)+σ 2 1 +μ 2 1KLloss=log(σ2σ1)+σ21+(μ1−μ2)22σ22−12KLloss=log⁡(σ2σ1)+σ12+(μ1−μ2)22σ22−12 KL_{loss}=\log(\frac{\sigma_2}{\sigma_1})+\frac{\sigma_1^2+(\mu_1-\mu_2)^2}{2\sigma^2_2}-\frac{1}{2} μ2=0μ2=0\mu_2=0σ2=1σ2=1\sigma_2=1 KLloss=−1KLloss=−log(σ1)+σ21+μ212−12KLloss=−log⁡(σ1)+σ12+μ122−12 KL_{loss}=-\log(\sigma_1)+\frac{\sigma_1^2+\mu_1^2}{2}-\frac{1}{2} ここには、どこの混乱レストです。上記の実装でいくつかのあいまいなgithubリポジトリを見つけましたが、私がより一般的に使用しているのは次のとおりです。KLloss=−12(2log(σ1)−σ21−μ21+1)KLloss=−12(2log⁡(σ1)−σ12−μ12+1) KL_{loss}=-\frac{1}{2}(2\log(\sigma_1)-\sigma_1^2-\mu_1^2+1) の公式、例えばKerasのオートエンコーダチュートリアル。私の質問は、これらの2つの間に何が欠けているのですか?主な違いは、対数項に係数2を削除することと、分散を二乗しないことです。分析的に、私は後者を成功に導いてきました。助けてくれてありがとう!=−12(log(σ1)−σ1−μ21+1)=−12(log⁡(σ1)−σ1−μ12+1) =-\frac{1}{2}(\log(\sigma_1)-\sigma_1-\mu^2_1+1)

1
モンテカルロと組み合わせた変分ベイズ
私は変分ベイズを読んでいます、そして私が理解しているように、それはあなたが関数で(はモデルの潜在変数であり、は観測されたデータです)を近似するという考えにします、がとして因数分解されるという仮定を行っています。ここで、は潜在変数のサブセットです。次に、最適な係数は次のようになります: p(z∣x)p(z∣x)p(z\mid x)zzzxxxq(z)q(z)q(z)qqqqi(zi)qi(zi)q_i(z_i)ziziz_iqi(zi)qi(zi)q_i(z_i)q∗i(zi)=⟨lnp(x,z)⟩z/i+const.qi∗(zi)=⟨ln⁡p(x,z)⟩z/i+const. q^*_i(z_i) = \langle \ln p(x, z)\rangle_{z/i} + \text{const.} 山括弧は、分布に関してを除くすべての潜在変数の期待値を示します。ziziz_iq(z)q(z)q(z) 現在、この式は通常、分析的に評価され、おおよその目標値に対する正確な答えを提供します。しかし、これは予想であるので、この予想をサンプリングで概算するのが明白なアプローチであることに気付きました。これにより、おおよそのターゲット関数に対するおおよその答えが得られますが、分析アプローチが実行できない場合など、非常に単純なアルゴリズムになります。 私の質問は、これは既知のアプローチですか?名前はありますか?それがそれほどうまく機能しないかもしれない、またはそのような単純なアルゴリズムを生み出さないかもしれない理由はありますか?

2
サンプリングなしの高次元推論問題における不確実性推定?
勾配ベースの最適化と遺伝的アルゴリズムの組み合わせを使用して対数事後のグローバル最大値を見つけることにより、MAP推定を確実に実行できる高次元推論問題(約2000モデルのパラメーター)に取り組んでいます。 MAP推定値を見つけることに加えて、モデルパラメーターの不確実性をある程度推定できるようになりたいです。 パラメータに関して対数事後の勾配を効率的に計算できるため、長期的にはハミルトニアンMCMCを使用してサンプリングを行うことを目指していますが、今のところ、非サンプリングベースの推定に興味があります。 私だけが知っているアプローチ我々は計算してもいるので、多変量正規として後方に近似するモードで、ヘッセ行列の逆行列を計算し、それでもこれは、このような大規模なシステムのために実現不可能と思われることです〜4 × 106∼4×106\sim 4\times10^{6}の要素をHessianその逆を見つけることができなかったと確信しています。 このような場合に一般的にどのようなアプローチが使用されているかを誰かが提案できますか? ありがとう! 編集 -問題に関する追加情報 背景 これは、大規模な物理学実験に関連する逆問題です。いくつかの物理フィールドを記述する2D三角形メッシュがあり、モデルパラメーターは、メッシュの各頂点におけるそれらのフィールドの物理値です。メッシュには約650個の頂点があり、3つのフィールドをモデル化するため、2000個のモデルパラメーターがそこから取得されます。 私たちの実験データは、これらのフィールドを直接測定しない機器からのものですが、フィールドの複雑な非線形関数である量です。さまざまな機器のそれぞれについて、モデルパラメータを実験データの予測にマップするフォワードモデルがあり、予測と測定の比較により対数尤度が得られます。 次に、これらすべての異なる計測器からの対数尤度を合計し、フィールドにいくつかの物理的制約を適用するいくつかの対数優先値を追加します。 したがって、この「モデル」がカテゴリにきちんと分類されるかどうかは疑問です。モデルを選択することはできません。実験データを収集する実際の機器がどのように機能するかによって決まります。 データセット データセットは500x500の画像で構成され、カメラごとに1つの画像があるため、合計データポイントは500x500x4 = 10610610^6です。 エラーモデル 問題のすべてのエラーを現時点でガウス分布と見なします。ある時点で、柔軟性を高めるためにスチューデントtエラーモデルに移行しようとするかもしれませんが、ガウシアンだけでも問題なく機能するようです。 可能性の例 これはプラズマ物理実験であり、私たちのデータの大部分は、レンズの前に特定のフィルターを備えたプラズマに向けられたカメラから得られ、光スペクトルの特定の部分のみを見ています。 データを再現するには、2つのステップがあります。最初に、メッシュ上のプラズマからの光をモデル化する必要があります。次に、その光をモデル化してカメラ画像に戻す必要があります。 残念ながら、プラズマからの光のモデル化は、実効レート係数とは何かに依存します。これは、フィールドが与えられたさまざまなプロセスによって放出される光の量を示します。これらのレートはいくつかの高価な数値モデルによって予測されるため、それらの出力をグリッドに保存し、値を検索するために補間する必要があります。レート関数データは一度だけ計算されます-データを保存してから、コードの起動時にそこからスプラインを作成し、そのスプラインをすべての関数評価に使用します。 仮定するR1R1R_1及びR2R2R_2(我々は補間によって評価する)速度関数、で次に排出されている私ii「番目頂点メッシュのE私Ei\mathcal{E}_iによって与えられ、 E私= R1(x私、y私)+ z私R2(x私、y私)Ei=R1(xi,yi)+ziR2(xi,yi) \mathcal{E}_i = R_1(x_i, y_i) + z_i R_2(x_i, y_i) ここで(x 、y、z)(x,y,z)(x,y,z)メッシュ上でモデル化する3つのフィールドです。放出のベクトルをカメラ画像に取得するのは簡単です。これは、各カメラピクセルがメッシュのどの部分を透視するかをエンコードする行列GG\mathbf{G}を乗算するだけです。 エラーはガウスであるため、この特定のカメラの対数尤度は L=−12(GE⃗ −d⃗ )⊤Σ−1(GE⃗ −d⃗ )L=−12(GE→−d→)⊤Σ−1(GE→−d→) \mathcal{L} = -\frac{1}{2} (\mathbf{G}\vec{\mathcal{E}} …

2
ガウス分布のベイズ混合への確率変分推論の適用
この論文に続いて、確率的変分推論で混合ガウスモデルを実装しようとしています。 これはガウス混合のpgmです。 論文によると、確率的変分推論の完全なアルゴリズムは次のとおりです。 そして、私はそれをGMMにスケーリングする方法にまだ非常に混乱しています。 まず、ローカル変分パラメーターはあり、その他はすべてグローバルパラメーターであると考えました。私が間違っていたら訂正してください。ステップ6はどういう意味ですか?これを達成するにはどうすればよいですか?qzqzq_zas though Xi is replicated by N times これで私を助けてくれませんか?前もって感謝します!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.