教師なしトレーニング用のスタック型オートエンコーダは時代遅れですか? ML博士が8つのオートエンコーダを比較

教師なしトレーニング用のスタック型オートエンコーダは時代遅れですか? ML博士が8つのオートエンコーダを比較

ベルリン工科大学のディープラーニング博士課程の学生であるティルマン・クロコッチ氏は、複数のタスクにおける 8 つのオートエンコーダのパフォーマンスを比較しました。

ディープラーニングにおけるオートエンコーダー。画像ソース: https://debuggercafe.com/autoencoders-in-deep-learning/

現在でも、多くの研究者が教師なし事前トレーニングにスタック型オートエンコーダを使用しています。ベルリン工科大学のディープラーニング博士課程の学生、ティルマン・クロコッチ氏は、次のように疑問を呈した。「スタック型オートエンコーダは、コンピューティング能力が低い時代にディープモデルをトレーニングするための回避策ではないのか?」今では計算能力は比較的十分ですが、なぜまだ計算能力が必要なのでしょうか?

そこで彼は、オリジナルのディープオートエンコーダー (AE) とスタックオートエンコーダーをいくつかの異なるタスクで比較することにしました。

プロジェクトアドレス: https://github.com/tilman151/ae_bakeoff

Krokotsch は、アプリケーション固有の損失 (画像の VGG19 損失など) やエンコーダーとデコーダーのタイプ (LSTM と CNN など) を除いた、潜在空間の動作方法を変更したり、下流のタスクのパフォーマンスを向上させる可能性のある、元のディープ オートエンコーダーのすべてのバリアントを比較します。最終的に、Krokotsch は比較のために次の8 つのオートエンコーダを選択しました。

  • 浅いオートエンコーダ
  • ディープオートエンコーダ(オリジナルAE)
  • スタック型オートエンコーダ
  • スパースオートエンコーダ
  • ノイズ除去オートエンコーダ
  • 変分オートエンコーダ (VAE)
  • ベータ変分オートエンコーダ (beta-VAE)
  • ベクトル量子化変分オートエンコーダ (vq-VAE)

Krokotsch は、こ​​れらのオートエンコーダの独自性を説明するだけでなく、次の点でも比較しています。

  • 再建の質
  • 潜在空間からのサンプルの品質をデコードする
  • 潜在空間補間品質
  • UMAPを用いて可視化した潜在空間構造
  • 再構成誤差を用いた異常検出のROC曲線
  • オートエンコーダの特徴に適合した線形層の分類精度

すべてのオートエンコーダーは、完全に接続されたエンコーダーとデコーダー、バッチ正規化、ReLU アクティベーション関数、および出力層にシグモイド アクティベーション関数を備えた同じシンプルなアーキテクチャを使用します。浅いオートエンコーダを除き、すべてのオートエンコーダには 3 つのエンコーダ層とデコーダ層があります。

潜在空間の次元とネットワークパラメータの数はほぼ一定です。これは、エンコーダーが次元 n の潜在空間に対して 2n の出力を生成するため、変分オートエンコーダーには元のものよりも多くのパラメーターがあることを意味します。テスト中、各オートエンコーダーに対して 2 回のトレーニング実行が実行されました。1 回は潜在空間が次元 20 で、もう 1 回は潜在空間が次元 2 でした。 2 番目にトレーニングされたモデルは異常検出に使用され、最初にトレーニングされたモデルは他のタスクに使用されます。

比較テストに使用されるデータセットはMNISTです。 Krokotsch は、トレーニング データセットから 5000 個のサンプルを検証セットとしてランダムにサンプリングし、デフォルトのトレーニング/テスト分割をさらにトレーニング/検証/テスト分割に分割しました。

次に、これらのオートエンコーダのバリエーションとその比較を見ていきます。

「出場者」: 8 個のオートエンコーダ

Krokotsch 氏は、これらのオートエンコーダがどのように機能し、何がユニークなのかを説明し、そのパフォーマンスについていくつかの仮定を立てようとします。

浅いオートエンコーダ

浅いオートエンコーダは、その機能が他のバリエーションに比べてはるかに劣っているため、実際には競合相手ではありません。ここでは、ベースラインとして存在します。

上記の式は浅いオートエンコーダの再構成式であり、オートエンコーダがサンプル x を半数学的な方法で再構成する方法がわかります。

浅いオートエンコーダは、エンコーダとデコーダの両方に 1 つのレイヤーのみを持つことが特徴です。 PCA との違いは、エンコーダーで ReLU 活性化関数を使用し、デコーダーでシグモイド関数を使用するため、非線形であることです。

