変分オートエンコーダとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 変分オートエンコーダの意味・解説 

変分オートエンコーダー

(変分オートエンコーダ から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/07/24 19:38 UTC 版)

データサイエンス > 機械学習 > 教師なし学習 > 生成モデル > 変分オートエンコーダー

変分オートエンコーダー: Variational Auto-Encoder; VAE)はオートエンコーディング変分ベイズアルゴリズムに基づいて学習される確率項つきオートエンコーダニューラルネットワークである。

ニューラルネットワークを用いた生成モデルの一種であり、深層潜在変数モデルの一種でもある。

オートエンコーディング変分ベイズアルゴリズムの概要

オートエンコーディング変分ベイズアルゴリズム: Auto-Encoding Variational Bayes algorithm; AEVB)は勾配推定値を用いた有向潜在変数モデルと推論モデルの同時最適化アルゴリズムである。

AEVBでは有向潜在変数モデル を推論モデル の導入による変分下界 最大化により最適化する。一般に変分下界の勾配 は intractable であるが、AEVBではこれをモンテカルロ法 () を用いた勾配の不偏推定量 で置き換え、確率的勾配降下法によりパラメータを最適化する。このとき の勾配推定・伝播に関する問題を reparameterization trick で解決する。

セッティング

標本 が各i=1,...,Nに対し、以下で生成されると仮定する#原論文:2.1節

  • まず潜在変数z(i)が何らかの確率密度関数に従って選ばれ、
  • x(i)z(i)に依存した何らかの確率密度関数に従って選ばれる。

ここでθは何らかのパラメーターであり、θの真の値θ*は未知である。またに従って値を選ぶのは計算量的に容易であるものとする。

