Nel machine learning i modelli si dividono in due grandi famiglie: generativi e discriminativi. Confusione tra le due fa danni, capirla ti chiarisce mezzo campo.
Modelli discriminativi: imparano a classificare. Dato un input, prevedono un'etichetta. Esempi:
- Filtro spam: email → "spam" o "non spam".
- Riconoscimento immagini: foto → "gatto", "cane", "auto".
- Sentiment analysis: testo → "positivo", "negativo".
- BERT, ResNet, regressione logistica: tutti discriminativi.
Modelli matematici: imparano P(y | x), la probabilità dell'etichetta dato l'input.
Modelli generativi: imparano a creare dati simili a quelli di training. Dato (eventualmente) un condizionamento, generano un nuovo esempio. Esempi:
- LLM (GPT, Claude, Llama): generano testo.
- Diffusion model (Stable Diffusion, Midjourney): generano immagini.
- GAN, VAE: generano dati di vario tipo.
- Whisper (in modalità generativa): genera trascrizioni.
Modelli matematici: imparano P(x) o P(x | condizione), la distribuzione dei dati.
I generativi sono più potenti (puoi sempre derivarne classificatori) ma più difficili da addestrare. I discriminativi sono più semplici e di solito più precisi sui compiti specifici.
Tutta l'IA generativa che fa rumore oggi (ChatGPT, Midjourney, Sora) è generativa. Quasi tutti i sistemi industriali silenziosi (filtri, raccomandazioni, frodi) sono discriminativi. Diversi mestieri, entrambi utili.