通常、オートエンコーダのデフォルトの再構成損失は平均二乗誤差です。クロコッチは、予備実験でより美的に満足のいく画像が生成されたことから、バイナリクロスエントロピー (BCE) を使用しました。すべてのオートエンコーダは次の BCE バージョンを使用します。

ここで、x^(i)_jはi番目の入力画像のj番目のピクセルであり、x̂^(i)_jは対応する再構成です。損失は​​各画像ごとに合計され、その後バッチ全体で平均化されます。この決定は変分オートエンコーダにとって非常に重要です。

ディープオートエンコーダ

ディープオートエンコーダ(オリジナルオートエンコーダ)は、シャローオートエンコーダの拡張バージョンです。ディープオートエンコーダーにはより多くのレイヤーがあることを除いて、基本的には同じです。それらの再構築式は同じです。

ディープオートエンコーダの潜在空間は制約がないため、最も多くの情報をエンコードできるはずです。

スタック型オートエンコーダ

スタックされたオートエンコーダは、浅いオートエンコーダのみをトレーニングすることによって取得される深いオートエンコーダです。唯一の違いは、トレーニング方法がエンドツーエンドではなく、層ごとに貪欲にトレーニングすることです。まず、最初のエンコーダーと最後のデコーダーで浅いオートエンコーダーが形成されます。これらの層をトレーニングした後、エンコード層を使用してデータセット全体をエンコードします。次に、2 番目のエンコーダーと最後から 2 番目のデコーダー層に基づいて別の浅いオートエンコーダーが形成され、エンコードされたデータセットを使用して 2 番目の浅いオートエンコーダーがトレーニングされます。このプロセスは、最も内側の層に到達するまで繰り返されます。最終的なディープ オートエンコーダは、積み重ねられた多数の浅いオートエンコーダで構成されます。

スタックオートエンコーダとディープオートエンコーダはトレーニングプロセスのみが異なるため、再構築機能も同じです。スタックされたオートエンコーダの潜在空間は制約がありませんが、貪欲なトレーニングのためにエンコード能力はわずかに低下します。

スパースオートエンコーダ

スパースオートエンコーダーは潜在コードに対してスパース制約を持ち、潜在コード内の各要素のアクティビティの確率は p です。これを実現するには、トレーニング中に補助的な損失を追加する必要があります。

ここで、z¯(i)は潜在コード内のi番目の要素のバッチベースの平均活性化値です。この損失関数は、pとz¯(i)の二項分布間のKLダイバージェンス|z|の合計に対応します。このスパース制約を満たす他の実装が存在する可能性があります。

このスパース損失を可能にするには、潜在コードを [0,1] の範囲にスケーリングして、確率として解釈できるようにする必要があります。これはシグモイド活性化関数を使用して行われ、再構成式は次のようになります。

スパースオートエンコーダの完全な損失は、再構成損失とスパース損失を組み合わせたものです。

すべての実験において、p値は0.25に設定され、β値は1に設定されました。

ノイズ除去オートエンコーダ

ノイズ除去オートエンコーダの潜在空間は制約がなく、入力データにノイズを適用することでより効率的なエンコーディングを学習することを目的としています。入力データをネットワークに直接入力する代わりに、ノイズ除去オートエンコーダーはガウスノイズを追加します。

ここで、clip は入力を [0,1] にクリッピングすることを意味し、スカラー β はノイズの分散を表します。したがって、ノイズ除去オートエンコーダのトレーニング方法は、ノイズの多い入力データに基づいてクリーンなサンプルを再構築することです。再構築式は次のとおりです。

ただし、ノイズのある入力はトレーニング中にのみ使用されます。オートエンコーダを評価する際には、元の入力データが使用されました。ノイズ除去オートエンコーダーは、前のオートエンコーダーと同じ損失関数を使用します。すべての実験において、β値は0.5に設定されました。

変分オートエンコーダ

理論的には、変分オートエンコーダ (VAE) は元の AE とほとんど関係がありません。しかし、実際には、実装とトレーニングは非常に似ています。 VAE は再構築をランダムなプロセスとして解釈するため、不確実になります。エンコーダーは潜在コードを出力する代わりに、潜在コードの確率分布を表すパラメータを出力します。デコーダーはこの分布からサンプルを受信します。デフォルトの分布ファミリの選択は、ガウス N(μ; diag⁡(Σ)) です。再構築式は次のとおりです。