一方、潜在変数の事後分布 は容易には計算できず、(容易に計算できる)確率密度関数 により、近似する事を考える(近似事後分布#原論文:2.1節。ここではパラメーターである。

近似事後分布を用いると周辺対数尤度 は次のように変形できる:

右辺の第1項は変分下界 あるいはELBOと呼ばれ、第2項は事後分布-近似事後分布間のカルバック・ライブラー情報量に相当する。すなわち次の式が成立している:

ここで ギブスの不等式)より、変分下界最大化は次の2つの意味を持つ:

  • 近似事後分布の近似精度最大化(
  • 生成モデルの尤度最大化(

ゆえに変分下界最大化は最尤推定の代替として利用できる。

目標

標本 に対する変分下界を最大化する を目標とする。すなわち次の式で表される:

アルゴリズム

変分下界は一般には計算が簡単ではない。そこで が適切な仮定を満たすという条件下で変分下界の推定量を導入する#原論文:2.3節標本 に対し確率勾配法を用いてSGVB推定量を極大化しモデルの最適化をおこなう#原論文:2.3節

他の推論アルゴリズムとの比較

本章で想定しているセッティングにおいて、既知の手法の有用性は限定的である#原論文:2.1節

  • 最尤法は本章のセッティングではが容易に計算できるケースでないと使えない。
  • EMアルゴリズムの計算が容易であるケースでないと使えない。
  • 変分ベイズ法は平均場近似できる場合にしか使えない。
  • モンテカルロEMアルゴリズムは実行速度が遅い為大きなデータ集合に対しては使えない。

例えばがニューラルネットワークにより定義されているケースでは、上述した既知の手法は使えないが、本手法であれば適用できる。後述する変分オートエンコーダーはまさにこのケースであり、をニューラルネットワークにより定義している。

意義

この最適化により以下の事ができるようになる:

  • 見つけたθを使う事でに従う確率変数zxを生成する生成モデルを作成
  • によりを推定

変分オートエンコーダーの概要

変分オートエンコーダーとは、オートエンコーディング変分ベイズアルゴリズムを使って学習するニューラルネットワーク(原論文では1層もしくは2層のパーセプトロン#原論文:Appendix C)ベースの生成モデルである。

セッティング

変分オートエンコーダーでは、潜在変数zが従う確率密度関数が標準正規分布

...(D1)

に従っており#原論文:Appendix Bxの従う条件つき確率密度関数

、ここで ...(D2)

という形であるものとする#原論文:Appendix C.2。上ではパラメーターθを持つニューラルネットワークである。

さらに事後分布を近似する条件つき確率密度関数として

、ここで  …(E1)

という形のものを考える#原論文:Appendix C.2。上ではパラメーターを持つニューラルネットワークである。

zの次元はxの次元より短く取る。これはを用いる事で、データxをもっと短いデータzに「圧縮」し、を用いる事でzからxを「復元」できる事を意味する(ただし実際にはの後に正規乱数を取る操作があるので、「圧縮」したデータを「復元」しても元に戻らない)。このため 符号理論との類推から、エンコーダーデコーダーと呼ぶ。

アルゴリズム

変分オートエンコーダーの学習アルゴリズムは与えられたデータ集合に対し、以上のような状況下でオートエンコーディング変分ベイズアルゴリズムを用いる事で、2つのニューラルネットワークのパラメーターθを決定するものである。

一方、変分オートエンコーダーの生成アルゴリズムでは、まずは(D1)式のように標準正規分布に従いzを生成し、生成したzと学習済みのθを使って(D2)式のようにxを生成する。

オートエンコーディング変分ベイズアルゴリズムの詳細

SGVB推定量

変分下界は一般には計算が簡単ではない。ゆえに変分下界の推定量であるSGVB推定量(Stochastic Gradient Variational Bayes estimator、確率的勾配変分ベイズ推定量)を導入する#原論文:2.3節

仮定

SGVB推定量を導入する為、何らかの(容易に計算可能な)可微分関数と(容易にサンプルを抽出できる)確率分布 を用いて

、ここで   ...(P1)

とする事で確率密度関数に従ったサンプルを抽出できる事を仮定する#原論文:2.3節

例えばVAEの場合は(E1)より

   ...(P2)

としてこの仮定を満たしている。ここで「」は成分毎の積である。

後でSGVB推定量を定義する際に仮定(P1)を使う事で、本来は確率分布で定義する部分を可微分で確定的な関数gに置き換える事でSGVB推定量の可微分性を保証する。これによりSGVB推定量を微分して勾配法によりの最適解を求める事ができるようになる。原論文ではこのように確率分布を可微分な確定的関数に置き換えるテクニックをreparameterization trickと呼んでいる#原論文:2.4節

推論量

簡単な計算により変分下界は

と書き換えられる事が示せる(ここでは期待値である)ので、仮定(P1)を用いる事で変分下界を推定するSGVB推定量

   ...(L1)

により定義する#原論文:2.3節。ここで)は から独立に抽出した乱数であり、Lはハイパーパラメーターである。

SGVB推定量を計算するにはカルバック・ライブラー情報量を計算できる必要がある。原論文ではこの値が計算できないときの為の推定量も提案しているが#原論文:2.3節、本項では割愛する。

アルゴリズム

オートエンコーディング変分ベイズアルゴリズムは確率的勾配降下法によりSGVB推定量を極大化するθを求めるものである#原論文:2.3節 Algorithm 1。以下でLMはハイパーパラメーターである。

  • 標本 を入力として受け取る。
  • θを初期化する。
  • θが事前に定められた収束条件を満たすまで以下を繰り返す
    • XのサイズMの部分集合X'をランダムに選ぶ
    • に対しに従って選ぶ。
    • を使ってθを更新
  • θを出力

変分オートエンコーダーの詳細

すでに述べたように、変分オートエンコーダーの学習アルゴリズムは、からのサンプリングが(D1)、(D2)、(E1)に従ってできるケースにおいてオートエンコーディング変分ベイズアルゴリズムを実行するというものである。

従って変分オートエンコーダーの学習アルゴリズムを書きくだす上で必要となる作業は、(D1)、(D2)、(E1)に従っているケースにおいてオートエンコーディング変分ベイズアルゴリズムにおけるSGVB推定量が具体的にどのような形になるのかを調べるだけである。

SGVB推定量の具体的な形

本節では変分オートエンコーダーのケースにおいてSGVB推定量

   ...(L1、再掲)

の具体的な形を求める。

(P2)、(E1)、(D2)より、

とすると、 が正規分布の確率密度関数であることから、

  

である。ここでKxのデータ長であり、xkμ(l)D,kσ(l)D,kはそれぞれxμ(l)Dσ(l)Dの第k成分である。

一方、(L1)の第2項を具体的に計算すると以下のようになる#原論文:Appendix D

ここでJzのデータ長であり、μE,jσE,jはそれぞれμEσEの第j成分である。


まとめると、

   ...(L2)

ここで、

アルゴリズム

以上の結果から、変分オートエンコーダーは以下のようになる:

学習:

  • オートエンコーディング変分ベイズアルゴリズムを実行。ただしとし、は(L2)のものを使う。

生成:

  • 学習済みのを入力として受けとる
  • に従ってzを選ぶ
  • を計算する。
  • に従ってxを選び、xを出力する。

参考文献

関連項目


変分オートエンコーダ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/23 09:35 UTC 版)

ニューラルネットワーク」の記事における「変分オートエンコーダ」の解説

変分オートエンコーダ (VAE) とは、ネットワークA(エンコーダ)が確率分布パラメータ出力しネットワークB(デコーダ)が確率分布から得られ表現データへと変換するモデルである。画像音楽生成におけるVQ-VAE-2がその例である。

※この「変分オートエンコーダ」の解説は、「ニューラルネットワーク」の解説の一部です。
「変分オートエンコーダ」を含む「ニューラルネットワーク」の記事については、「ニューラルネットワーク」の概要を参照ください。

ウィキペディア小見出し辞書の「変分オートエンコーダ」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「変分オートエンコーダ」の関連用語

変分オートエンコーダのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



変分オートエンコーダのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの変分オートエンコーダー (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのニューラルネットワーク (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS