1. 序章

オートエンコーダは、強力な深層学習の方法論です。 これらは主に事前トレーニングと生成モデリングに使用されますが、他の用途もあります。 基本的なオートエンコーダーは、それぞれエンコーダーとデコーダーと呼ばれる2つの異なるモジュールをトレーニングします。 これらのモジュールは、それぞれデータエンコードとデータデコードを学習します。 変分オートエンコーダーは、学習した表現のプロパティを改善する拡張機能を提供し、再パラメーター化のトリックは、この改善を実装するために重要です。

この記事では、再パラメーター化のトリック、なぜそれが必要なのか、それを実装する方法、そしてなぜそれが機能するのかを説明します。 まず、変分オートエンコーダー(VAE)について簡単に復習します。 次に、VAEに再パラメーター化のトリックが必要な理由、そのトリックとは何か、およびそれを実装する方法について説明します。 トリックの使用法を説明した後、正式に正当化します。

2. 変分オートエンコーダー

VAEは、ニューラルネットワークベースのモデルで人気のある基本的な教師なし学習アーキテクチャです。 VAEは、より連続的な埋め込みスペースを作成することにより、バニラオートエンコーダーを改善します。

2.1. オートエンコーダ

オートエンコーダは、2つのニューラルネットワークモジュールで構成されています。 1つのモジュールであるエンコーダーは、入力データを受け取り、それを新しい埋め込みスペースの別のベクトルに投影します。 2番目のモジュールであるデコーダーは、このベクトルを取得して元の入力に変換します。 元の入力と再構築された出力の差を最小化することにより、モデルをトレーニングします。 この基本的な形式は、バニラオートエンコーダと呼ばれます。

これは非常にうまく機能し、多くの画像を正しく再構成できます。 このパラダイムでは、デコーダーは生成モデルとして機能します。 エンコーディング空間からのサンプルがあれば、このエンコーディングにつながるこの正確な画像を見たことがない場合でも、存在する可能性のある妥当な画像を生成できるはずです。

2.2. オートエンコーダ:問題

残念ながら、バニラオートエンコーダの場合、これは当てはまらず、2つのエンコーディング間の線形サンプルは適切に生成されたサンプルにはなりません。 これは、埋め込みスペースに不連続性があり、スムーズな遷移につながらないためです。

ここでは、この現象の例を示します。 2次元の埋め込みの場合、aとaの間の遷移が表示されます。 これを行うには、各次元に沿って線形補間します。 このように、x軸は、ベクトル埋め込みの最初の要素とベクトル埋め込みの最初の要素の間の線形補間です。

同様に、y軸は、2次元埋め込み、ベクトル埋め込みの要素、およびベクトル埋め込みの2番目の要素を使用するため、2番目と最後の間の線形補間です。

複製が両極端の間にある形の欠如がはっきりと見えます。 VAEは、この問題を軽減するのに役立ちます。

2.3. VAEとは何ですか?

VAEは、学習した表現の処理方法がバニラオートエンコーダーとは異なります。 それは、ディートリッヒ・キングマとマックス・ウェリングによって論文で提案されました。

VAEは、ガウス分布のパラメーターとその標準偏差を学習します。 次に、これらを使用して、パラメーター化された分布からサンプリングします。

上の画像では、このプロセスを見ることができます。 エンコーダーは、分布の平均と標準偏差の2つのベクトルを予測することを学習します。次に、これらを使用して分布をパラメーター化し、サンプルを生成します。 次に、学習したデコーダーを使用してデコードされます。

2.4. VAEの問題は何ですか?

VAEは分布のパラメーターを予測し、それを使用してエンコードされた埋め込みを生成します。 モデルによってパラメーター化された分布からサンプリングするこのプロセスは微分可能ではありません。少なくとも私たちのような勾配ベースのアプローチでは、問題となる微分可能でないものがある場合。 したがって、確率的サンプリング要素とは別に予測を行うための何らかの方法が必要です。

