Generativo vs Discriminativo

Inferenza, stima e processo decisionale dai dati

Esistono due modi profondamente diversi di costruire un classificatore, e questa divisione attraversa tutto il machine learning. Un modello discriminativo impara direttamente il confine tra le classi. Un modello generativo impara come ciascuna classe genera i propri dati e ricava il confine come sottoprodotto.

Formalmente: un modello discriminativo stima direttamente la condizionata p(y|x), rispondendo alla domanda "date queste feature, quale etichetta?" Un modello generativo stima la congiunta p(x, y) (spesso tramite p(x|y) e p(y)), poi usa il teorema di Bayes per ottenere p(y|x).

Pensa a due studenti d'arte. Uno impara a dipingere un gatto da zero, padroneggiando come pelliccia, baffi e orecchie si uniscono: questo è un modello generativo, che impara come ogni classe produce i suoi dati. L'altro non dipinge mai nulla ma diventa brillante nell'individuare un gatto rispetto a un cane in qualsiasi foto: questo è un modello discriminativo, che impara solo il confine tra le classi. Il pittore può creare nuovi gatti; l'osservatore traccia solo la linea, ed è spesso più acuto in questo.

Dove si trova nel MLQuesta dicotomia organizza ampie porzioni dell'ML. Un classificatore (regressione logistica, la maggior parte delle reti neurali) è discriminativo: p(y|x) e nulla più. Una VAE o un modello di diffusione è generativo: impara p(x) abbastanza bene da sintetizzare nuove immagini, cosa che un discriminatore non sa fare. Naive Bayes contro regressione logistica è la coppia classica da manuale; VAE…
▶ Generativo vs Discriminativo
← Test Statistici per l'MLExpectation-Maximization (EM) →