ここで、enc_μ(x) と enc_Σ(x) は x を μ と Σ にエンコードし、2 つのエンコーダーはほとんどのパラメーターを共有します。実際には、単一のエンコーダーは 1 つではなく 2 つの出力レイヤーを取得します。問題は、分布からのサンプリングには、デコーダーからエンコーダーへの勾配とバックプロパゲーションの両方が必要になることです。この解決策は「再パラメータ化」と呼ばれ、標準のガウス分布のサンプルを、μ と Σ によってパラメータ化されたガウス分布のサンプルに変換します。

この式の勾配はμとΣに関係しており、逆伝播も実現できます。

変分オートエンコーダでは、ガウス分布が標準ガウス分布に類似していることが要求され、その潜在空間がさらに制約されます。その分布パラメータは KL ダイバージェンスによってペナルティを受けます。

KL ダイバージェンスはバッチ全体で平均化されます。再構築損失は上記のように平均化され、再構築損失と発散損失の正しい比率が維持されます。完全なトレーニング損失は次のとおりです。

標準ガウス分布からのサンプルを直接デコードできるように、エンコーダの出力を標準ガウスにするように努めます。この無条件サンプリングは VAE のユニークな特性であり、GAN に似た生成モデルとなっています。無条件サンプリングの式は次のとおりです。

ベータ変分オートエンコーダ (beta-VAE)

beta-VAE は、再構成損失と発散損失の比率のみを変更する VAE の一般化です。発散損失の影響係数はスカラー β で表されるため、損失関数は次のようになります。

β<1 の場合、潜在空間の制約が緩和され、β>1 の場合、制約が厳しくなります。前者はより良い再構築結果につながり、後者はより良い無条件サンプリングにつながります。 Krokotsc は厳密なバージョンでは β=2 を使用し、緩和されたバージョンでは β=0.5 を使用しました。

ベクトル量子化変分オートエンコーダ (vq-VAE)

vq-VAE は均一なクラス分布を使用して潜在コードを生成します。エンコーダー出力の各要素は、この分布の最も近い近傍のカテゴリ値に置き換えられます。これは一種の量子化であり、潜在空間が連続的ではなく離散的になることを意味します。

カテゴリ自体は、エンコーダ出力の二乗誤差の合計を最小化することで学習できます。

ここで、z はエンコーダの出力を表し、ẑ は対応する量子化潜在コードを表し、sg は停止勾配演算子を表します。さらに、エンコーダによって出力されるエンコード結果は、二乗誤差の合計によって得られるカテゴリに似ています。

これをコミットメント損失と呼びます。 KL ダイバージェンスは均一クラス分布に対して定数であるため、KL ダイバージェンス損失は必要ありません。この損失と再構築損失を組み合わせると、次のようになります。

実験では、βの値は1に設定されています。

vq-VAE は生成モデルなので、無条件サンプリングも実行できます。

オートエンコーダ「大乱闘」

再建の質

まず、各オートエンコーダによる入力の再構築の品質を見てみましょう。以下は、MNIST テスト セット内の 16 枚の画像に対するさまざまなオートエンコーダーの結果です。

浅いオートエンコーダーは、一部のテストサンプルを正確に再構築できません。 4 と 9 はほとんど判別できませんが、一部の数字はまったく見えません。他のオートエンコーダーのパフォーマンスは優れていましたが、完璧ではありませんでした。ノイズ除去オートエンコーダーでは細い線がいくつか消え、スパースおよびスタック オートエンコーダーでは、通常とは異なるストロークの数字 (5 や最初の 9 など) を再構築するのに問題がありました。全体的な再構築は少しぼやけていますが、これはオートエンコーダでは正常なことです。 vq-VAE の再構成結果はぼやけが少なく、著者らはこれを離散潜在空間に起因すると考えています。

異なるオートエンコーダの再構築品質はそれほど変わりません。次の表は、サンプル セットに基づく平均バイナリ クロス エントロピー値を示しています。

予想どおり、最もパフォーマンスが悪いのは、MNIST の構造をキャプチャする能力が欠けている浅いオートエンコーダです。バニラ オートエンコーダーのパフォーマンスは良好で、スパース オートエンコーダーや vq-VAE と並んで最高レベルにランクされています。しかし、スパースオートエンコーダと vq-VAE は潜在空間制約を経験しないようです。一方、VAE と beta-VAE は潜在空間制約のためにエラーが高くなります。さらに、VAE のサンプリング プロセスでは、再構成エラーを悪化させるノイズが発生します。

サンプリング

