Softmax per le probabilità
Trasformi i punteggi grezzi in una distribuzione tra classi
Softmax per le probabilità è una lezione Deep Learning Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Deep Learning Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Deep Learning Academy include 4 lezioni in totale.
Dai punteggi alle scelte
L’ultimo layer di un classificatore restituisce punteggi grezzi, uno per classe. Questi numeri non limitati sono chiamati logits e sono difficili da interpretare direttamente. 🔢
Ecco Softmax
Softmax trasforma un vettore di logits in una distribuzione di probabilità chiara su tutte le classi. Ora ogni punteggio diventa una probabilità.
import torch.nn.functional as F
probs = F.softmax(logits, dim=-1)Due garanzie
Softmax garantisce due proprietà: ogni valore in uscita è compreso tra 0 e 1 e tutti i valori sommano a uno. È esattamente ciò che serve a una distribuzione.
Come funziona
Softmax calcola l’esponenziale di ogni logit, quindi divide per il totale. L’esponenziale fa prevalere i logits più grandi, rendendo più netto il vincitore.
exp = logits.exp()
probs = exp / exp.sum()Relativo, non assoluto
Softmax considera le differenze tra i logits, non la loro grandezza assoluta. Aggiungere la stessa costante a ogni logit lascia invariate le probabilità.
Sigmoid e Softmax
Usate sigmoid per un’unica uscita sì/no. Usate softmax quando le classi competono e deve prevalere esattamente una tra diverse possibilità.
Scegliere il vincitore
Per ottenere la classe predetta, calcolate l’argmax dell’uscita di softmax. Quell’indice corrisponde alla classe con la probabilità più alta.
pred = probs.argmax(dim=-1)Attenzione alla dimensione
Impostate sempre il dim corretto, in modo che softmax normalizzi tra le classi e non tra gli elementi del batch. Un asse errato compromette silenziosamente le probabilità.
Saltatelo durante l’addestramento
Durante l’addestramento, di solito non applicate softmax direttamente. La funzione di costo cross-entropy si aspetta i logits grezzi e la applica internamente.
loss = F.cross_entropy(logits, target) # logits, not probsPerché è più sicuro
Combinare softmax e il logaritmo in un’unica funzione è più stabile dal punto di vista numerico. Eseguire entrambi i passaggi manualmente può causare overflow o perdita di precisione.
La temperatura regola la nitidezza
Dividere i logits per una temperatura prima di softmax permette di controllare la sicurezza delle previsioni. Valori bassi rendono il picco più pronunciato, mentre valori alti lo appiattiscono.
Controllo rapido
Riflettete su cosa si aspetta in ingresso la funzione di costo cross-entropy.
Riepilogo
Softmax converte i logits in probabilità la cui somma è uno, perfette per un’uscita multiclass. Durante l’addestramento, però, lasciate che se ne occupi cross-entropy. 🏁
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Softmax per le probabilità» è gratuita?
Sì — il testo completo di «Softmax per le probabilità» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Deep Learning Academy, passa a CoddyKit PRO. Il corso Deep Learning Academy include 4 lezioni in totale.
Cosa imparerò in «Softmax per le probabilità»?
Trasformi i punteggi grezzi in una distribuzione tra classi Eserciti Deep Learning Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Deep Learning Academy?
Non è richiesta alcuna esperienza precedente. Deep Learning Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Softmax per le probabilità»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Deep Learning Academy?
Sì. Ogni lezione Deep Learning Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Perché la non linearità sblocca il vero potenziale
- ReLU e le sue cugine Leaky e GELU
- Sigmoid e Tanh: comprimere in un intervallo
- Softmax per le probabilità