生成モデルは、分類によく使用される計算モデルの一種です。機械学習では、通常、入力と出力の同時分布をモデル化します (P(X,Y) など)。または、クラス事前分布 P(Y) とともに、各クラス内で入力がどのように分布するかをモデル化します (P(X|Y) など)。生成モデルは、データ生成プロセス全体を記述するため、観測データに似た新しいサンプルを生成するために使用できます。このプロセスは、合成データ生成と呼ばれることがよくあります。[ 1 ] [ 2 ] [ 3 ] [ 4 ]生成モデルは、密度推定、シミュレーション、欠損データまたは部分的にラベル付けされたデータを使用した学習に使用されます。分類では、P(X|Y) と P(Y) を組み合わせてベイズの定理を適用することにより、ラベルを予測できます。生成モデルは、入力から直接出力を予測することに焦点を当てた識別モデルと対比されることがよくあります。
代わりに結合確率分布を用いる生成モデルのアプローチには、ナイーブベイズ分類器、ガウス混合モデル、変分オートエンコーダー、敵対的生成ネットワークなどがある。
統計的分類では、生成アプローチと識別アプローチという 2 つの主要なアプローチがあります。これらは、統計的モデリングの度合いが異なるさまざまなアプローチによって分類器を計算します。用語は一貫していませんが、[ a ] 3 つの主要なタイプを区別できます。[ 5 ]
これら最後の 2 つのクラスの区別は一貫して行われていません。[ 9 ] Jebara (2004)はこれら 3 つのクラスを生成学習、条件付き学習、識別学習と呼んでいますが、Ng & Jordan (2002) は2 つのクラスのみを区別し、生成分類器 (結合分布) と識別分類器 (条件付き分布または分布なし) と呼んでおり、後者 2 つのクラスを区別していません。[ 10 ]同様に、生成モデルに基づく分類器は生成分類器であり、識別モデルに基づく分類器は識別分類器ですが、この用語はモデルに基づかない分類器も指します。
分類への応用では、観測値xからラベルy (またはラベルの確率分布) を導きたい。確率分布を使用せずにこれを直接計算する (分布フリー分類器)。観測値が与えられた場合のラベルの確率を推定する。(識別モデル)に基づいて分類を行うか、あるいは結合分布を推定することができる。(生成モデル)から条件付き確率を計算するそして、それに基づいて分類を行います。これらの方法はますます間接的になりますが、確率論的要素も増え、より多くのドメイン知識と確率論を適用できるようになります。実際には、特定の問題に応じてさまざまなアプローチが用いられ、複数のアプローチの長所を組み合わせたハイブリッド方式も存在します。
別の区分では、これらを対称的に次のように定義します。
厳密な定義に関わらず、この用語は憲法に則っている。なぜなら、生成モデルは観測値と目標値のいずれかのランダムなインスタンス(結果)を「生成」するために使用できるからである。、または目標値yが与えられた観測値xの[ 7 ]に対して、識別モデルまたは識別分類器 (モデルなし) は、観測値xが与えられた場合に目標変数Yの値を「識別」するために使用できます。[ 8 ] 「識別する(区別する)」と「分類する」の違いは微妙であり、これらは一貫して区別されていません。 (「識別」が「分類」と同義の場合、「識別分類器」という用語は冗長になります。)
「生成モデル」という用語は、入力変数の潜在的なサンプルに対する確率分布とは明確な関係を持たない方法で出力変数のインスタンスを生成するモデルを指す場合にも使用されます。敵対的生成ネットワークはこの種の生成モデルの一例であり、特定の出力と潜在的な入力との類似性によって主に評価されます。このようなモデルは分類器ではありません。
分類への応用では、観測可能なXは連続変数であることが多く、ターゲットYは一般的に有限個のラベルからなる離散変数であり、条件付き確率は(非決定論的な)目標関数として解釈することもできる。Xを入力、Yを出力とみなす。
有限個のラベルが与えられた場合、「生成モデル」の2つの定義は密接に関連している。条件付き分布のモデルは各ラベルの分布のモデルであり、結合分布のモデルはラベル値の分布のモデルと同等である。ラベルが付けられた観測値の分布とともに、象徴的に、したがって、結合確率分布のモデルはラベルの分布のモデル(ただし相対頻度は含まない)よりも情報量が多いものの、その差は比較的小さいため、必ずしも区別されるとは限りません。
結合分布のモデルが与えられた場合、個々の変数の分布は周辺分布として計算できる。そして(Xを連続変数とみなして積分し、Yを離散変数とみなして総和すると)いずれの条件付き分布も条件付き確率の定義から計算できる。そして。
1 つの条件付き確率のモデルと、変数XとYの推定確率分布が与えられ、そしてベイズの定理を用いて、反対の条件付き確率を推定することができる。
例えば、生成モデルが与えられた場合以下のように推定できる。
そして、識別モデルが与えられた場合以下のように推定できる。
ベイズの定理(一方の条件付き確率を他方の条件付き確率で計算する)と条件付き確率の定義(同時分布を用いて条件付き確率を計算する)は、しばしば混同されることに注意してください。
生成アルゴリズムは、信号が分類されるためにデータがどのように生成されたかをモデル化します。つまり、「私の生成仮定に基づくと、どのカテゴリがこの信号を生成する可能性が最も高いか」という問いを立てます。識別アルゴリズムは、データがどのように生成されたかには関心を持たず、与えられた信号を単に分類します。したがって、識別アルゴリズムは学習しようとします。データから直接学習し、データを分類しようとします。一方、生成アルゴリズムは、これは次のように変換できます後でデータを分類します。生成アルゴリズムの利点の 1 つは、既存のデータに類似した新しいデータを生成する。一方、分類タスクでは、識別アルゴリズムの中には生成アルゴリズムよりも優れたパフォーマンスを発揮するものがあることが証明されている。[ 11 ]
識別モデルは観測変数の分布をモデル化する必要がないにもかかわらず、一般的には観測変数と目標変数の間の複雑な関係を表現できません。しかし、一般的には、分類や回帰タスクにおいて生成モデルよりも必ずしも優れたパフォーマンスを発揮するわけではありません。この2つのクラスは、補完的であるか、同じ手順の異なる視点であると見なされています。[ 12 ]
入力データがラベルのセットはそして、以下の4つのデータポイントがあります。
上記のデータに対して、同時確率分布を推定する経験的測定から得られる結果は以下のとおりです。
その間以下に続きます:
シャノン(1948)は、英語の単語ペアの頻度表を使用して「representing and speedily is an good」で始まる文を生成する例を挙げています。これは正しい英語ではありませんが、表を単語ペアから単語トリプレットなどに移動すると、ますます正しい英語に近づきます。
生成モデルの種類は以下のとおりです。
観測データが生成モデルから実際にサンプリングされたものである場合、データ尤度を最大化するように生成モデルのパラメータを調整することは一般的な方法です。しかし、ほとんどの統計モデルは真の分布の近似に過ぎないため、モデルの適用が他の変数の既知の値に基づいて変数のサブセットについて推論することである場合、近似は目の前の問題を解決するために必要以上の仮定を置いていると主張できます。このような場合、判別モデルを使用して条件付き密度関数を直接モデル化する方がより正確になる可能性があります(下記参照)。ただし、どの方法が特定のケースで最も適しているかは、最終的にはアプリケーション固有の詳細によって決まります。
ディープラーニングの台頭に伴い、生成モデルとディープニューラルネットワークの組み合わせによって、ディープ生成モデル(DGM)と呼ばれる新しい手法群が形成されました。 [ 13 ] [ 14 ]ニューラルネットワークの規模が大きくなると、通常はトレーニングデータの規模も大きくなり、どちらも良好なパフォーマンスに必要です。[ 15 ]
一般的な DGM には、変分オートエンコーダー(VAE)、敵対的生成ネットワーク(GAN)、および自己回帰モデルがあります。最近では、非常に大規模な深層生成モデルを構築する傾向が見られます。[ 13 ]例えば、GPT-3とその前身であるGPT-2 [ 16 ]は、数十億のパラメータを含む自己回帰ニューラル言語モデルであり、BigGAN [ 17 ]と VQ-VAE [ 18 ]は、数億のパラメータを持つ画像生成に使用され、Jukebox は数十億のパラメータを含む音楽オーディオ用の非常に大規模な生成モデルです。[ 19 ]