3. 解決策:パラメータの再設定

再パラメータ化のトリックを埋め込み関数に適用することで、この問題を解決できます。 どういう意味ですか? これは、ガウスサンプリングをパラメーター化する方法の実装を書き直すことを意味します。 ランダムサンプリングをノイズ項として扱うようになりました。

ガウス分布の場合、ノイズを標準正規分布として扱います。 つまり、平均と分散が。のガウス分布です。 このノイズ項は、モデルから独立しており、モデルによってパラメーター化されていません。

Gaussianの優れた特性は、サンプルの平均と分散を変更するために、単純に平均を追加して分散を乗算できることです。 これには、ノイズ分布からサンプルをスケーリングする効果があります。 利点は、平均と分散の予測が確率的サンプリング操作に関連付けられなくなったことです。 これは、モデルのパラメーターに関して再び区別できることを意味します。

3.1. 再パラメータ化の視覚化

モデルを視覚化し、図に示すように、パラメーターの再設定によってモデルがどのように変化するかを示します。 パラメータ化された分布から確率的にサンプリングされると、すべての勾配が確率的ノードを通過する必要があることがわかります。 対照的に、再パラメータ化により、非確率的ノードを通る勾配パスが可能になります。ランダムサンプリングをノイズベクトルに任せて、勾配フローから効果的に分離します。

この直感を利用することで、VAEを効果的に実装できます。

4. トリックの実装

以前、私たちのモデルは、インスタンス化してからサンプリングしたガウス分布のパラメーターを予測していました。 ここで、標準正規分布からサンプリングできるガウス分布のきちんとした特性を利用します。 標準正規分布は、平均、、および標準偏差をもつガウス分布です。

このガウスサンプルは、予測された平均と分散によってスケーリングできます。これで、固定ガウス分布から抽出されたサンプルが得られ、これに標準偏差を加算して乗算します。

(1)  

このアプローチでは、サンプリングした固定ノイズ源を使用します。 通常、正規分布からのサンプルとして扱います。 新しい図を調べると、このアプローチがどのように異なるかがわかります。

これで、ランダムな要素を学習したパラメーター化から分離し、モデルを再び区別できるようになりました。 次のセクションでは、これらのアイデアの背後にある数学を詳しく見て、アプローチを正当化します。

5. アプローチを正当化する

これで、このアプローチが機能する理由を詳しく調べることができ、モデルが実行する必要のある確率的サンプリングを通じて区別することができます。

パラメータ化されたガウス関数の導関数を取得することに関心があります。

(2)  

私たちが抱えている問題は、確率的量、によってパラメータ化された分布に関して勾配が取られているということです。 確率的な量の勾配をとることができないので、それを書き直す必要があります。 以下に、次のようないくつかの新しい表現を紹介します。

(3)  

分布からのサンプルとして表します。 これは、ノイズと確率の原因です。

(4)  

埋め込みベクトルを、ノイズのパラメーター化された関数として記述します。 式5では、2つの式がどのように同等であるかがわかりますが、確率論をからどのように移動したかがわかります。 この関数の導関数はノイズから分離され、式を書き直して、期待値を導関数の外に移動します。

(5)  

これを1にあったものにリンクします。 これが私たちの関数です。 ここで、およびは入力に対して学習した予測です。 学習した関数から確率論を押し出し、それを介してを区別できるようになりました。

6. 結論

変分オートエンコーダーは、強力な教師なし学習アーキテクチャです。 再パラメータ化のトリックは、強力なエンジニアリングのトリックです。 それがどのように機能するのか、そしてなぜそれがVAEに役立つのかを見てきました。 また、その使用を数学的に正当化し、直感に加えてより深い理解を深めました。

オートエンコーダは、より一般的には、機械学習の重要なトピックです。 生成モデルとして、それらには無数の重要な用途があり、これは彼らの長年の人気を説明するのに役立ちます。