この実験には、無条件サンプリングを実行できる 4 つのオートエンコーダ (VAE、beta-VAE の緩和バージョンと厳密バージョン、vq-VAE) のみが含まれています。各オートエンコーダーについて、16 個の潜在コードがサンプリングされ、デコードされます。 VAE およびベータ VAE の場合、サンプルは標準ガウス分布から取得されます。 vq-VAE の潜在コードは、学習したカテゴリから均一にサンプリングされます。

上の図で最も興味深い生成されたサンプルは、beta-VAE の厳密なバージョンから取得されています。これは、トレーニングがガウス事前分布に焦点を当てており、エンコーダーが標準ガウス分布に最も近いサンプルを出力するため、デコーダーが真の標準ガウス分布からサンプリングされた潜在コードを正常にデコードできるためです。さらに、生成された画像には変化がほとんどなく、たとえば右側の数字は 5 にも 6 にも見えます。

緩和されたベータ VAE は、認識可能な画像の数は少ないものの、より多様な画像を生成します。標準 VAE のパフォーマンスはその中間くらいです。少し残念なのは、MNIST の数字とはまったく似ていない画像をサンプリングする vq-VAE です。

補間

補間タスクは、潜在空間の領域がどれだけ密であるかを示します。 Krokotsch はテスト セットから 2 つの画像 2 と 7 をエンコードし、線形補間を実行します。次に補間をデコードして新しい画像を受け取ります。補間された潜在コードからの画像が意味のある数字を示すことができれば、カテゴリ領域間の潜在コードをオートエンコーダで効率的に利用できます。

すべての VAE タイプにおいて、Krokotsch はボトルネック操作の前に補間を実行します。つまり、VAE と beta-VAE の場合、ガウス パラメータは最初に補間されてからサンプリングされますが、vq-VAE の場合、ガウス パラメータは最初に補間されてから量子化されます。

上の図から、VAE と beta-VAE は比較的意味のある補間を生成できることがわかります。他のオートエンコーダは完全に失敗します。

潜在空間構造

Krokotsch は、潜在空間を 2 次元に縮小し、潜在コードの近傍を保存できる UMAP アルゴリズムを使用して、潜在空間構造を視覚化しました。下の図は、各オートエンコーダの潜在空間の散布図を示しています。各点はテスト セット内の画像の潜在コードを表し、色は画像内の数字を表します。

これらのグラフには明らかな類似点がいくつかあります。まず、オリジナルのスタックされたスパースなノイズ除去オートエンコーダと vq-VAE は非常に似ています。 0 (青)、1 (オレンジ)、2 (緑)、6 (ピンク) のクラスターは常に適切にセグメント化されているため、他の数字とは区別して見えます。 4-7-9 と 3-5-8 のクラスターもあり、これは 3 に 2 本の直線を加えると 8 になるなど、これらの数字の間につながりがあることを示唆しています。これらのオートエンコーダは、数字間の構造的な類似性をエンコードできます。

しかし、浅いオートエンコーダでは数字をクラスターに分類するのが困難です。 VAE とベータ VAE は、発散損失の影響を確認できる点で他のものと異なります。

分類

潜在空間プロットは、多くのオートエンコーダがラベルを受け取っていないにもかかわらず、MNIST 数字のクラスタリングに優れていることを示しています。では、これをどのように使用して MNIST 数字分類を実行できるでしょうか?

Krokotsch[13]は、20次元潜在コードを使用して密な分類層を適合させました。このコードは、トレーニングセットからラベル付けされた550個の例のみを使用してトレーニングされました。つまり、これらのオートエンコーダを使用して半教師あり学習を実行します。オリジナルのエンコーダーと分類レイヤーを最初からトレーニングして得られた精度は 0.4364 です。次の表は、これらのオートエンコーダによって達成された改善を示しています。

スパース オートエンコーダーを除いて、ほぼすべてのオートエンコーダーはベースラインよりも改善されています。ノイズ除去オートエンコーダが最良の結果を達成し、続いてバニラオートエンコーダと vq-VAE が続きます。ノイズ除去オートエンコーダによって追加された入力ノイズは、分類タスクに最適な特徴を生成するようです。

最も興味深い点は、浅いオートエンコーダでも、レイヤーが 1 つしかなく、パラメータも少ないにもかかわらず、精度がわずかに向上する点です。もう一度言いますが、これは、スマートなデータの使用が大規模なモデルよりも優れていることが多いことを示しています。

VAE とベータ VAE は、発散損失が潜在空間に課す制約を再び示しています。スパース オートエンコーダーの結果はベースラインよりも悪くなっています。これは、スパース機能が MNIST 数字の分類にまったく適していないためと思われます。その有効性は他のデータセットでテストする必要があります。

