FormularioMachine Learning: definizioni, teoremi e formule delle note, in ordine di capitolo
In questa pagina 8
1. Introduzione e dati
Introduzione al machine learning
Definizione (machine learning). Il machine learning è l'insieme dei metodi con cui un programma ricava dai dati la regola che collega ingressi e uscite, invece di riceverla scritta da un programmatore.
Esempio. Per riconoscere lo spam si potrebbe scrivere a mano la regola «se compare la parola premio allora è spam» (approccio basato su regole) oppure mostrare al modello migliaia di messaggi già etichettati e lasciare che sia lui a trovare quali parole e combinazioni contano (approccio guidato dai dati, cioè ML). Oggi quasi tutte le tecnologie di AI importanti sono di questo secondo tipo.
Definizione (apprendimento supervisionato). Setup: osservazione dell'ambiente. Dati: coppie , cioè un ingresso e l'uscita desiderata (l'etichetta, label). Compito: imparare una funzione che dagli ingressi produca le uscite .
Esempio. = metri quadri di un appartamento, = prezzo. I dati sono coppie (metri quadri, prezzo) di appartamenti venduti; il compito è prevedere il prezzo di un appartamento nuovo.
Definizione (apprendimento non supervisionato). Dati: solo gli ingressi , senza etichette. Compito: imparare strutture (pattern) nei dati di ingresso, per esempio gruppi di osservazioni simili.
Esempio. Si hanno gli acquisti di 10 000 clienti, senza alcuna etichetta. Un algoritmo di clustering (Clustering e k-meansIl clustering raggruppa osservazioni simili senza etichette, come preprocessing (un modello per ogni cluster) o come obiettivo (segmentazione clienti, organizzazione di documenti). K-means: si sceglie $K$, si inizializzano $K$ centroidi, si alterna assegnazione di ogni punto al centroide più vicino e aggiornamento di ogni centroide alla media dei suoi punti, fino a convergenza; minimizza $\mathrm{MSE}{\text{within}}=\frac1N\sum_k\sum{x_i\in C_k}|x_i-\mu_k|^2$ ma solo fino a un minimo locale, quindi dipende dall'inizializzazione. Il numero di cluster si sceglie col metodo del gomito (la dispersione cala sempre, si cerca dove rallenta) o con la gap statistic $\mathrm{Gap}(K)=E[\log W_K^{ref}]-\log W_K$ (si prende il più piccolo $K$ con $\mathrm{Gap}(K)\ge\mathrm{Gap}(K+1)-s_{K+1}$). Il clustering gerarchico agglomerativo parte da un cluster per punto e fonde i due più vicini (linkage single, complete, average, Ward) costruendo un dendrogramma; quello divisivo parte da un solo cluster. Programma di Telecomunicazioni: clustering.Clustering e k-means →) può dividerli in gruppi con abitudini simili, senza che nessuno abbia detto quali gruppi esistano.
Definizione (apprendimento per rinforzo). Setup: interazione con l'ambiente. Dati: triplette (stato, azione, ricompensa). Compito: imparare una politica (policy) che massimizzi la ricompensa totale.
Esempio. Un robot che impara a camminare: lo stato è la posizione dei suoi giunti, l'azione è il movimento, la ricompensa è la distanza percorsa senza cadere. Il rinforzo non si approfondisce in questo corso.
Formula (regressione lineare con una variabile). , con pendenza e valore in .
Esempio. Con € e € al metro quadro, un appartamento di ha predizione €.
Statistica per il machine learning
Definizione (matrice di progetto o design matrix). I dati tabulari si organizzano in una matrice con righe e colonne:
- ogni riga è un'osservazione (o campione, sample): una volta in cui il fenomeno da descrivere compare nei dati storici, quindi è il numero di osservazioni;
- ogni colonna è un attributo (o variabile, o feature): una grandezza potenzialmente legata al fenomeno, quindi è il numero di variabili.
Esempio. Per prevedere il prezzo delle case, ogni riga è una casa venduta e le colonne sono metri quadri, numero di stanze, anno di costruzione: con 1 000 case e 3 attributi, ha righe e colonne.
Definizione (momento di ordine ). Per una variabile aleatoria il momento di ordine è (valore atteso: Valore attesoIl valore atteso E[X] = Σ x p_X(x) è la media dei valori di X pesata con le loro probabilità (esiste se la serie converge assolutamente); per una funzione g vale E[g(X)] = Σ g(x) p_X(x) senza trovare la legge di g(X), ed E è lineare: E[aX + bY + c] = aE[X] + bE[Y] + c.Valore atteso →; momenti e varianza: Varianza e momentiI momenti E[X^k] e i momenti centrati E[(X − μ)^k] descrivono la forma di una legge; la varianza Var(X) = E[(X − μ)²] = E[X²] − E[X]² misura quanto X si disperde attorno alla media, vale Var(aX + b) = a² Var(X) e Var(X) = 0 solo se X è costante.Varianza e momenti →):
Formula (indicatori teorici).
- Media: (tendenza centrale).
- Varianza: (dispersione).
- Asimmetria (skewness): .
- Curtosi (kurtosis): .
Formula (momenti campionari). Con i valori osservati:
Esempio. , . Media: . Scarti dalla media: .
Definizione (quartili). Dividono i dati ordinati in quattro parti con lo stesso numero di osservazioni:
- (25%): valore sotto cui cade il 25% dei dati;
- (50%): la mediana, che divide i dati in due metà;
- (75%): valore sotto cui cade il 75% dei dati;
- scarto interquartile : ampiezza dell'intervallo che contiene il 50% centrale dei dati.
Esempio. Con dati : , , , .
Definizione (moda). Il valore che compare più spesso nei dati. È importante per le variabili categoriche, per le quali media e mediana non hanno senso.
Esempio. : media , mediana , moda .
Formula (z-score). , con e media e deviazione standard della variabile (la stessa standardizzazione delle variabili gaussiane: Distribuzione gaussiana (normale)N(μ, σ²) ha densità e^(−(x−μ)²/(2σ²)) / √(2πσ²), a campana centrata in μ con larghezza σ; media μ, varianza σ²; si standardizza con Z = (X − μ)/σ ~ N(0, 1) e si calcola P(X ≤ x) = Φ((x − μ)/σ), con Φ(−z) = 1 − Φ(z); aX + b è ancora gaussiana, N(aμ + b, a²σ²).Distribuzione gaussiana (normale) →).
Esempio (dalle slide). : , (con divisore , come fa pandas); gli z-score sono . Con il divisore si avrebbe e valori : le slide usano .
Grafico interattivo: Normale standard e distribuzione più appuntita con la stessa media e varianza: la seconda ha curtosi maggiore di 3 (code più pesanti e picco più alto)
Correlazione e visualizzazione dei dati
Definizione (correlazione). Misura statistica del grado con cui due variabili si muovono una rispetto all'altra: ne quantifica forza e direzione. I suoi valori stanno tra e :
- : correlazione positiva perfetta (se una variabile cresce, l'altra cresce in proporzione);
- : nessuna correlazione (nessuna relazione, almeno lineare);
- : correlazione negativa perfetta (se una cresce, l'altra decresce in proporzione).
Formula (coefficiente di correlazione di Pearson). Per due variabili osservate su campioni, con medie : Il numeratore rappresenta la covarianza (a meno del fattore ) tra e (Covarianza e coefficiente di correlazioneCov(X, Y) = E[(X − E X)(Y − E Y)] = E[XY] − E[X]E[Y] misura quanto X e Y variano insieme; è bilineare, Cov(X, X) = Var(X), Var(X + Y) = Var X + Var Y + 2Cov(X, Y); ρ = Cov / (σ_X σ_Y) sta in [−1, 1] e vale ±1 solo per legami lineari. Indipendenti ⇒ non correlate, ma non viceversa (tranne per i vettori gaussiani).Covarianza e coefficiente di correlazione →); il denominatore è il prodotto delle deviazioni standard (a meno degli stessi fattori). Misura la relazione lineare.
Esempio. , . Medie: , . Scarti: , . Numeratore: . Somme dei quadrati: e . Allora .
Grafico interattivo: X = [0, 1, 2, 5] e Y = [4, 1, 3, 0]: i quattro punti e la retta dei minimi quadrati y = 3,29 − 0,64 x, con r ≈ −0,76 (relazione decrescente, non perfetta)
Analisi delle componenti principali (PCA)
Definizione (autovalore di una componente). , cioè la varianza dei dati proiettati sulla componente . La radice quadrata di si chiama valore singolare. In forma matriciale è l'autovalore della matrice di covarianza.
Formula (varianza spiegata). La frazione cumulata fino alla componente si calcola sommando.
Esempio (dati dei topi, due geni). La matrice di covarianza dei dati è . Gli autovalori sono le radici di , cioè , e valgono e . PC1 spiega della varianza, PC2 il . L'autovettore di risolve , cioè : normalizzato dà .
Grafico interattivo: Dati dei topi (geni 1 e 2) centrati: PC1 (rossa) è la retta che passa più vicino ai punti e lungo cui la varianza è massima (96 % del totale), PC2 (tratteggiata) è perpendicolare
Teorema (perché gli autovettori). Tra tutti i vettori unitari (), la varianza dei dati proiettati è , ed è massima quando è l'autovettore di con autovalore più grande; il massimo vale .
Esempio. Per e : , massimo per (l'autovettore ).
2. Regressione
Regressione lineare
Definizione (compito supervisionato). Si dispone di dati storici con : è l'ingresso (input, il vettore delle feature ) e l'uscita (output, la risposta da prevedere). L'obiettivo è imparare una funzione che, ricevendo un nuovo, fornisca una stima di .
Formula (modello lineare). . I numeri sono i parametri (o coefficienti); è l'intercetta, il coefficiente della costante.
Esempio (dalle slide). Prezzo (in USD) : ogni bagno in più aumenta la stima di USD e ogni anno di età la riduce di USD, a parità delle altre variabili. Il coefficiente dice di quanto cambia la stima per un'unità in più della feature , tenendo ferme le altre.
Formula (MSE e RMSE). è l'errore quadratico medio (mean squared error); la radice ha la stessa unità di ed è di più facile lettura.
Esempio. Previsioni per valori veri : errori , quadrati con somma , , .
Proprietà (convessità). Nei modelli di regressione lineare la funzione di costo è convessa nello spazio dei parametri: il segmento che unisce due punti qualunque del grafico non sta mai sotto il grafico. Quindi non ci sono minimi locali spuri: c'è un unico insieme di parametri ottimi, indicato con .
Grafico interattivo: MSE in funzione della pendenza β₁ (con β₀ = 1,5 fisso) per i quattro punti (1;2), (2;3), (3;5), (4;4): è una parabola convessa con minimo 0,45 in β₁ = 0,8
Teorema (soluzione dei minimi quadrati ordinari). Se è invertibile,
Esempio completo. Dati , . La matrice con la colonna di uni è . Allora Il determinante è e l'inversa è . Perciò La retta è , con previsioni ( come sopra).
Grafico interattivo: I quattro punti e la retta dei minimi quadrati ŷ = 1,5 + 0,8 x: i segmenti sono i residui (−0,3; −0,1; +1,1; −0,7), la cui somma dei quadrati 1,8 è la minima possibile
Formula (coefficiente di determinazione). (somma dei quadrati dei residui) misura l'errore del modello; misura la variabilità totale di rispetto alla media, cioè l'errore di un «modello» che prevede sempre .
Esempio. Per : e , quindi : la retta spiega il della variabilità di .
Overfitting, ridge regression e cross-validation
Definizione (K-fold cross-validation). Si mescolano i dati e si dividono in parti (fold) di uguale dimensione. Per : si usa il fold come insieme di valutazione e i restanti per addestrare il modello; si calcola la metrica (per esempio l'MSE) sul fold . La stima finale è la media .
Esempio. Con dati e si formano 5 fold da 4 dati (dati 1-4, 5-8, 9-12, 13-16, 17-20 dopo il mescolamento): a ogni giro si addestra su 16 dati e si valuta su 4. Per il polinomio quadratico dell'esempio del laboratorio gli MSE dei 5 fold sono e la media vale .
Definizione (MCCV). Si ripete volte: divisione casuale del dataset in training e test, con una frazione fissata di dati nel test; addestramento; calcolo di . Si media: . Le scelte di progetto sono due: il numero di ripetizioni e la quota di test .
Definizione (bias). L'incapacità di un metodo di cogliere la vera relazione tra ingresso e uscita. Un modello troppo semplice (la retta quando i dati seguono una parabola) ha bias alto e non la catturerà mai, per quanti dati si abbiano.
Definizione (varianza). La sensibilità del modello ai dati di addestramento: se, cambiando il campione di training, le previsioni cambiano molto, la varianza è alta. Un modello molto flessibile (polinomio con 20 coefficienti) ha bias basso sul training ma varianza alta.
Teorema (decomposizione bias-varianza). Sia con rumore , , indipendente dal training. Per un punto fissato e un modello addestrato su un campione casuale:
Esempio. Se per un punto , la media delle previsioni su molti campioni è con varianza e , l'errore quadratico atteso è .
Grafico interattivo: Andamento qualitativo al crescere della complessità del modello: l'errore sul training scende sempre, quello su dati nuovi scende e poi risale (overfitting); il minimo (circa a 6) è il buon compromesso tra bias e varianza
Definizione (regolarizzazione). Tecnica per prevenire l'overfitting aggiungendo alla funzione di costo un termine di penalità sulla complessità del modello: si minimizza dove misura la complessità e è il parametro di regolarizzazione, un iperparametro (un valore che si sceglie prima dell'addestramento e che non è appreso dai dati). Se non c'è regolarizzazione; per grande conta quasi solo la penalità.
Definizione (ridge regression, penalità ). Con (somma dei quadrati dei coefficienti, senza ) si minimizza
Formula (ridge regression). . Per coincide con l'OLS; al crescere di i coefficienti si riducono (shrinkage) verso zero.
Esempio (una sola feature). Dati (centrata) e ( meno la media ): e . Con : (l'OLS). Con : ; con : ; con : ; per : . Il trace plot (coefficienti in funzione di ) mostra questa discesa.
Grafico interattivo: Trace plot nel caso di una feature: il coefficiente ridge 4/(5+λ) parte dal valore OLS 0,8 per λ = 0 e tende a 0 al crescere di λ (shrinkage)
LASSO e discesa del gradiente
Definizione (LASSO). Least Absolute Shrinkage and Selection Operator: penalità , somma dei valori assoluti dei coefficienti, con non penalizzato (come nella ridge) e feature standardizzate (Statistica per il machine learningI dati di un problema ML si organizzano nella matrice di progetto $X$ ($n$ osservazioni, $p$ variabili). La statistica serve a capirli, ripulirli e prepararli: i momenti (media $\mu$, varianza $\sigma^2$, asimmetria, curtosi), i quartili con lo scarto interquartile $\mathrm{IQR}=Q_3-Q_1$ (all'esame senza interpolazione), la moda per i dati categorici. Con queste quantità si imputano i dati mancanti (media o mediana), si eliminano le variabili costanti e si standardizza con lo z-score $z=(x-\mu)/\sigma$, usando sempre media e deviazione standard del solo training set.Statistica per il machine learning →). In forma matriciale, con comprensiva della colonna di uni: .
Esempio. Con e la penalità vale , mentre la ridge con lo stesso varrebbe (il valore assoluto penalizza di più i coefficienti piccoli, il quadrato quelli grandi).
Formula (discesa del gradiente, gradient descent). Partendo da un iniziale, si ripete dove è il passo (learning rate), fino a convergenza (per esempio finché o dopo un numero massimo di iterazioni).
Esempio in una variabile. ha gradiente e minimo in . L'aggiornamento è . Partendo da :
Grafico interattivo: Discesa del gradiente su J(w) = w² partendo da w = 4: con η = 0,1 si scende lentamente verso il minimo, con η = 1,1 i passi saltano da un lato all'altro della parabola e si allontanano
Formula (subgradiente del LASSO). con al posto di perché l'intercetta non si penalizza.
Esempio. Con , e componente dell'errore : il subgradiente è .
3. Classificazione
Classificazione e k-nearest neighbors
Definizione (classificazione). Problema supervisionato in cui l'uscita è una variabile categorica: ogni osservazione appartiene a una di classi. Se la classificazione è binaria (per esempio spam o non spam); se è multiclasse (per esempio per le specie di iris: setosa, versicolor, virginica).
Esempio. Iris: ingressi = lunghezza e larghezza di sepali e petali; uscita . Un caso estremo è Shazam: riconoscere una canzone da 3-4 secondi di audio, con classi; la soluzione è diventata possibile grazie a un forte lavoro di feature engineering (un'«impronta digitale» del segnale).
Definizione (k-NN). «Una nuova osservazione viene assegnata alla classe più frequente tra i suoi vicini più prossimi nel training.» Algoritmo:
- si sceglie il numero di vicini ;
- si calcola la distanza tra il nuovo punto e tutti i punti del training (di solito la distanza euclidea);
- si selezionano i punti più vicini;
- si predice: per la classificazione la classe più frequente tra i (voto di maggioranza); per la regressione la media (o la media pesata) dei valori dei vicini.
Esempio. Si abbiano 8 punti nel piano: classe R in , , , ; classe B in , , , . Il nuovo punto è . Le distanze euclidee dai primi cinque punti più vicini sono: (R), (R), (B), (B), (B). Quindi: con il vicino è R e è R; con i vicini sono R, R, B e vince R (2 voti contro 1); con sono R, R, B, B, B e vince B (3 contro 2). Il risultato dipende da .
Grafico interattivo: Esempio con q = (0, 0): i cerchi tratteggiati contengono i 3 e i 5 vicini più prossimi. Con k = 1 e k = 3 vince la classe rossa (R), con k = 5 la classe blu (B)
Definizione (curse of dimensionality). L'insieme dei problemi che compaiono in spazi con molte dimensioni: aumentando il numero di feature i dati si comportano in modo inatteso e molti metodi diventano meno efficienti.
Regressione logistica e softmax
Definizione (funzione logistica o sigmoide). (esponenziale: Esponenziale e logaritmoLa funzione esponenziale a^x (base positiva diversa da 1) e la sua inversa, il logaritmo in base a, con grafici e proprietà.Esponenziale e logaritmo →). Ha valori in , è crescente, vale in , tende a per e a per .
Esempio (dalle slide). ; ; . Inoltre e : vale la simmetria .
Grafico interattivo: Sigmoide σ(z) = 1/(1 + e^(−z)): trasforma qualunque numero reale in un valore in (0, 1); σ(0) = 0,5 è la soglia di decisione, σ(5) = 0,99
Definizione (regressione logistica). Si prende la combinazione lineare delle feature (come nella Regressione lineareNell'apprendimento supervisionato si impara una funzione $F(x)$ dagli esempi $(x,y)$: regressione se $y$ è continua, classificazione se è categorica. Il modello lineare è $F_\beta(x)=\beta_0+\beta_1x_1+\dots+\beta_px_p=X\beta$ (con una colonna di uni per $\beta_0$) e i parametri si scelgono minimizzando l'errore quadratico medio $\mathrm{MSE}=\frac1n\sum_i(y_i-F_\beta(x_i))^2$, funzione convessa dei parametri. Annullando il gradiente di $J(\beta)=|y-X\beta|^2$ si ottengono le equazioni normali $X^TX\beta=X^Ty$ e la soluzione dei minimi quadrati ordinari $\beta=(X^TX)^{-1}X^Ty$. Il coefficiente di determinazione $R^2=1-SS_{res}/SS_{tot}$ misura la qualità del fit (0 = come la media, negativo = peggio della media). Un modello va valutato su un test set mai usato per addestrare: l'errore sul training è ottimistico e un polinomio di grado alto lo azzera senza generalizzare.Regressione lineare →, con la colonna di uni) e la si trasforma con la sigmoide: La classe predetta è se , altrimenti .
Esempio. Se e : , : classe con probabilità . Per : , , classe .
Grafico interattivo: Con β = (−3; 1; 1) il bordo di decisione è la retta x₁ + x₂ = 3 (probabilità 0,5); le rette parallele x₁ + x₂ = 3 ± 2,2 sono le curve di probabilità 0,9 e 0,1: la probabilità varia solo nella direzione perpendicolare al bordo
Definizione (log-verosimiglianza negativa o cross-entropia binaria). Spesso si usa la media .
Esempio. Per e : costo ; per : ; per (modello indeciso): . Con tutte le previsioni valgono e la media della perdita è qualunque siano i dati.
Grafico interattivo: Costo per un esempio con y = 1 in funzione di z = xᵀβ: l'errore quadratico (1 − σ(z))² si appiattisce a sinistra (gradiente quasi nullo anche se l'errore è massimo), la log-verosimiglianza −log σ(z) = log(1 + e^(−z)) cresce linearmente per z molto negativo e fornisce sempre un gradiente utile
Formula (gradiente della log-verosimiglianza negativa). Qui include la colonna di uni, e sono vettori .
Esempio completo. Dati , , . Partendo da tutte le previsioni sono e l'errore . Gradiente: la prima componente è ; la seconda è . Con : . Le previsioni diventano ; secondo gradiente , quindi ; terzo passo . A convergenza (verificata con il metodo di Newton e con scikit-learn senza penalità) , con perdita media (era ): il bordo cade in e le probabilità previste sono .
Grafico interattivo: Sei dati (y = 0 per x = 1, 2, 4 e y = 1 per x = 3, 5, 6) e curva logistica σ(−4,249 + 1,214 x): supera 0,5 in x = 3,5, il bordo di decisione
Metriche di classificazione
Definizione (matrice di confusione). Tabella che incrocia la classe vera (actual, righe) con la classe prevista (predicted, colonne). Ogni cella conta quante osservazioni hanno quella combinazione; la diagonale contiene le previsioni corrette.
Esempio. Con etichette vere e previste : TP (le prime quattro), TN (posizioni 5 e 6), FP (posizione 7: vero , previsto ), FN (posizioni 8, 9, 10: vero , previsto ).
Formula (accuracy, specificità, precision, recall).
Esempio (stessi dati). Accuracy ; specificità ; precision ; recall . Il modello è quindi affidabile quando dice «positivo» () ma trova solo il dei positivi.
Definizione (curva ROC). Per ogni soglia (si predice positivo se punteggio ) si calcolano il tasso di veri positivi (la recall) e il tasso di falsi positivi ; la curva ROC (receiver operating characteristic) riporta TPR contro FPR. L'area sotto la curva si chiama AUC: per un classificatore perfetto, per uno casuale (la diagonale). Un buon classificatore ha la curva vicina all'angolo in alto a sinistra.
Esempio. Etichette e punteggi . Soglia : previsti positivi solo il punteggio (vero positivo): TPR , FPR , punto . Soglia : positivi i punteggi e (quest'ultimo è un negativo): TP , FP , punto . Soglia : TP , FP , punto . Soglia : tutti positivi, punto . Area per rettangoli: (tra e a quota ) (tra e a quota ) . Lo stesso valore si ottiene contando le coppie (positivo, negativo) in cui il positivo ha punteggio più alto: su : l'AUC è la probabilità che un positivo preso a caso abbia un punteggio maggiore di un negativo preso a caso.
Grafico interattivo: Curva ROC dell'esempio (punteggi 0,1; 0,4; 0,35; 0,8 con classi 0, 0, 1, 1): passa per (0; 0,5), (0,5; 0,5), (0,5; 1); l'area è 0,75. La diagonale è il classificatore casuale (AUC = 0,5)
Halfspace e Perceptron
Definizione (halfspace). La classe di funzioni con per e per (per si sceglie una convenzione, per esempio ). Il vettore dei pesi e il bias sono i parametri.
Esempio. In con e : . Il punto dà ; il punto dà .
Definizione (separabilità lineare). Un insieme di esempi è linearmente separabile se esistono con per ogni , cioè se un halfspace li classifica tutti correttamente. Il margine di un tale piano è la distanza minima dei punti dal piano.
Definizione (algoritmo del Perceptron). Dati con e aumentati con la costante :
- si inizializza ;
- si scorrono gli esempi; per un esempio sbagliato, cioè con , si aggiorna
- si ripete finché in un'intera passata non ci sono errori.
Esempio completo (verificato). Dati con , con , con , con ; con la costante e :
Grafico interattivo: Esempio del Perceptron: i punti positivi (rossi) e negativi (blu) e l'iperpiano finale x₁ + x₂ = 3, ottenuto con w = (1, 1) e b = −3; il vettore w (freccia) è perpendicolare alla retta e punta verso il semispazio positivo
Teorema (convergenza del Perceptron, Novikoff). Siano per ogni , e sia con tale che per ogni (esiste un iperpiano con margine ). Allora il Perceptron commette al più errori (aggiornamenti) prima di classificare correttamente tutti gli esempi.
Esempio. Nell'esempio precedente ha margini , quindi ; il vettore aumentato più lungo è con . Il teorema garantisce errori; ne sono occorsi (il limite è largo ma vale per ogni ordine degli esempi).
4. Alberi e metodi ensemble
Alberi di decisione
Definizione (albero di decisione). Struttura ad albero in cui
- ogni nodo interno rappresenta una regola basata su una feature (per esempio «umidità = alta» oppure «»);
- ogni ramo è l'esito della regola;
- ogni foglia è una predizione: tipicamente la classe più frequente tra i campioni che arrivano in quella foglia (in regressione, la media dei loro valori).
Definizione (entropia). (Logaritmo in base 2: Esponenziale e logaritmoLa funzione esponenziale a^x (base positiva diversa da 1) e la sua inversa, il logaritmo in base a, con grafici e proprietà.Esponenziale e logaritmo →.) Per un insieme di campioni con classi, di proporzioni , : l'insieme è puro (una sola classe); più alta: classi più mescolate, maggiore incertezza. Con due classi il massimo è per .
Definizione (guadagno d'informazione). Dividere secondo i valori dell'attributo in sottoinsiemi riduce l'entropia di alto: la divisione riduce molto l'incertezza (buona scelta); basso: l'attributo non aiuta a separare le classi.
Esempio (dataset del tennis, Mitchell 1997). Dati di 14 giorni per prevedere se l'amico gioca a tennis:
Definizione (indice di Gini o impurità di Gini). Vale per un insieme puro, e il massimo per classi equiprobabili. Per una divisione in sinistra/destra: Si sceglie la divisione con minimo (cioè con la massima riduzione di impurità).
Esempio. Sul tennis, . Split su Outlook: Sunny , Overcast , Rain , quindi (riduzione ); Humidity: ; Wind: ; Temperature: . Anche con Gini la scelta migliore è Outlook.
Grafico interattivo: Misure di impurità per due classi in funzione della proporzione p di una classe: entropia (normalizzata a 1 in p = 0,5), indice di Gini 2p(1 − p) e errore di classificazione min(p, 1 − p). Tutte valgono 0 per un nodo puro e sono massime per p = 0,5
Formula (criteri per la regressione). Per una divisione in sinistra/destra con campioni (): con (Varianza e momentiI momenti E[X^k] e i momenti centrati E[(X − μ)^k] descrivono la forma di una legge; la varianza Var(X) = E[(X − μ)²] = E[X²] − E[X]² misura quanto X si disperde attorno alla media, vale Var(aX + b) = a² Var(X) e Var(X) = 0 solo se X è costante.Varianza e momenti →). Poiché in ogni nodo la previsione è la media (e quindi l'MSE del nodo è la sua varianza), massimizzare la riduzione di varianza equivale a minimizzare l'MSE. Ogni foglia restituisce la media del target dei suoi campioni.
Esempio. , : varianza del genitore . Per : sinistra (varianza ), destra (media , varianza ): MSE ponderato . Ripetendo per tutte le soglie si ottiene per : la migliore è (sinistra con media e varianza ; destra con media e varianza ), con riduzione di varianza . Le predizioni sono per e per : una funzione costante a tratti.
Metodi ensemble - bagging, random forest e boosting
Definizione (bagging, bootstrap aggregating). Per costruire una foresta di alberi: per ciascun albero si estrae dal training di campioni un campione bootstrap, cioè campioni con rimpiazzo (ogni estratto è rimesso nell'urna prima della successiva); si addestra un albero su ciascun campione; per classificare si fa il voto di maggioranza (la moda), per la regressione la media.
Esempio di voto. Con alberi che predicono per un campione: classe con voti su , «confidenza» (la frazione di voti per la classe vincente). Nel laboratorio (dataset wine, alberi di profondità 2) l'accuracy sul test è e gli errori hanno confidenza o .
Definizione (random forest). Bagging in più: a ogni split di ogni albero, invece di valutare tutte le feature se ne estrae a caso un sottoinsieme (tipicamente , con feature) e si sceglie lo split migliore solo tra queste (feature bagging).
Esempio (laboratorio, wine, feature bagging, ). Accuracy sul test con profondità 2 e 4 e con profondità 10; un solo albero di profondità 2-3 dava -.
Definizione (importanza di una feature). La misura di quanto una feature è utile alle previsioni, basata su quanto riduce l'impurità quando è usata per dividere. È un approccio «globale» di intelligenza artificiale spiegabile (Explainable AI (XAI)approfondimento: non nel programma di Telecomunicazioni. L'interpretabilità è l'arte di produrre descrizioni di un modello abbastanza semplici da essere capite da un umano; la spiegabilità aggiunge la completezza (permettere di anticipare la previsione). I metodi si classificano in intrinseci o post-hoc, agnostici o specifici del modello, globali o locali. Modelli intrinsecamente interpretabili: regressione lineare (pesi $\beta_j$, intervalli di confidenza, LASSO per la sparsità), regressione logistica ($\log\frac y{1-y}=\beta_0+\sum\beta_jx_j$), alberi. Importanza nelle foreste: MDI $=\sum_{\text{nodi}}\frac{n_p}{n_{TOT}}\Delta Gini$ (con feature selection bias). Metodi agnostici: permutation importance (aumento dell'errore dopo aver mescolato una feature), PDP $\hat f_S(x_S)=\frac1n\sum_if(x_S,x_C^{(i)})$ (media delle curve ICE), LIME (modello semplice locale pesato sui punti perturbati), SHAP (valori di Shapley: media dei contributi marginali su tutti gli ordini, somma $=f(x)-f(\text{base})$). Per le reti profonde: mappe di salienza, Grad-CAM, occlusione. Valutazione: livello applicativo, umano, funzionale. Lab: cardiopatia AHD con logistica, LASSO, random forest, ICE, PDP, SHAP.Explainable AI (XAI) →): dà informazioni sull'intero modello.
Esempio (iris, albero di profondità 3). Nodi: radice (150 campioni) con la larghezza del petalo: ; nodo «larghezza » (100 campioni, di nuovo larghezza): ; due nodi con la lunghezza del petalo: e . Importanza grezza: larghezza , lunghezza ; normalizzando (divisione per la somma ): e (coincide con feature_importances_ di scikit-learn). Sul dataset wine le feature più importanti sono proline, intensità del colore e flavonoidi.
Definizione (boosting). Si costruisce un modello forte (strong learner) combinando in sequenza molti modelli deboli (alberi con pochi split); ciascun nuovo modello cerca di correggere gli errori dei precedenti. La combinazione è una somma pesata.
Formula (gradient boosting). , , . Predizione finale: .
Esempio (dalle slide). Pesi osservati (altezza, colore preferito, genere come feature). Predizione iniziale: la media (esattamente ). Residui: . Primo albero con 4 foglie: (media), , , . Con la prima osservazione passa da a e il nuovo residuo è (prima : ha fatto un «piccolo passo» nella direzione giusta). Residui dopo il primo albero: . Secondo albero: foglie , , , ; residui dopo il secondo: . Ad ogni albero i residui si riducono (l'errore quadratico medio sul training passa da a circa e ).
Formula (similarity score, gain, output). Con parametro di regolarizzazione: Attenzione: nell'output la somma non è al quadrato.
Esempio (dalle slide). Dosaggi mg, efficacia , predizione iniziale : residui , con . Radice: somma , similarità . Soglia «dosaggio »: sinistra : ; destra (somma ): ; gain . Soglia «»: sinistra (somma ): ; destra (somma 0): ; gain . Soglia «»: sinistra (somma ): ; destra : ; gain . Si sceglie «dosaggio ». Il ramo destro si divide ancora con «»: sinistra (somma 14): ; destra : ; gain (profondità massima 2 nell'esempio; in pratica 6).
5. Apprendimento non supervisionato
Anomaly detection
Definizione (anomalia o outlier). «Un outlier è un'osservazione che si discosta così tanto dalle altre da destare il sospetto di essere stata generata da un meccanismo diverso» (Hawkins, 1980). In un dataset, per definizione, gli outlier dovrebbero essere pochi.
Esempio. Un sensore di temperatura che segna gradi invece di per un guasto del sensore.
Definizione (statistica di Hotelling). Per variabili, con media campionaria e matrice di covarianza : È uno z-score multivariato: misura quanto un'osservazione è lontana dalla media tenendo conto delle correlazioni. Un punto è un outlier multivariato se .
Esempio. Quantili: per e , (uguale a ); per : () e (); per : . Caso univariato: con media e varianza la statistica è : nel laboratorio, per valori da il punto ha , ben oltre : anomalo.
Grafico interattivo: Con correlazione 0,8 e varianze 1, la regione «normale» T² ≤ 5,99 (α = 0,05) è un'ellisse allungata lungo la diagonale: il punto (1, −1) è fuori (T² = 10) anche se ogni coordinata è entro 1σ; il punto (2, 2) è dentro (T² = 4,4) anche se ogni coordinata è a 2σ
Clustering e k-means
Definizione (k-means). Se si conoscessero i centroidi (i centri) di gruppi, basterebbe assegnare ogni punto al centroide più vicino. L'algoritmo li trova insieme alle assegnazioni:
- Scegliere (iperparametro): il numero di cluster.
- Inizializzare i centroidi: si scelgono a caso dei punti dati come centri iniziali.
- Assegnare ogni punto al centroide più vicino (distanza euclidea o altra).
- Aggiornare ogni centroide alla media dei punti assegnati al suo cluster.
- Ripetere 3-4 fino a convergenza (i centroidi non cambiano più, o cambiano meno di una tolleranza, o si è raggiunto il numero massimo di iterazioni).
Definizione (clustering gerarchico). Costruisce un albero di cluster, il dendrogramma, in due modi:
- agglomerativo (bottom-up): ogni punto parte come cluster a sé e si fondono cluster passo dopo passo;
- divisivo (top-down): si parte da un unico cluster che contiene tutto e lo si divide passo dopo passo.
Esempio svolto (average e single linkage). Sei punti , , , , , e distanza euclidea. Ordine delle fusioni con average linkage (distanza di fusione tra parentesi): ; poi con ; ; con ; infine i due gruppi e . Con single linkage le distanze sono : stessi gruppi, altezze diverse. Il salto grande nell'ultima fusione indica che due cluster sono la scelta naturale.
6. Support vector machines
Support vector machines e metodi kernel
Definizione (margine). Il margine è la distanza tra il bordo di decisione e le osservazioni di ciascuna classe più vicine ad esso. Il classificatore a margine massimo (maximal margin classifier) è il classificatore lineare che sceglie l'iperpiano per cui questa distanza è la più grande possibile.
Formula (distanza di un punto dall'iperpiano).
Esempio. Piano , quindi , , . Il punto dista .
Formula (larghezza del margine). Con la normalizzazione precedente, la distanza dal piano centrale a ciascun piano parallelo è e il margine totale è
Esempio. Con si ha , quindi un margine di per lato e in totale.
Formula (SVM a margine rigido, hard margin).
Formula (forma duale). Il classificatore è , perché .
Esempio. Nell'esempio i vettori di supporto sono due, con per . Da si ricava ; gli altri quattro punti hanno . Si controlla che il valore del duale coincide con il valore del primale .
Formula (SVM a margine morbido).
Esempio. Con , e un punto di classe in : , quindi (dentro il margine, ma dal lato corretto). Un punto di classe in ha e : mal classificato.
Grafico interattivo: Margine morbido: lo stesso piano con due punti di classe +1 che violano il margine. (2,5; 2) è dentro il margine (ξ = 0,75), (3; 0,5) è dal lato sbagliato (ξ = 1,25)
Definizione (kernel). Una funzione è un kernel se vale per una certa mappa . Misura la «somiglianza» di e : grande per punti simili, piccola per punti dissimili. Una SVM (Support Vector Machine) è un SVC in cui è sostituito dal kernel:
Esempio (kernel polinomiale di grado 2). Con del paragrafo precedente si dimostra : si espande il quadrato, , e si osserva che i sei addendi sono i prodotti delle sei componenti corrispondenti di e (per esempio ); da qui il fattore nella mappa. Numericamente, per , : , e . Con il kernel: e . Stesso risultato con un solo prodotto scalare in invece di uno in .
Formula (SVR).
7. Reti neurali e deep learning
Reti neurali - neuroni e funzioni di attivazione
Definizione (neurone artificiale). Dato un vettore di ingressi , pesi , bias e una funzione di attivazione (non lineare) il neurone calcola
Esempio. , , , : e .
Formula (attivazioni principali). Le quattro funzioni usate negli strati nascosti, con la derivata (serve alla backpropagation):
Esempio. , , ; (massimo), . e .
Grafico interattivo: Funzioni di attivazione: sigmoide e tanh saturano, ReLU e Leaky ReLU (α = 0,1) no
Formula (forma matriciale). Con e, per ogni strato , ha dimensione , ha componenti.
Teorema (approssimazione universale). Una rete con un solo strato nascosto (sufficientemente largo) e attivazione non lineare può approssimare qualsiasi funzione continua su un insieme compatto con precisione arbitraria.
Formula (softmax). Trasforma i punteggi grezzi (logits) in probabilità: Ogni uscita sta in e la somma è (il numeratore è positivo ed è una parte del denominatore, che è la somma di tutti i numeratori). Si usa l'esponenziale (Esponenziale e logaritmoLa funzione esponenziale a^x (base positiva diversa da 1) e la sua inversa, il logaritmo in base a, con grafici e proprietà.Esponenziale e logaritmo →) perché è positivo, monotono (ordine dei punteggi conservato) e derivabile. Si veda Regressione logistica e softmaxLa regressione lineare non è adatta alla classificazione (valori fuori da [0,1], retta tirata dai punti lontani). La regressione logistica passa il predittore lineare dalla sigmoide $\sigma(z)=1/(1+e^{-z})$ e interpreta $\hat y=\sigma(x^T\beta)$ come $P(y=1\mid x)$: si predice la classe 1 se $\hat y\ge0{,}5$, cioè $x^T\beta\ge0$ (bordo lineare). L'errore quadratico dà una funzione non convessa; si usa la log-verosimiglianza negativa $-\sum[y\log\hat y+(1-y)\log(1-\hat y)]$, convessa, con gradiente $X^T(\hat y-y)$ e nessuna formula chiusa (discesa del gradiente). Per più classi: one-vs-one ($C(C-1)/2$ classificatori, voto), one-vs-all ($C$ classificatori, massima probabilità), o la softmax $p_c=e^{z_c}/\sum_ke^{z_k}$ con cross-entropia. Si può regolarizzare (ridge, LASSO, Elastic Net) e la cross-validation si fa stratificata. Approfondimento: non nel programma di Telecomunicazioni.Regressione logistica e softmax →.
Esempio. : gli esponenziali sono , somma , quindi probabilità .
Formula (cross-entropy). Con la distribuzione vera (one-hot) e quella predetta, la perdita di un campione è ; nel caso binario . Penalizza molto una previsione sbagliata con alta confidenza. Su un campione di classe vera con probabilità predetta la perdita è .
Addestramento delle reti neurali - backpropagation e ottimizzatori
Definizione (loss e loss empirica). La loss è il costo associato alla previsione quando il valore vero è . La loss empirica (detta anche funzione obiettivo, funzione di costo, rischio empirico) è la media sul dataset:
Esempio. Tre campioni con probabilità predette ed etichette : le perdite individuali sono , , e la loss empirica vale . Il primo campione, classificato male con alta confidenza, pesa da solo metà della perdita.
Formula (discesa del gradiente).
- Inizializza i pesi a caso, .
- Ripeti fino a convergenza: calcola e aggiorna .
- Restituisci .
Esempio (una sola variabile). , derivata , partenza , . Ogni passo è : , che tende a con che scende . Con invece il passo è : oscilla e diverge. Un troppo piccolo è lentissimo, troppo grande diverge: è l'iperparametro più importante.
Grafico interattivo: Learning rate troppo piccolo (η = 0,01): partendo da w = 0 i passi sono minuscoli (w = 0, 0,06, 0,119, 0,177)
Formula (mini-batch).
Esempio. MNIST: immagini, : iterazioni per epoca. Con validation_split=0.1 il training scende a e Keras mostra iterazioni ().
Teorema (regola della catena). Se e allora (Regole di derivazioneDerivate delle funzioni elementari e delle loro inverse (arcsin, arctan, settcosh...) e regole di calcolo: linearità, prodotto (Leibniz), quoziente, funzione composta (regola della catena), funzione inversa, f(x)^g(x).Regole di derivazione →). Con più variabili intermedie e si sommano i contributi di ciascun percorso: (Regola della catena in più variabiliSe x(t) è una curva derivabile e f è differenziabile in x(t₀), allora (f∘x)'(t₀) = ∇f(x(t₀))·x'(t₀) = Σ ∂ᵢf(x(t₀)) xᵢ'(t₀): la variazione di f lungo il moto è il gradiente per la velocità. Serve per derivare composte come f(2t, t²), per ricavare il gradiente da informazioni lungo curve, per le derivate di f(g(s,t)) e per provare che il gradiente è ortogonale alle curve di livello.Regola della catena in più variabili →, Matrice jacobiana e derivata delle funzioni compostePer F: Rn → Rm, F = (f1, …, fm), la matrice jacobiana JF è la matrice m × n con (JF)ij = ∂fi/∂xj: la riga i è il gradiente di fi. Regola della catena: J(f∘g)(x) = Jf(g(x)) · Jg(x); casi frequenti d/dt f(γ(t)) = ∇f(γ(t))·γ'(t) e ∂f/∂x = f_u u_x + f_v v_x. Se det JF(x0) ≠ 0, F è invertibile vicino a x0 e J(F⁻¹) = (JF)⁻¹. Coordinate polari: det J = ρ.Matrice jacobiana e derivata delle funzioni composte →).
Formula (backpropagation). Con e : ( = prodotto componente per componente.)
Formula (inizializzazioni).
- Glorot / Xavier (per tanh e sigmoide): (media tra la condizione in avanti e quella all'indietro ).
- He (per ReLU): . La ReLU azzera metà degli ingressi, dimezzando la varianza: si raddoppia per compensare.
Esempio. Strato : Xavier dà deviazione standard ; per uno strato ReLU He dà . Keras usa Glorot uniforme di default; con ReLU conviene kernel_initializer="he_normal".
Formula (batch normalization). (scala) e (traslazione) sono parametri appresi per ogni strato; evita la divisione per zero.
Esempio. Batch : , , quindi . Con , : . Al momento dell'inferenza media e varianza del batch non esistono: si usano medie mobili calcolate durante l'addestramento (Keras lo fa da solo).
Regolarizzazione delle reti neurali
Formula (regolarizzazione e ). Con forza della penalità:
Esempio. , (solo penalità), , . Con : per passo. Con : per passo, ma lo stesso passo vale per , che quindi in pochi passi arriva a .
Grafico interattivo: Le due penalità su un singolo peso: w² (ℓ2) è piatta vicino a 0 e ripida lontano, |w| (ℓ1) ha pendenza costante e un angolo in 0
Definizione (early stopping). Si monitora una metrica di validazione (
monitor, tipicamenteval_loss). Se non migliora perpatienceepoche consecutive l'addestramento si interrompe; conrestore_best_weights=Truesi ripristinano i pesi dell'epoca migliore.
Definizione (dropout). Durante l'addestramento, a ogni passo e per ogni neurone di uno strato, con probabilità (la rate) l'uscita viene posta a . Gli altri neuroni sono riscalati per . In inferenza il dropout è spento e si usano tutti i neuroni.
Esempio. Attivazioni , , maschera estratta : l'uscita in training è . La riscalatura fa sì che il valore atteso (Valore attesoIl valore atteso E[X] = Σ x p_X(x) è la media dei valori di X pesata con le loro probabilità (esiste se la serie converge assolutamente); per una funzione g vale E[g(X)] = Σ g(x) p_X(x) senza trovare la legge di g(X), ed E è lineare: E[aX + bY + c] = aE[X] + bE[Y] + c.Valore atteso →) di ogni attivazione sia lo stesso con e senza dropout (la maschera vale con probabilità e con probabilità ): . Per questo in inferenza non serve correggere nulla (versione «inverted dropout» usata da Keras e PyTorch).
Reti neurali convolutive (CNN)
Definizione (convoluzione 2D discreta). Dati un'immagine e un filtro , Si moltiplicano elemento per elemento l'immagine e il filtro posizionato in e si sommano i risultati (una combinazione lineare locale).
Formula (dimensione dell'uscita). Con ingresso di lato , filtro di lato , padding , stride :
Esempio. , , , : . Con : (padding «same»: la dimensione si conserva). AlexNet: ingresso , filtro , stride : .
Formula (parametri di uno strato convolutivo). Con canali in ingresso e filtri : Ogni filtro ha pesi (si estende in profondità a tutti i canali) più un bias.
Autoencoder
Definizione (autoencoder). Un autoencoder è una rete deterministica addestrata con la backpropagation (Addestramento delle reti neurali - backpropagation e ottimizzatoriAddestrare una rete significa minimizzare la loss empirica $J(W)=\frac1n\sum_i\mathcal L(f(x^{(i)};W),y^{(i)})$ con la discesa del gradiente $W\leftarrow W-\eta,\partial J/\partial W$; in pratica a mini-batch (SGD). Il gradiente di tutti i pesi si ottiene con la backpropagation, cioè la regola della catena applicata all'indietro: $\delta^{(L)}=\partial J/\partial a^{(L)}\odot g'(z^{(L)})$, $\delta^{(l)}=(W^{(l+1)\top}\delta^{(l+1)})\odot g'(z^{(l)})$, $\partial J/\partial W^{(l)}=\delta^{(l)}a^{(l-1)\top}$ (con sigmoide e cross-entropy $\delta=\hat y-y$). Per far funzionare reti profonde: attivazioni ReLU, inizializzazione di Xavier o He (varianza $2/(n_{in}+n_{out})$ e $2/n_{in}$), batch normalization, ottimizzatori con momento o adattivi (Momentum, AdaGrad, RMSProp, Adam con $\beta_1=0{,}9$, $\beta_2=0{,}999$, lr $10^{-3}$) e un learning rate che varia nel tempo (a gradini, coseno). Si addestra tenendo d'occhio la loss di training e di validazione.Addestramento delle reti neurali - backpropagation e ottimizzatori →) in cui l'uscita deve coincidere con l'ingresso. Per non imparare l'identità, il segnale passa per un collo di bottiglia (bottleneck, codice) di dimensione limitata.
- L'encoder mappa in una rappresentazione a bassa dimensione (il vettore latente);
- il decoder ricostruisce a partire da .
Formula (loss di ricostruzione). mediata sul training set; è l'errore quadratico (Prodotto scalare, norma e angoliIl prodotto scalare aggiunge a uno spazio vettoriale lunghezze e angoli: norma, disuguaglianza di Cauchy-Schwarz, angolo tra vettori in R^n, ortogonalità, proiezione su una retta, aree e volumi con il determinante della matrice dei prodotti scalari.Prodotto scalare, norma e angoli →). Se l'ingresso è binario o in si usa spesso la cross-entropy binaria per pixel.
Esempio (conteggio dei parametri). Autoencoder denso con ReLU (e sigmoide in uscita): ; ; ; ; in tutto parametri. Il codice ha numeri per rappresentare pixel: compressione di volte.
Formula (regola di decisione). Con e una soglia : normale se , anomalo se .
Esempio. Errori di ricostruzione sul training: media , deviazione standard , quindi . Cinque nuovi campioni hanno errori : sono anomali il quarto () e il quinto ().
Grafico interattivo: Densità schematiche dell'errore di ricostruzione: i dati normali stanno sotto la soglia θ = 0,027, le anomalie sopra
Formula (loss del VAE). Il primo termine è l'errore di ricostruzione; il secondo è la divergenza di Kullback-Leibler tra la distribuzione stimata e quella standard. Spesso il primo termine è moltiplicato per una costante che ne regola il peso.
Definizione (divergenza KL). Per due densità e , e vale se e solo se (disuguaglianza di Jensen, Disuguaglianze di Markov, Chebyshev e JensenMarkov: per X ≥ 0, P(X ≥ a) ≤ E[X]/a; Chebyshev: P(|X − μ| ≥ ε) ≤ Var(X)/ε²; Jensen: per φ convessa, φ(E[X]) ≤ E[φ(X)]. Stimano probabilità e medie conoscendo solo media e varianza.Disuguaglianze di Markov, Chebyshev e Jensen →). Misura quanto è diversa da (non è simmetrica).
Esempio. , : componente : ; componente : . .
Grafico interattivo: KL(N(μ,σ²) ‖ N(0,1)) al variare di σ con μ = 0: minimo 0 in σ = 1; con μ ≠ 0 si aggiunge μ²/2
Formula (reparametrization trick). (nelle slide con e prodotti dall'encoder).
Esempio. , , estratto: .
Cenni a reinforcement learning e reti per sequenze
Definizione (reinforcement learning, RL). Area del ML e paradigma di apprendimento che si occupa di imparare a controllare un sistema (con molti elementi sconosciuti) interagendo con esso, per massimizzare una misura numerica di prestazione. I dati si raccolgono durante l'interazione con l'ambiente.
Esempio (dal film «Ricomincio da capo»). Phil, intrappolato in un ciclo temporale, è l'agente; le azioni sono comportarsi in vari modi (gentile, divertente...) a partire da stati diversi (al ristorante, al parco); l'ambiente è la città con i suoi abitanti; iterando raccoglie dati e impara come massimizzare la ricompensa (far innamorare Rita).
Formula (obiettivo del RL). Si cerca la politica ottima . A differenza del ML supervisionato, dove si minimizza una loss, qui si massimizza il ritorno.
8. Fairness ed explainability
Fairness nel machine learning
Definizione (fairness). Nell'AI/ML, assenza di bias, discriminazione o favoritismo nei confronti di individui o gruppi nei risultati, nelle decisioni e nei processi del sistema. Le decisioni non devono produrre esiti ingiusti o pregiudizievoli in base ad attributi sensibili come razza, genere, età, religione, stato socioeconomico.
Definizione (attributi sensibili o protetti). Caratteristiche degli individui sulle quali, per legge o per etica, il trattamento ingiusto va evitato (razza, etnia, genere, età, disabilità, religione, orientamento sessuale, nazionalità, stato civile, background socioeconomico). Sono «sensibili» perché storicamente alla base di disuguaglianze.
Definizione (fairness through unawareness). Un algoritmo è giusto se gli attributi protetti non sono usati esplicitamente nel processo decisionale: con . È apprezzata dai giuristi (il GDPR vieta di trattare categorie particolari di dati, salvo eccezioni): un sistema non può discriminare in base a un attributo che non vede.
Definizione (variabile proxy). Una variabile che non è sensibile ma è fortemente correlata a un attributo sensibile. Anche senza
race, il modello può ricostruirla dal proxy e discriminare lo stesso.
Formula (Demographic Parity, parità demografica). Usata dove un esito positivo è desiderabile per tutti (selezione del personale, prestiti): la previsione dovrebbe essere indipendente dall'attributo sensibile, cioè la probabilità di un esito positivo uguale nei gruppi.
Formula (Equality of Opportunity, pari opportunità). Usata quando l'esito deve poter dipendere dal gruppo (in medicina la frequenza di certe patologie dipende da sesso o etnia): non si chiede lo stesso tasso di esiti positivi ma lo stesso tasso di veri positivi (TPR, Metriche di classificazioneIn classificazione binaria ogni previsione è vero positivo (TP), vero negativo (TN), falso positivo (FP, errore di tipo I) o falso negativo (FN, errore di tipo II). Da queste quattro quantità: accuracy $=\frac{TP+TN}{TP+TN+FP+FN}$, specificità $=\frac{TN}{TN+FP}$, precision $=\frac{TP}{TP+FP}$, recall $=\frac{TP}{TP+FN}$, e la loro media armonica $F_1=\frac{2PR}{P+R}$. Con dati sbilanciati l'accuracy inganna (un modello che predice sempre la classe maggioritaria ha 99%): si usano precision, recall, F1, ROC-AUC, la cross-validation stratificata e il riequilibrio con undersampling o oversampling (non SMOTE). Cambiando la soglia sulla probabilità si ottiene la curva ROC (TPR contro FPR) e l'area AUC. Approfondimento: non nel programma di Telecomunicazioni.Metriche di classificazione →), cioè la stessa probabilità di essere riconosciuto positivo tra chi lo è davvero.
Esempio. Gruppo : persone, con , previsione positiva per (di cui con ). Gruppo : persone, con , previsione positiva per (di cui con ). Allora e : . I TPR sono e : . Il gruppo è penalizzato sia nella quota di accettati sia nella probabilità di essere riconosciuto quando merita.
Explainable AI (XAI)
Definizione (interpretabilità). La scienza (o arte) di produrre descrizioni di un modello abbastanza semplici da essere comprese da un essere umano.
Definizione (spiegabilità). Interpretabilità più completezza: una spiegazione è completa quando permette di anticipare la previsione del modello.
Formula (Gini e Information Gain). Per un nodo con classi di probabilità : ; entropia . Lo split in due figli ha . La riduzione di impurità (Mean Decrease in Impurity, MDI) di uno split è
Esempio. Nodo con campioni, di classe A e di B: . Uno split manda campioni (tutti A) a sinistra, impurità , e (1 A e 4 B) a destra, . Pesata: e .
Grafico interattivo: Impurità di un nodo a due classi in funzione della frazione p di una classe: massima in p = 1/2 (nodo più misto), zero per nodi puri
Formula (importanza MDI, Gini importance). L'importanza di una feature è la somma delle riduzioni di impurità di tutti i nodi in cui essa è usata per lo split, pesate per la quota di campioni del nodo:
Definizione (permutation importance). Metodo post-hoc, agnostico, globale. Si valuta il modello (errore su un insieme di dati); poi si mescola a caso una feature su tutti i punti, rompendo il suo legame con il target, e si rivaluta. L'importanza è l'aumento dell'errore.
Esempio (slide). Cinque dati con , , etichette vere , predizioni originali : un errore su cinque, errore . Dopo aver mescolato le predizioni sono : differiscono dalle etichette in posizione e , errore . Dopo aver mescolato sono : sbagliate in posizione , errore . Importanza punti, punti: conta molto di più.
Definizione (PDP, grafico di dipendenza parziale). Effetto marginale medio di un sottoinsieme di feature (di solito una o due) sulla previsione, ottenuto marginalizzando le altre feature : Il PDP è la media delle curve ICE (valore atteso come media sui dati, Valore attesoIl valore atteso E[X] = Σ x p_X(x) è la media dei valori di X pesata con le loro probabilità (esiste se la serie converge assolutamente); per una funzione g vale E[g(X)] = Σ g(x) p_X(x) senza trovare la legge di g(X), ed E è lineare: E[aX + bY + c] = aE[X] + bE[Y] + c.Valore atteso →).
Esempio. e tre dati con . Per un valore fissato le tre ICE valgono e il PDP : la media nasconde che per un campione la pendenza è e per un altro . Il PDP si legge per capire se il legame è lineare, monotono o più complesso; con due feature si disegna una mappa di contorno (laboratorio: età e frequenza cardiaca massima).
Grafico interattivo: ICE e PDP per il modello f = x1 + x1·x2 con x2 ∈ {0,1,2}: le tre curve ICE (pendenze 1, 2, 3) hanno medie diverse, il PDP (pendenza 2) le riassume e nasconde l'eterogeneità
Definizione (LIME, Local Interpretable Model-agnostic Explanations). Spiega una singola previsione con un modello semplice che approssima il black-box vicino a quel punto.
Definizione (valore di Shapley, SHAP). Dalla teoria dei giochi cooperativi: la previsione è un «pagamento» da distribuire tra le feature («giocatrici»). Il valore di Shapley della feature è la media del suo contributo marginale su tutti gli ordini in cui le feature possono essere aggiunte: con la previsione quando solo le feature in hanno il valore osservato e le altre un valore di riferimento (la media sul dataset di sfondo).
Esempio. , riferimento , istanza , . Valori di : , , , , , , , . Per : . Per : . Per : . Somma . Si noti che il prodotto è diviso a metà tra e (ma ottiene solo perché da solo non vale nulla, ).