生成的モデル
モデルを分類するもう一つの方法は、次の対称的な定義である。
生成的モデルとは、目的値 y が与えられたときの、観測可能変数 X の条件付き確率を表すモデルであり、記号的には P ( X ∣ Y = y ) {\displaystyle P(X\mid Y=y)} と表される。
識別的モデルとは、観測値 x が与えられたときの、目的変数 Y の条件付き確率を表すモデルであり、記号的には P ( Y ∣ X = x ) {\displaystyle P(Y\mid X=x)} と表される。
正確な定義はともかく、この用語は構造上のものである。生成的モデルは、観測値と目的値 ( x , y ) {\displaystyle (x,y)} または目的値 y が与えられたときの観測値 x のいずれかの、ランダムなインスタンス(結果)を「生成」することができる。一方、識別的モデル、または識別的分類器(モデルなし)は、観測値 x が与えられたとき、目標変数 Y の値を「識別」することができる。「識別」(discriminate)と「分類」(classify)の違いは微妙で、この2つの用語しばしば同じ意味で使われることがある。したがって「識別」と「分類」が等価である場合、「識別的分類器」という用語は冗語になる。
また「生成的モデル」という用語は、入力変数の潜在的なサンプルの確率分布に直接関係しない方法で出力変数のインスタンスを生成するモデルを表すこともある。敵対的生成ネットワークは、これに属する生成的モデルの例であり、主に潜在的な入力に対する特定の出力の類似性に基づいて判断される。しかしこのようなモデルは分類器ではない。
生成的アルゴリズムは、信号を分類するために、データがどのように生成されたかをモデル化する。生成の仮定を考慮して、どのカテゴリがこの信号を生成する可能性が最も高いか、という問いを投げかける。これに対して、識別的アルゴリズムは、データがどのように生成されたかに注目せず、与えられた信号を単純に分類する。つまり、識別的アルゴリズムはデータから直接 p ( y | x ) {\displaystyle p(y|x)} を学習して、その後データを分類しようとする。一方、生成的アルゴリズムは p ( x , y ) {\displaystyle p(x,y)} を学習し、それを後で p ( y | x ) {\displaystyle p(y|x)} に変換してデータを分類しようとする。生成的アルゴリズムの利点の1つは、 p ( x , y ) {\displaystyle p(x,y)} を使用して既存のデータに類似した新しいデータを生成できることである。しかし、一部の識別的アルゴリズムは、分類タスクにおいて、一部の生成的アルゴリズムよりも優れた性能を発揮することが示されている。
識別的モデルは観測変数の分布をモデル化する必要がない代わりに、観測変数と対象変数の間の複雑な関係を表現することはできない。しかし、一般的には、分類や回帰の作業において、必ずしも生成的モデルより優れているとは限らない。全体として、この2種類の手法は補完的なもの、あるいは同じ手順の異なる見方として捉えられている。
分類へ関していえば、観測可能変数 X は多くの場合連続変数(英語版)で、目的 Y は一般的にラベルの有限集合からなる離散変数(英語版)であり、また、条件付き確率 P ( Y ∣ X ) {\displaystyle P(Y\mid X)} は、 X を入力、Y を出力とする(非決定論的な)目的関数(英語版) f : X → Y {\displaystyle f\colon X\to Y} と解釈することもできる。
ラベルの有限集合があるとき、「生成的モデル」の2つの定義は密接に関連している。条件付き分布 P ( X ∣ Y = y ) {\displaystyle P(X\mid Y=y)} のモデルは、各ラベルの分布を表し、同時分布のモデルは、ラベル値の分布 P ( Y ) {\displaystyle P(Y)} と、ラベルを与えられた観測値の分布 P ( X ∣ Y ) {\displaystyle P(X\mid Y)} のモデルと等価で、記号的には P ( X , Y ) = P ( X ∣ Y ) P ( Y ) {\displaystyle P(X,Y)=P(X\mid Y)P(Y)} である。