異常検出

オートエンコーダを使用して異常検出タスクを実行するのは比較的簡単です。トレーニング済みモデルを使用して、テスト サンプルの再構築損失を計算し、異常スコアを取得します。サンプルの再構築結果が良好であれば、トレーニング データに類似している可能性が高く、再構築結果が不良であれば、サンプルは外れ値と見なされます。オートエンコーダは、トレーニング データ間の相関関係を利用して、効果的な低次元表現を学習できます。これらの関連付けが発生する限り、テスト サンプルは適切に再構築できます。そうしないと、オートエンコーダは適切に再構築できません。

このタスクの課題の 1 つは、異常スコアの最適なしきい値を見つけることです。次の図は、ROC 曲線と曲線の下の領域を示しています。

浅いオートエンコーダは AUC 0.91 で他のオートエンコーダよりも優れており、スタックされたオートエンコーダがそれに続いています。さらに、異なるオートエンコーダの順序は、異なる数値や潜在空間の次元に対して不変です。

他のタスクでは遅れをとるこれら 2 つのオートエンコーダが、異常検出に優れているのはなぜでしょうか?その理由は、他のタスクが潜在空間の一般化能力に依存しているためと思われます。異常検出には一般化は必要ありません。少なくとも、非常に優れた一般化能力は必要ありません。

結論は

比較実験を行った後、クロコッチは最適なオートエンコーダを見つけることができませんでした。彼は、オートエンコーダの選択はタスク自体に依存すると考えています。ノイズから顔を生成したいですか?変分オートエンコーダを使用します。画像がぼやけすぎですか? vq-VAE をお試しください。分類タスクですか?ノイズ除去オートエンコーダを選択します。異常検出タスクを実行する場合は、浅いオートエンコーダまたは PCA を試してみるとよいでしょう。時には、少ないほうが良いこともあります。

<<:  中国の博士課程の学生が、2つのトランスフォーマーを使ってGANを構築しようとした。

>>:  再トレーニングなしでモデルを6倍圧縮:数学者チームが新しい量子化法を提案

ブログ    

推薦する

クラウドで必要な 5 つの機械学習スキル

機械学習と AI は IT サービスにさらに深く浸透し、ソフトウェア エンジニアが開発したアプリケー...

GPT-5が稼働を開始しました!ウルトラマン:月7億では足りない。マイクロソフトがもっと投資してくれることを願う

月収7億元でもGPTのトレーニングへの巨額の投資を賄うことはできません。これはOpenAIのCEO、...

Redditのネットユーザーが議論中!コンピューティング能力とデータは本当にすべてを解決できるのでしょうか?

誰もが知っているように、コンピューティング能力とデータは非常に重要ですが、それだけで十分でしょうか?...

新しい消費者向け IoT と人工知能の開発を加速させる機会は何でしょうか?

近年、世界的な技術開発の加速化が進み、新世代の情報通信技術が次々と導入され、数多くの新たなビジネスモ...

人工知能は諜報機関の「大物」になると期待されている

諜報活動は私たちが想像するよりもはるかに退屈で複雑です。現在、米国の諜報機関は、手作業に代わる人工知...

WEF: 2023 年のトップ 10 新興テクノロジー

世界経済フォーラム(WEF)は毎年、世界経済と社会に大きな影響を与える可能性のあるトップイノベーショ...

人工知能の時代が到来すると、私たちはどこへ向かうのでしょうか?

[[348861]]人工知能の時代が本格的に到来しました。私たちの生活のいたるところに見られる人工...

AIベースのクラウド管理ツールではコンテキストが重要

AI を活用したクラウド管理ツールはまだ導入の初期段階にありますが、IT 業界の専門家は、このような...

AI専門家の李牧氏の「5年間の仕事の反省」が人気に、ネットユーザー「また感動した」

[[401713]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...

5G+AIは通信とコンピューティングを統合する

人工知能(AI)の急速な発展は、さまざまな業界に革命的な変化をもたらし、イノベーションの新たな時代を...

落とし穴を避けよう!ニューラルネットワークの欠点と短所を数え上げよう

最近、ディープラーニングが大々的に宣伝されており、人々はニューラル ネットワークをあらゆる場所で使用...

Photoshop の新しい AI 機能により、数回クリックするだけで空を置き換えることができます

海外メディアの報道によると、 AdobeはPhotoshopにAIを搭載した空の置き換えツールを追加...