Convessità, Jensen, minimi globali
Una funzione è convessa quando la corda che congiunge due punti del suo grafico sta sempre sopra il grafico stesso. Sembra un dettaglio geometrico minuto, e invece è la linea di confine fra l’ottimizzazione con garanzie e l’ottimizzazione senza. Da un lato la convessità promette una cosa preziosa: ogni minimo locale è anche globale, quindi basta scendere e si arriva alla risposta giusta. Dall’altro, le reti neurali profonde vivono dalla parte sbagliata di quel confine — le loro loss non sono convesse — eppure si addestrano. Questo capitolo costruisce la convessità da zero, dimostra il teorema del minimo globale, presenta la disuguaglianza di Jensen e le sue conseguenze, lega la forte convessità alla velocità della discesa del gradiente, e affronta la tensione centrale: perché la non-convessità, in alta dimensione, fa molta meno paura di quanto la nostra intuizione suggerisca.
Perché questo capitolo
Sezione intitolata “Perché questo capitolo”Immagina di lasciar cadere una biglia in una scodella. Dovunque la lasci, rotola al fondo. Non c’è modo di sbagliare: il fondo è uno solo, e ogni traiettoria in discesa ci porta. Ora immagina di lasciarla su una catena montuosa. La biglia si ferma nella prima conca che incontra — che può essere un avvallamento poco profondo a mezza costa, lontanissimo dal vero punto più basso. Dove finisce dipende da dove l’hai lasciata.
Questa è, in una metafora, tutta la differenza fra un problema di ottimizzazione convesso e uno non convesso. E l’ottimizzazione è il cuore del machine learning: addestrare un modello significa trovare i parametri che minimizzano una funzione di perdita. Se quella funzione è una scodella, il lavoro è fatto: si sceglie un algoritmo di discesa, si parte da un punto qualunque, si arriva alla soluzione. Se è una catena montuosa, niente è garantito.
Per decenni il machine learning ha vissuto, per scelta, nella scodella. La regressione lineare, la regressione logistica, le support vector machine, il lasso: sono tutti problemi convessi, e la loro popolarità storica dipende in gran parte da questo. Erano modelli di cui ci si poteva fidare, perché la matematica garantiva che la soluzione trovata fosse la soluzione.
C’è una seconda ragione, meno legata all’ottimizzazione, per cui la convessità merita un capitolo: la disuguaglianza di Jensen. È una conseguenza diretta della convessità che lega medie e funzioni non lineari, e compare in punti del machine learning che a prima vista non hanno nulla a che fare con la geometria delle scodelle — la derivazione dell’ELBO nei modelli generativi, la dimostrazione che la divergenza di Kullback-Leibler è non negativa, il confronto fra media aritmetica e media geometrica. Ogni volta che in un conto si scambia l’ordine fra “fare una media” e “applicare una funzione”, c’è Jensen sotto. Conoscerla evita un’intera famiglia di errori di segno.
Poi è arrivato il deep learning, e ha fatto qualcosa che sulla carta non avrebbe dovuto funzionare: ha portato l’ottimizzazione sulla catena montuosa. La loss di una rete neurale, vista come funzione dei suoi pesi, non è convessa — non lo è nemmeno lontanamente. Eppure la discesa del gradiente stocastica la addestra, e bene. Capire perché non sia una contraddizione — perché la non-convessità in milioni di dimensioni sia un nemico molto più gestibile della catena montuosa bidimensionale che ci immaginiamo — è una delle lezioni più istruttive della matematica dietro l’AI moderna. Chi salta questo capitolo continua a vedere il training come una scatola nera fortunata. Chi lo legge capisce dove stanno davvero le garanzie e dove finiscono.
Contesto
Sezione intitolata “Contesto”Questo capitolo è il quinto della Parte VI e poggia sui precedenti. Da Hessiana, curvatura, condizionamento arriva l’idea che la matrice delle derivate seconde misura la curvatura, e che il segno dei suoi autovalori dice se una funzione “curva verso l’alto” o “verso il basso” lungo ogni direzione: sarà la chiave della caratterizzazione di secondo ordine della convessità. Da Taylor come approssimazione locale arriva l’approssimazione lineare di una funzione attorno a un punto — la retta tangente, il piano tangente — che ritroveremo nella caratterizzazione di primo ordine.
La convessità come oggetto matematico ha una data di nascita precisa. Nel 1906 il matematico e ingegnere danese Johan Jensen (1859-1925) — un autodidatta che faceva matematica nel tempo libero mentre lavorava per una compagnia telefonica — pubblica sulla rivista Acta Mathematica il paper “Sur les fonctions convexes et les inégalités entre les valeurs moyennes” (“Sulle funzioni convesse e le disuguaglianze fra i valori medi”). In quel lavoro Jensen introduce il termine moderno di funzione convessa e dimostra la disuguaglianza che oggi porta il suo nome. Un caso particolare, ristretto alle funzioni due volte derivabili, era già stato dimostrato dal matematico tedesco Otto Hölder nel 1889; il merito di Jensen è la formulazione generale e la scelta del concetto giusto su cui costruirla.
La convex analysis come disciplina autonoma arriva più tardi. Il matematico tedesco Werner Fenchel, nelle sue lezioni del 1953 su insiemi e funzioni convesse, getta le basi moderne. Ma il testo che fonda davvero il campo è Convex Analysis (Princeton University Press, 1970) del matematico statunitense R. Tyrrell Rockafellar: un libro che sistematizza l’intera teoria e che resta, a oltre mezzo secolo di distanza, il riferimento canonico.
Nel grafo della wiki, questo capitolo è un nodo di passaggio. A monte stanno gli strumenti dell’analisi — derivate, gradiente, Hessiana, approssimazione di Taylor — e la convessità è il modo di metterli al servizio di una domanda precisa: quando un minimo trovato è davvero il minimo. A valle stanno l’ottimizzazione vera e propria (la discesa del gradiente, e più avanti l’ottimizzazione convessa e quella non convessa trattate nella Parte XIV) e i modelli di machine learning che su quell’ottimizzazione si reggono. La convessità è anche, storicamente, la linea che separa due epoche del machine learning: quella dei modelli convessi con garanzie e quella delle reti profonde senza garanzie ma con prestazioni superiori.
L’ordine del capitolo segue la costruzione del concetto. Prima gli insiemi convessi e le funzioni convesse, con la definizione della corda. Poi le tre caratterizzazioni equivalenti — corda, tangente, Hessiana — e le operazioni che preservano la convessità. Poi il teorema centrale, quello del minimo globale, con la sua dimostrazione. Poi la disuguaglianza di Jensen e le sue conseguenze. Poi la forte convessità e il suo legame con la velocità della discesa del gradiente. Infine la sezione più lunga: dove la convessità si rompe, e perché il deep learning prospera comunque al di là di quel confine.
L’intuizione, primo angolo: la scodella senza trabocchetti
Sezione intitolata “L’intuizione, primo angolo: la scodella senza trabocchetti”Riprendiamo la scodella e la catena montuosa, perché dentro quella metafora c’è quasi tutto.
Pensa al grafico di una funzione di due variabili come a un paesaggio: a ogni coppia di valori in ingresso corrisponde un’altezza. Minimizzare la funzione significa trovare il punto più basso del paesaggio. Se la funzione è convessa, il paesaggio è una scodella: una superficie che si incurva verso l’alto in ogni direzione, con un unico fondo (o, al più, un fondo piatto e connesso). Non esistono valli secondarie, non esistono conche locali in cui restare intrappolati, non esistono altopiani che separano due bacini. Una biglia lasciata cadere ovunque, seguendo semplicemente la pendenza in discesa, raggiunge il fondo.
Se la funzione non è convessa, il paesaggio è una catena montuosa: valli multiple a quote diverse, creste che le separano, conche poco profonde accanto a baratri. La biglia si ferma nella prima valle che incontra, e quale sia dipende interamente da dove l’hai lasciata.
Questa differenza ha una conseguenza operativa enorme. In un problema convesso il punto di partenza non conta per la qualità della soluzione: da qualunque punto si parta, scendendo si arriva allo stesso fondo. Conta solo per la velocità. In un problema non convesso il punto di partenza conta per entrambe: cambiarlo cambia la valle in cui si finisce. Per questo, fuori dal mondo convesso, si fanno restart multipli, ci si preoccupa dell’inizializzazione, si accetta che due addestramenti diano risultati diversi. Dentro il mondo convesso, niente di tutto questo serve.
C’è anche una conseguenza che riguarda la fiducia nel risultato. In un problema convesso, quando l’algoritmo si ferma, sai che si è fermato nel posto giusto: non devi chiederti se esista una soluzione migliore da qualche altra parte. Questa certezza ha un valore pratico spesso sottovalutato. Significa che il risultato è verificabile, riproducibile e difendibile: due persone che addestrano lo stesso modello convesso sugli stessi dati ottengono la stessa risposta, e possono discutere del modello senza dover discutere della procedura di addestramento. È una proprietà che la scienza apprezza e che, fuori dal mondo convesso, va abbandonata.
L’intuizione, secondo angolo: la media non inganna verso il basso
Sezione intitolata “L’intuizione, secondo angolo: la media non inganna verso il basso”C’è un secondo modo di guardare la convessità, che a prima vista sembra scollegato dal primo e invece è la stessa cosa vista da un altro lato.
Prendi due punti sul grafico di una funzione e congiungili con un segmento di retta — la corda. Se la funzione è convessa, quella corda sta sempre sopra il grafico, fra i due punti. Detto in altri termini: il valore della funzione in un punto intermedio è sempre minore o uguale alla media dei valori agli estremi.
Generalizziamo da due punti a molti. Se prendi diversi punti in ingresso e ne fai una media, e poi applichi una funzione convessa, ottieni qualcosa che non è mai più grande di quello che otterresti applicando la funzione a ciascun punto e poi facendo la media dei risultati. La convessità, in questa lettura, “premia la concentrazione e penalizza la dispersione”: più i tuoi punti di ingresso sono sparpagliati, più la media dei loro valori si alza rispetto al valore del punto medio.
Questo non è un fatto separato dalla scodella. È esattamente lo stesso fatto. La scodella si incurva verso l’alto proprio perché la corda sta sopra il grafico — sono due descrizioni della stessa proprietà. E la versione “della media” è il contenuto della disuguaglianza di Jensen, che incontreremo fra poco. Tieni a mente questo secondo angolo: è il ponte fra la convessità e la teoria della probabilità.
L’intuizione, terzo angolo: l’epigrafo unisce i due mondi
Sezione intitolata “L’intuizione, terzo angolo: l’epigrafo unisce i due mondi”Abbiamo parlato di insiemi convessi e di funzioni convesse come di due cose. C’è un oggetto che le unisce, e capirlo chiarisce perché la parola “convesso” sia la stessa in entrambi i casi.
Data una funzione , il suo epigrafo è la regione di spazio che sta sopra il grafico: tutti i punti che si trovano alla verticale del grafico, alla sua altezza o più in alto. Se immagini il grafico come il profilo di una valle, l’epigrafo è tutta l’aria sopra la valle.
Il fatto chiave: una funzione è convessa se e solo se il suo epigrafo è un insieme convesso. Verifichiamolo con l’intuizione. Se la funzione è a U, l’aria sopra la U è una regione piena, senza rientranze: prendi due punti qualsiasi in quell’aria e il segmento che li congiunge resta nell’aria. Insieme convesso. Se la funzione è a cupola, l’aria sopra la cupola ha una rientranza proprio in corrispondenza della gobba: un segmento fra due punti ai lati può passare sotto la gobba, cioè uscire dall’epigrafo. Insieme non convesso.
Questo terzo angolo non è un dettaglio decorativo. È il motivo per cui la teoria degli insiemi convessi e quella delle funzioni convesse sono la stessa teoria: ogni affermazione sulle funzioni convesse si traduce in un’affermazione sull’insieme convesso che è il loro epigrafo, e viceversa. È anche il modo in cui Rockafellar, nel 1970, ha unificato il campo.
La meccanica: definizioni e caratterizzazioni
Sezione intitolata “La meccanica: definizioni e caratterizzazioni”Ora il formalismo. Lo costruiamo un pezzo alla volta, e ogni simbolo viene spiegato alla prima apparizione.
Insieme convesso
Sezione intitolata “Insieme convesso”Prima delle funzioni vengono gli insiemi. Un insieme è convesso se, presi due punti qualsiasi e dentro , l’intero segmento che li congiunge resta dentro . In formula: per ogni e ogni numero compreso fra 0 e 1,
L’espressione descrive, al variare di da 0 a 1, tutti i punti del segmento da (quando ) a (quando ). In parole povere: la definizione dice che il segmento fra due punti dell’insieme non esce mai dall’insieme.
Sono convessi: un disco, un cubo pieno, un semispazio, l’intero spazio , l’insieme delle soluzioni di un sistema di disuguaglianze lineari (un poliedro). Non sono convessi: una corona circolare (un anello), una stella a cinque punte, l’unione di due dischi separati — in generale, qualunque insieme con un buco o una rientranza. L’idea geometrica è “pieno e senza concavità”: da ogni punto si vede ogni altro punto in linea retta, senza uscire.
Funzione convessa
Sezione intitolata “Funzione convessa”Una funzione , definita su un insieme convesso, è convessa se per ogni coppia di punti del dominio e ogni vale
Leggiamola pezzo per pezzo. A sinistra c’è il valore della funzione nel punto intermedio . A destra c’è la media pesata — con gli stessi pesi e — dei valori della funzione agli estremi: è esattamente l’altezza della corda sopra quel punto intermedio. La disuguaglianza dice che il grafico (sinistra) sta sotto la corda (destra). In parole povere: la funzione fa una conca verso l’alto, ha la forma di una U o di una scodella.
Tre varianti utili da fissare subito.
Se la disuguaglianza vale in forma stretta ( invece di ) per ogni e ogni interno a , la funzione è strettamente convessa: la corda sta strettamente sopra il grafico, tranne agli estremi dove necessariamente lo tocca.
Una funzione è concava se è convessa: la corda sta sotto il grafico, la forma è a cupola. Il logaritmo è concavo. Le funzioni , , sono convesse.
Una funzione affine, della forma , è al tempo stesso convessa e concava: la corda coincide esattamente con il grafico, quindi le disuguaglianze valgono entrambe (in forma non stretta).
Le tre caratterizzazioni equivalenti
Sezione intitolata “Le tre caratterizzazioni equivalenti”Per funzioni sufficientemente regolari, la convessità si può verificare in tre modi equivalenti. Non sono tre proprietà diverse: sono lo stesso fatto guardato a tre “ordini” di derivazione.
Ordine zero — la corda. È la definizione appena vista: la corda sta sopra il grafico. Non richiede che la funzione sia derivabile. È la versione più generale e si applica anche a funzioni con spigoli.
Primo ordine — la tangente. Se è derivabile, è convessa se e solo se il suo grafico sta sopra ogni sua tangente. In formula:
Qui è il gradiente di nel punto — il vettore delle derivate parziali, che indica direzione e ripidità di massima crescita. Il termine a destra, , è l’approssimazione lineare di centrata in : il piano tangente, lo stesso oggetto incontrato nel capitolo su Taylor. La disuguaglianza dice che questa approssimazione lineare è sempre una sottostima — la funzione vera non scende mai sotto la sua tangente.
Questa caratterizzazione ha una conseguenza che useremo subito. Se in un punto il gradiente è nullo, , allora la disuguaglianza diventa per ogni . Cioè: in un problema convesso, un punto a gradiente nullo è automaticamente un minimo globale. Tieni questo da parte: è il seme del teorema della prossima sezione.
Secondo ordine — la curvatura. Se è due volte derivabile, è convessa se e solo se la sua Hessiana — la matrice delle derivate seconde, introdotta in Hessiana, curvatura, condizionamento — è semidefinita positiva in ogni punto del dominio. In una sola dimensione questo si riduce a ovunque. In più dimensioni significa che tutti gli autovalori dell’Hessiana sono maggiori o uguali a zero in ogni punto.
L’interpretazione è diretta, e poggia su quanto già sai dal capitolo sull’Hessiana: un autovalore positivo significa che lungo la direzione corrispondente la funzione “curva verso l’alto”. Hessiana semidefinita positiva ovunque significa allora che la funzione non curva verso il basso in nessuna direzione e in nessun punto — esattamente la condizione della scodella.
Una precisazione che evita un errore comune. Se l’Hessiana è definita positiva (autovalori strettamente positivi), la funzione è strettamente convessa. Ma l’implicazione vale in un solo verso. La funzione è strettamente convessa, eppure nel punto la sua derivata seconda è esattamente zero. Quindi “Hessiana definita positiva” implica “strettamente convessa”, ma non viceversa. L’equivalenza pulita è quella fra “convessa” e “Hessiana semidefinita positiva”.
Operazioni che preservano la convessità
Sezione intitolata “Operazioni che preservano la convessità”Verificare la convessità con le tre caratterizzazioni è possibile ma laborioso, soprattutto in più variabili. Nella pratica si procede quasi sempre in un altro modo: si parte da un piccolo dizionario di funzioni convesse note e si combinano con operazioni che conservano la convessità. Se il risultato è costruito solo con quei mattoni e quelle operazioni, è convesso senza bisogno di calcolare nessuna Hessiana.
Le funzioni convesse di base più usate: ogni funzione affine , le potenze , e in generale con sui reali positivi, l’esponenziale , il valore assoluto e più in generale ogni norma, la funzione sui positivi.
Le operazioni che preservano la convessità — tutte dimostrabili dalla definizione con la corda — sono quattro principali.
La somma pesata non negativa: se e sono convesse e sono numeri non negativi, allora è convessa. È il motivo per cui aggiungere una penalità L2 (convessa) a una loss convessa lascia il problema convesso.
La composizione con una funzione affine: se è convessa, allora è convessa. Cambiare le coordinate in modo lineare non rovina la convessità.
Il massimo puntuale: se e sono convesse, allora la funzione che in ogni punto prende il maggiore dei due valori, , è convessa. Questo spiega perché la hinge loss delle SVM — definita proprio come un massimo fra zero e un termine affine — è convessa.
La composizione con una funzione non decrescente: se è convessa e non decrescente e è convessa, allora è convessa.
Manca, e in modo significativo, la composizione generica. Comporre due funzioni convesse non dà in generale una funzione convessa: è convessa, ma se la si compone con una funzione che non è non decrescente il risultato può perdere la convessità. È esattamente questo il punto da cui parte la sezione sul deep learning: una rete neurale è una catena di composizioni, e la composizione è proprio l’operazione che la convessità non sopravvive.
Forte convessità
Sezione intitolata “Forte convessità”C’è un grado di convessità più forte, che servirà quando parleremo di velocità. Una funzione è fortemente convessa con parametro se la funzione è ancora convessa. In termini di Hessiana, equivale a chiedere che tutti gli autovalori siano maggiori o uguali a (un numero positivo) in ogni punto.
L’interpretazione: una funzione fortemente convessa cresce almeno quanto una parabola di curvatura . Non si limita a incurvarsi verso l’alto: lo fa con una curvatura minima garantita, e non può mai appiattirsi del tutto.
Si forma così una gerarchia di tre livelli. Una funzione convessa non curva verso il basso. Una strettamente convessa curva verso l’alto, ma magari in modo debolissimo. Una fortemente convessa curva verso l’alto con una curvatura minima garantita ovunque. Esempi: è fortemente convessa con (la sua derivata seconda è costante e vale 2). è strettamente convessa ma non fortemente convessa, perché vicino allo zero la sua curvatura tende a zero e nessun positivo la limita dal basso. Una funzione affine è convessa ma non strettamente.
Perché distinguere tre livelli invece di accontentarsi di “convessa”? Perché ciascuno garantisce qualcosa di diverso. La convessità semplice garantisce che ogni minimo è globale. La convessità stretta garantisce in più che il minimo è unico — niente fondo piatto. La convessità forte garantisce, oltre a tutto questo, che la discesa del gradiente converge in fretta, con il ritmo geometrico che vedremo. Tre livelli, tre garanzie crescenti: è una scala che vale la pena tenere a mente, perché in pratica si sceglie spesso di “comprare” un livello più alto — per esempio aggiungendo una penalità che rende il problema fortemente convesso — quando serve la garanzia corrispondente.
Un caso multivariato concreto
Sezione intitolata “Un caso multivariato concreto”Le definizioni sopra valgono in qualsiasi numero di dimensioni, ma vale la pena vederne una all’opera in più di una variabile. Prendiamo la funzione di due variabili — la classica scodella paraboloidale. La sua Hessiana è la matrice con sulla diagonale e fuori: i suoi due autovalori sono entrambi , positivi. La funzione è quindi convessa, anzi fortemente convessa con , e ha un unico minimo globale nell’origine.
Cambiamo una sola cosa: . La sua Hessiana ha ora e sulla diagonale — un autovalore positivo e uno negativo. Non è semidefinita positiva, quindi la funzione non è convessa. E infatti il suo grafico è una sella: lungo l’asse è una scodella, lungo l’asse è una cupola rovesciata. L’origine è un punto critico (gradiente nullo) ma non è né minimo né massimo. È il punto di sella più semplice possibile, e in due variabili basta un solo segno sbagliato fra due autovalori per ottenerlo. Tieni a mente questo esempio: la sezione sul deep learning lo riprenderà su scala di milioni di autovalori.
Il teorema centrale: minimo locale = minimo globale
Sezione intitolata “Il teorema centrale: minimo locale = minimo globale”Ecco il risultato per cui la convessità conta in ottimizzazione, ed è anche il momento per essere precisi su una classe di affermazione: questo è un teorema, una relazione formalmente dimostrabile, non un’analogia o un’intuizione.
Enunciato. Sia una funzione convessa definita su un insieme convesso . Allora ogni minimo locale di su è anche un minimo globale. Se è strettamente convessa, il minimo globale è unico.
Un minimo locale è un punto che è il più basso del suo vicinato immediato; un minimo globale è il più basso in assoluto su tutto il dominio. In generale i due concetti sono diversi — una valle a mezza costa è un minimo locale ma non globale. Il teorema dice che, sotto convessità, la distinzione collassa.
Dimostrazione (per assurdo). Supponiamo che sia un minimo locale ma non globale. Allora esiste un altro punto del dominio con . Consideriamo il segmento che congiunge a : poiché è convesso, quel segmento sta tutto dentro . Un punto generico del segmento, vicino a , ha la forma con prossimo a 1. Applichiamo la definizione di convessità:
Poiché , la media pesata a destra è strettamente minore di per ogni . Dunque, muovendosi da verso anche di pochissimo, il valore della funzione scende sotto . Ma allora non era un minimo locale — in ogni suo intorno, per quanto piccolo, esistono punti con valore più basso. Contraddizione. La sola ipotesi di convessità ha escluso l’esistenza di valli secondarie.
Perché conta per l’ottimizzazione. Questo teorema è il motivo per cui l’ottimizzazione convessa è “facile”. Non serve esplorare globalmente il paesaggio: basta scendere localmente. La discesa del gradiente, partita da un punto qualsiasi, raggiunge l’ottimo globale. Non servono restart multipli da inizializzazioni diverse, non c’è da preoccuparsi del seme casuale, ed esiste un test di ottimalità semplice ed esatto — gradiente nullo. C’è di più: per i problemi convessi esiste una teoria della complessità matura, che dice in anticipo quante iterazioni servono per arrivare entro una tolleranza dall’ottimo. È un livello di garanzia che, fuori dal mondo convesso, semplicemente non esiste.
Vale la pena distinguere due cose che il teorema non dice. Primo: non dice che il minimo è unico. Una funzione convessa può avere un fondo piatto — un intero segmento, o una regione, di punti tutti al valore minimo. Il valore assoluto ristretto fa già questo, e una funzione costante è il caso estremo. L’unicità arriva solo con la convessità stretta: in quel caso il fondo è un punto solo. Secondo: il teorema non dice nulla sulla velocità con cui la discesa raggiunge quel minimo. Garantisce la destinazione, non i tempi di percorrenza. I tempi dipendono dalla curvatura, ed è il tema della sezione sulla forte convessità.
C’è anche un test pratico che il teorema rende affidabile. In un problema non convesso, trovare un punto a gradiente nullo non dice quasi nulla: potrebbe essere un minimo locale, un punto di sella, persino un massimo. In un problema convesso, invece, gradiente nullo significa minimo globale, senza ambiguità. La condizione di ottimalità diventa una verifica locale a costo trascurabile, e questo cambia il modo in cui si progettano e si fermano gli algoritmi.
La disuguaglianza di Jensen
Sezione intitolata “La disuguaglianza di Jensen”Torniamo al secondo angolo di intuizione — la media — e diamogli forma precisa. Storicamente, ricordiamo, la convessità è nata proprio attorno a questa disuguaglianza.
Enunciato
Sezione intitolata “Enunciato”Nella forma per somme finite, la disuguaglianza di Jensen estende la definizione di convessità da due punti a punti. Se è convessa e sono pesi non negativi che sommano a 1, allora
A sinistra la funzione applicata alla media pesata degli ingressi; a destra la media pesata dei valori della funzione. La disuguaglianza si dimostra per induzione a partire dal caso a due punti. La media pesata , con pesi non negativi che sommano a 1, si chiama combinazione convessa dei punti .
Nella forma probabilistica — quella che si incontra in machine learning — i pesi diventano probabilità e la somma diventa un valore atteso. Per una variabile aleatoria e una funzione convessa :
dove è il valore atteso di , cioè la sua media. In parole povere: la funzione del valore atteso non supera mai il valore atteso della funzione. Se è concava — come il logaritmo — la disuguaglianza si inverte: .
La quantità , che è sempre non negativa per convessa, si chiama gap di Jensen. Misura quanto la convessità “stira” la trasformazione, ed è tanto più grande quanto più la variabile è dispersa. Se è degenere — assume un solo valore con certezza — il gap è zero.
Condizione di uguaglianza
Sezione intitolata “Condizione di uguaglianza”L’uguaglianza in Jensen vale in due soli casi: quando è quasi certamente costante, oppure quando è affine sul supporto di (cioè sull’insieme dei valori che può assumere). In tutti gli altri casi — funzione strettamente convessa, variabile non degenere — la disuguaglianza è stretta.
La condizione di uguaglianza non è un dettaglio tecnico: è ciò che dà a Jensen il suo potere dimostrativo. Quando si usa Jensen per dimostrare che una certa quantità è non negativa — come si fa con la divergenza KL — la condizione di uguaglianza dice esattamente quando quella quantità tocca lo zero. Senza la condizione di uguaglianza si saprebbe solo che la KL è non negativa; con essa si sa che la KL è zero se e solo se le due distribuzioni coincidono. È quel “se e solo se” a rendere la cross-entropy una loss sensata: il suo minimo non è solo basso, è raggiunto esattamente nel punto giusto.
Perché la disuguaglianza è vera
Sezione intitolata “Perché la disuguaglianza è vera”Vale la pena vedere perché Jensen vale, almeno nel caso a due punti, perché la ragione è già tutta nella definizione di convessità e perché chiude il cerchio con i due angoli di intuizione iniziali. Per due punti e pesi , la disuguaglianza di Jensen è letteralmente la definizione di funzione convessa: . Il caso a punti si ottiene applicando ripetutamente quello a due punti — si raggruppano i primi punti in un unico baricentro e si applica di nuovo la disuguaglianza fra quel baricentro e l’ultimo punto. La forma probabilistica con il valore atteso è il passaggio al limite di questo procedimento, da somme finite a integrali.
Il messaggio: Jensen non è un teorema nuovo rispetto alla convessità, è la convessità stessa riscritta nel linguaggio delle medie e delle probabilità. Per questo è lo strumento naturale ogni volta che in un conto compare un valore atteso accanto a una funzione non lineare.
Tre conseguenze
Sezione intitolata “Tre conseguenze”Media aritmetica e media geometrica. Applichiamo Jensen al logaritmo, che è concavo. Per numeri positivi con pesi uguali , la versione concava della disuguaglianza dà
A sinistra c’è il logaritmo della media aritmetica; a destra il logaritmo della media geometrica. Poiché il logaritmo è una funzione crescente, l’ordine si conserva senza il logaritmo: la media aritmetica di numeri positivi è sempre maggiore o uguale alla loro media geometrica. La classica disuguaglianza AM-GM è dunque un corollario della concavità del logaritmo.
ELBO e inferenza variazionale. Quando si addestra un variational autoencoder (un modello generativo della famiglia degli autoencoder) o si fa inferenza bayesiana approssimata, si vuole massimizzare la log-verosimiglianza dei dati. Quella quantità in generale è intrattabile. La si riscrive come , dove è una variabile latente e è una distribuzione ausiliaria scelta da noi. Ora, poiché il logaritmo è concavo, la versione concava di Jensen permette di portare il logaritmo dentro l’attesa, abbassando il valore:
Il termine a destra è l’ELBO, l’Evidence Lower Bound: un limite inferiore alla log-verosimiglianza, questa volta calcolabile e ottimizzabile. È la concavità del logaritmo, attraverso Jensen, a trasformare una quantità intrattabile in un limite che si può massimizzare.
Non negatività della divergenza KL. Lo stesso meccanismo dimostra che la divergenza di Kullback-Leibler fra due distribuzioni di probabilità è sempre maggiore o uguale a zero, con uguaglianza solo quando le due distribuzioni coincidono. Questo è il fondamento del fatto che la cross-entropy, usata come funzione di perdita, ha il suo minimo esattamente quando il modello riproduce la distribuzione vera dei dati. La connessione con l’entropia è sviluppata in Entropia, cross-entropy, KL divergence.
Forte convessità e velocità della discesa del gradiente
Sezione intitolata “Forte convessità e velocità della discesa del gradiente”La convessità garantisce dove si arriva: l’ottimo globale. La forte convessità migliora drasticamente quanto in fretta ci si arriva. È un risultato che lega questo capitolo direttamente alla discesa del gradiente.
Premessa: una funzione si dice -liscia se il suo gradiente è Lipschitz con costante — concretamente, la curvatura non supera mai il valore in nessuna direzione. Per una funzione -liscia e convessa, la discesa del gradiente con passo fisso converge, ma il valore della perdita decresce con un ritmo dopo passi: per dimezzare l’errore servono via via sempre più iterazioni.
Se in aggiunta la funzione è fortemente convessa con parametro , la situazione cambia di natura. La convergenza diventa lineare (o geometrica): l’errore decresce come per un certo compreso fra 0 e 1. Concretamente, con un passo opportuno vale
dove è il valore minimo. Per scendere sotto una tolleranza bastano allora iterazioni — un salto di efficienza enorme rispetto al del caso solo liscio.
Il fattore che governa la velocità è il numero di condizionamento , il rapporto fra la curvatura massima e quella minima — lo stesso incontrato nel capitolo sull’Hessiana. Più è grande, più il si avvicina a 1 e più la discesa è lenta. Geometricamente: se è vicino a 1 le curve di livello della funzione sono quasi cerchi, e il gradiente punta dritto verso il minimo; se è grande le curve di livello sono ellissi schiacciate, e la discesa zigzaga lungo le pareti strette della valle, perdendo tempo. Questo è il motivo per cui tecniche come la normalizzazione, il precondizionamento e gli optimizer adattivi (Adam) sono utili: servono, in sostanza, a “rendere il problema più rotondo”, cioè ad abbassare .
Una conseguenza concreta: per i modelli convessi addestrati con discesa del gradiente, sapere se la loss è solo convessa o anche fortemente convessa cambia la previsione su quante iterazioni serviranno. Una regressione logistica regolarizzata con penalità L2 è fortemente convessa — il termine aggiunge curvatura garantita in ogni direzione — e converge linearmente. La stessa regressione logistica senza regolarizzazione può non essere fortemente convessa, e convergere più lentamente. È uno dei motivi, accanto al controllo dell’overfitting, per cui la regolarizzazione L2 è quasi sempre presente: migliora anche la velocità di addestramento.
Una proprietà imparentata, che farà da ponte verso la prossima sezione, è la condizione di Polyak-Łojasiewicz (PL):
In parole: ovunque il gradiente sia piccolo, anche la distanza dal valore ottimo deve essere piccola. La condizione PL è più debole della forte convessità — anzi, non richiede affatto che la funzione sia convessa — eppure basta da sola a garantire la convergenza lineare della discesa del gradiente. Conta perché molte reti neurali sovraparametrizzate la soddisfano localmente, pur non essendo convesse. È un appiglio tecnico che collega il mondo delle garanzie convesse al mondo, all’apparenza inospitale, del deep learning.
Dove si rompe: il deep learning non è convesso
Sezione intitolata “Dove si rompe: il deep learning non è convesso”Arriviamo alla tensione centrale del capitolo, e merita spazio. Tutto quanto detto finora dipinge la convessità come una proprietà preziosa e l’ottimizzazione convessa come terreno solido. Ma le reti neurali profonde — l’oggetto su cui poggia l’intera AI moderna — vivono al di fuori di questo terreno. E ci prosperano.
Prima di entrare nel dettaglio, una premessa per inquadrare la posta in gioco. Per circa due decenni, dagli anni Novanta alla fine degli anni 2000, una parte significativa della comunità del machine learning ha trattato la convessità quasi come un requisito. I metodi a kernel e le SVM erano apprezzati anche perché convessi; le reti neurali erano guardate con sospetto proprio perché non lo erano, e perché il loro addestramento sembrava un’arte fragile fatta di trucchi e fortuna. La scommessa del deep learning, vinta a partire dal 2012, è stata che la non-convessità si potesse pagare — e che il prezzo, in alta dimensione, fosse molto più basso del previsto. Questa sezione spiega perché quella scommessa era ragionevole.
Le loss delle reti neurali non sono convesse
Sezione intitolata “Le loss delle reti neurali non sono convesse”La funzione di perdita di una rete neurale, vista come funzione dei suoi pesi, è in generale fortemente non convessa. C’è una ragione strutturale che lo rende evidente in un colpo solo: le simmetrie di permutazione. In uno strato nascosto si possono scambiare due neuroni — insieme a tutti i loro pesi entranti e uscenti — e ottenere esattamente la stessa funzione, identico comportamento input-output. Questo significa che ogni configurazione ottima dei pesi viene replicata un numero combinatorio di volte, in punti diversi e lontani dello spazio dei pesi. Ma una funzione strettamente convessa ha un minimo unico. Una funzione con miliardi di minimi tutti equivalenti non può, per definizione, essere convessa. A questo si aggiungono la non-linearità delle funzioni di attivazione e la composizione di molti strati, che insieme generano un paesaggio fitto di curvatura di entrambi i segni.
Per il teorema della sezione precedente, questo ha una conseguenza netta: non c’è nessuna garanzia che la discesa del gradiente trovi il minimo globale della loss di una rete. E in effetti SGD non lo trova — quasi mai. Eppure le reti funzionano, generalizzano, raggiungono prestazioni che nessun modello convesso ha mai avvicinato. Come si concilia?
Perché in alta dimensione la non-convessità fa meno paura
Sezione intitolata “Perché in alta dimensione la non-convessità fa meno paura”L’errore sta nell’intuizione di partenza. Quando immaginiamo “non convesso” pensiamo alla catena montuosa bidimensionale: valli multiple, e la paura di restare intrappolati in quella sbagliata. Ma lo spazio dei pesi di una rete ha milioni o miliardi di dimensioni, e la geometria in dimensione altissima è qualitativamente diversa da quella che la nostra immaginazione, addestrata in due o tre dimensioni, ci suggerisce.
Il punto chiave riguarda i punti critici — i punti a gradiente nullo — e l’Hessiana calcolata lì. Un punto critico è un minimo locale solo se tutti gli autovalori della sua Hessiana sono positivi (la funzione curva verso l’alto in ogni direzione). È un punto di sella se alcuni autovalori sono positivi e altri negativi: la funzione sale lungo certe direzioni e scende lungo altre — la forma di una sella da cavallo. In 2 dimensioni, avere “tutti gli autovalori positivi” non è particolarmente difficile: ce ne sono solo due. Ma con un milione di autovalori, perché un punto critico sia un minimo locale il segno positivo deve “uscire” un milione di volte di fila. Statisticamente, ai livelli di perdita alta, è enormemente più probabile imbattersi in un punto di sella che in un minimo locale: i minimi locali con perdita alta sono esponenzialmente rari.
Questo è il risultato centrale di un paper molto citato, “Identifying and attacking the saddle point problem in high-dimensional non-convex optimization” di Yann Dauphin e colleghi (NeurIPS 2014), che porta argomenti convergenti da fisica statistica, teoria delle matrici aleatorie e teoria delle reti neurali. La conclusione: in alta dimensione il vero ostacolo dell’ottimizzazione non sono i minimi locali cattivi — quelli in cui si resterebbe bloccati per sempre, lontani dalla soluzione — ma i punti di sella e gli altopiani ad alta perdita che li circondano. E la differenza è cruciale: da un punto di sella si esce. Basta una componente di gradiente in una qualsiasi delle direzioni a curvatura negativa, e si ricomincia a scendere. La sella rallenta, non blocca. Questo richiama direttamente la discussione sui punti di sella in Hessiana, curvatura, condizionamento.
Il ruolo della sovraparametrizzazione
Sezione intitolata “Il ruolo della sovraparametrizzazione”C’è un secondo fattore, ed è quello che la statistica classica troverebbe più scandaloso. Le reti moderne sono sovraparametrizzate: hanno più parametri che esempi di addestramento. Per la statistica classica questa è la ricetta sicura dell’overfitting — un modello con così tanti gradi di libertà dovrebbe semplicemente memorizzare i dati e fallire su quelli nuovi.
Invece la sovraparametrizzazione cambia la geometria della loss in modo benevolo. Quando i parametri sono moltissimi, l’insieme dei minimi globali non è un punto isolato da centrare con precisione, ma una varietà connessa ad alta dimensione: un fondo valle esteso, quasi piatto, dove la perdita è prossima a zero. Trovare un punto qualunque di questo fondo è molto più facile che colpire un bersaglio isolato. È qui che rientra la condizione di Polyak-Łojasiewicz: si dimostra che reti sufficientemente larghe la soddisfano su gran parte dello spazio dei pesi attorno all’inizializzazione, e questo — anche in totale assenza di convessità — basta a garantire che la discesa del gradiente converga a perdita nulla. Studi sull’Hessiana durante il training confermano il quadro: emerge un’abbondanza di direzioni piatte, con la grande maggioranza degli autovalori vicini a zero, che rendono la discesa più indulgente.
Un’osservazione utile per fissare il quadro: questa è proprio l’inversione di un pregiudizio della statistica classica. Per la statistica tradizionale, un modello con molti più parametri che dati è destinato a memorizzare il rumore — è la definizione stessa di overfitting, e la curva del compromesso bias-varianza la prevede. Il deep learning sovraparametrizzato contraddice questa previsione su due fronti contemporaneamente: l’ottimizzazione, che dovrebbe essere intrattabile per via della non-convessità, diventa facile proprio grazie alla larghezza; e la generalizzazione, che dovrebbe crollare, regge. Il fenomeno della “double descent” — la perdita di test che, oltre la soglia di interpolazione, ricomincia a scendere invece di salire — è il nome empirico di questa sorpresa. Non è materia di questo capitolo, ma è il segnale che la convessità non è l’unica lente con cui leggere l’ottimizzazione moderna.
Il rumore di SGD come risorsa
Sezione intitolata “Il rumore di SGD come risorsa”Un terzo elemento è il rumore. La discesa del gradiente stocastica non calcola il gradiente esatto, ma una sua stima su un mini-batch casuale di dati. Questo introduce rumore a ogni passo. In un problema convesso il rumore è solo un costo: rallenta la convergenza, e va attenuato facendo decrescere il learning rate. In un problema non convesso, invece, lo stesso rumore diventa una risorsa: aiuta a sfuggire dai punti di sella e dai minimi locali stretti e poco profondi, perturbando la traiettoria proprio nelle direzioni a curvatura negativa lungo cui conviene scendere. C’è inoltre evidenza empirica che SGD tende a preferire i minimi piatti — ampi, a bassa curvatura — rispetto ai minimi stretti (sharp), e che i minimi piatti generalizzano meglio sui dati nuovi. La non-convessità, combinata con il rumore, non è soltanto un problema da tollerare: è parte del motivo per cui le reti generalizzano invece di limitarsi a memorizzare.
Un avvertimento, per non passare dall’eccesso di paura all’eccesso di ottimismo. Dire che la non-convessità in alta dimensione “fa meno paura” non significa che ogni problema non convesso si ottimizzi facilmente. Significa che i problemi non convessi con la struttura giusta — sovraparametrizzazione, larghezza sufficiente, una loss che soddisfa localmente la condizione di Polyak-Łojasiewicz — sono trattabili. Il deep learning ha avuto successo perché ha trovato, in parte per progettazione e in parte per fortuna, problemi non convessi con quella struttura. Cambiare architettura, ridurre la larghezza, scegliere male l’inizializzazione può riportare il problema in territorio difficile. La non-convessità benevola non è un dono universale: è una proprietà che certe classi di reti hanno e altre no.
Cosa resta vero della convessità
Sezione intitolata “Cosa resta vero della convessità”La morale di questa sezione non è “la convessità era inutile”. Tre cose restano solidamente vere.
Primo: i problemi convessi — regressione lineare, regressione logistica, SVM, lasso — continuano a risolversi con garanzie complete, e questo li rende ancora la scelta giusta ogni volta che bastano. Non c’è ragione di portare una rete profonda su un problema che una regressione logistica risolve in modo esatto e riproducibile.
Secondo: molte tecniche del deep learning servono, di fatto, a recuperare localmente proprietà tipo-convesse. La normalizzazione e gli optimizer adattivi migliorano il condizionamento. Alcune analisi teoriche del training — il regime del neural tangent kernel — mostrano che una rete sufficientemente larga, vicino all’inizializzazione, si comporta come un modello convesso.
Terzo: la teoria della convessità resta la lente con cui si capisce quando l’ottimizzazione è “sotto controllo” e quando non lo è. Sapere da che parte del confine ci si trova è il primo passo per leggere correttamente cosa fa un addestramento.
Esempio 1 — numerico: verificare la convessità di tre funzioni
Sezione intitolata “Esempio 1 — numerico: verificare la convessità di tre funzioni”Prendiamo . La derivata seconda è , positiva ovunque: la funzione è convessa, anzi fortemente convessa con . Verifichiamo con la corda. Fra i punti e del grafico, il punto medio in ascissa è ; l’altezza della corda lì è la media delle ordinate, ; il valore della funzione in è . Effettivamente : la corda sta sopra il grafico.
Prendiamo . La derivata seconda è , positiva per e negativa per . La funzione non è convessa su tutto : cambia segno di curvatura nell’origine. È convessa solo se la si restringe al semiasse .
Prendiamo . Non è derivabile nell’origine — ha uno spigolo — eppure è convessa: la corda fra due punti qualsiasi sta sempre sopra la V. Questo esempio mostra che la convessità non richiede derivabilità; la caratterizzazione di ordine zero, con la corda, è genuinamente più generale. Il valore assoluto non è strettamente convesso (sui due rami è affine) né fortemente convesso.
Esempio 2 — in codice: il test della corda
Sezione intitolata “Esempio 2 — in codice: il test della corda”La definizione di ordine zero si traduce in un test eseguibile: campiona coppie di punti, e per ciascuna verifica che il grafico nel punto intermedio stia sotto la corda.
import numpy as np
def e_convessa(f, dominio, campioni=200, tol=1e-9): """Test empirico: la corda deve stare sopra il grafico.""" a, b = dominio for _ in range(campioni): x, y = np.random.uniform(a, b, size=2) t = np.random.uniform(0, 1) punto_medio = t * x + (1 - t) * y valore_corda = t * f(x) + (1 - t) * f(y) if f(punto_medio) > valore_corda + tol: return False # corda sotto il grafico: non convessa return True
print(e_convessa(lambda x: x**2, (-5, 5))) # Trueprint(e_convessa(lambda x: np.abs(x), (-5, 5))) # Trueprint(e_convessa(lambda x: x**3, (-5, 5))) # Falseprint(e_convessa(lambda x: np.sin(x), (0, 6.28))) # FalseIl test è solo necessario, non sufficiente — campiona un numero finito di coppie e potrebbe non beccare la violazione — ma rende tangibile la definizione: la convessità è una proprietà verificabile coppia per coppia, senza derivate. Per il seno sull’intervallo il test restituisce False correttamente: il seno sale e scende, la sua curvatura cambia segno, e basta una coppia di punti a cavallo di un tratto concavo perché la corda finisca sotto il grafico. È istruttivo notare che nessun problema di ottimizzazione serio fa affidamento su un test campionario come questo: in pratica si dimostra la convessità per costruzione, usando il dizionario di funzioni di base e le operazioni che la preservano. Il test campionario serve solo a costruire l’intuizione.
Esempio 3 — scenario reale: regressione logistica contro rete neurale
Sezione intitolata “Esempio 3 — scenario reale: regressione logistica contro rete neurale”La regressione logistica, addestrata con la log-loss (la cross-entropy), è un problema convesso: la perdita è una funzione convessa dei pesi. La conseguenza pratica è concreta. Qualunque libreria, partendo da qualunque inizializzazione, converge alla stessa soluzione ottima. Non esiste il concetto di “seme fortunato”: due addestramenti danno lo stesso risultato. Per questo la regressione logistica è riproducibile e si presta a essere analizzata con precisione.
Ora prendiamo la stessa identica funzione di perdita — la cross-entropy, immutata — e usiamola per addestrare una rete neurale profonda. Smette di essere convessa. Non perché la cross-entropy sia cambiata, ma perché ora è composta con molti strati non lineari, e la composizione la trasforma in una funzione non convessa dei pesi della rete. La conseguenza pratica si ribalta: cambiare il seme di inizializzazione produce reti diverse, con perdite finali simili ma pesi diversi. Stessa loss, due mondi opposti: è la composizione con la rete a distruggere la convessità. Il contrasto fra questi due casi è anche il ponte verso i capitoli su regressione logistica e SVM (in preparazione).
Esempio 4 — numerico: il gap di Jensen con numeri concreti
Sezione intitolata “Esempio 4 — numerico: il gap di Jensen con numeri concreti”Mettiamo numeri sotto la disuguaglianza, per renderla tangibile. Sia una variabile che vale oppure , ciascuno con probabilità . Il suo valore atteso è .
Prendiamo la funzione convessa . Il lato sinistro di Jensen è . Il lato destro è . Effettivamente , e il gap di Jensen vale : non è zero, perché la variabile è dispersa e la funzione è strettamente convessa.
Ora rendiamo la variabile meno dispersa: sia uguale a oppure , sempre con probabilità , stesso valore atteso . Il lato sinistro resta . Il lato destro diventa , e il gap scende a . Concentrando la variabile attorno alla sua media, il gap si è ridotto. Se la variabile fosse degenere — sempre uguale a — il gap sarebbe esattamente zero. Il gap di Jensen, in questo senso, è un misuratore di dispersione visto attraverso la lente di una funzione convessa: per , il gap è addirittura esattamente la varianza di .
Esempio 5 — Jensen al lavoro: la media che inganna
Sezione intitolata “Esempio 5 — Jensen al lavoro: la media che inganna”Un investimento rende oppure con uguale probabilità, ogni anno. Il rendimento atteso annuo è zero — la media di e . Verrebbe da pensare che, in media, il capitale resti invariato. Non è così. Dopo due anni con un e un , il capitale è moltiplicato per : si è perso il 25%.
Cosa è successo. La funzione che lega i fattori di rendimento al capitale finale è convessa, e Jensen dice che la media dei risultati è peggiore del risultato della media. È esattamente la ragione per cui la media geometrica — quella che governa la crescita composta — è sempre minore o uguale alla media aritmetica. La dispersione, passata attraverso una trasformazione convessa, ha un costo. Lo stesso meccanismo, in machine learning, è ciò che rende il gap di Jensen una quantità da tenere d’occhio ogni volta che si scambia l’ordine fra una media e una funzione non lineare.
Lo stesso effetto, con il segno opposto, spiega un fenomeno noto in finanza come “volatility drag”: un portafoglio più volatile, a parità di rendimento medio aritmetico, cresce meno nel lungo periodo di uno più stabile. Non è un’opinione di mercato, è la disuguaglianza di Jensen applicata alla crescita composta. La convessità, qui, non è una metafora: è il meccanismo esatto che produce il risultato.
Applicazioni pratiche
Sezione intitolata “Applicazioni pratiche”Machine learning classico convesso. Regressione lineare ai minimi quadrati, regressione logistica, support vector machine con hinge loss, lasso e ridge sono tutti problemi di ottimizzazione convessa. La convessità è il motivo per cui questi modelli hanno soluzioni riproducibili, analizzabili e, in alcuni casi, in forma chiusa. Quando un problema si lascia risolvere così, è la scelta giusta proprio per la garanzia che porta con sé.
Diagnosi dell’addestramento. Sapere che la loss di una rete non è convessa cambia il modo di leggere le curve di training. Un plateau della perdita non significa “siamo all’ottimo”: molto più probabilmente significa “siamo vicini a un punto di sella, su un altopiano ad alta perdita”. Questa lettura spiega perché due addestramenti con seme diverso danno reti diverse, perché il warmup e lo scheduling del learning rate aiutano a uscire dalle zone piatte, perché il rumore di SGD non va visto solo come un disturbo.
Progettazione di loss e regolarizzatori. Aggiungere alla perdita un termine di regolarizzazione fortemente convesso — la penalità L2, cioè — rende il problema meglio condizionato e, nei modelli convessi, garantisce l’unicità della soluzione. È un caso in cui si “compra” forte convessità pagando un piccolo prezzo in bias.
Inferenza variazionale e modelli generativi. L’ELBO, che è il fondamento dell’addestramento dei variational autoencoder e di buona parte dell’inferenza bayesiana approssimata, è una conseguenza diretta della disuguaglianza di Jensen applicata alla concavità del logaritmo. Ogni volta che si massimizza un ELBO, si sta usando Jensen.
Scelta del modello quando il problema lo consente. C’è una decisione progettuale che la convessità informa direttamente. Di fronte a un problema di classificazione o regressione, la domanda “serve una rete profonda o basta un modello convesso?” non è solo una questione di prestazioni. Un modello convesso — regressione logistica, SVM lineare — porta con sé riproducibilità, interpretabilità relativa e una soluzione che non dipende dal seme. Su dati tabellari di dimensione moderata, dove un modello convesso raggiunge prestazioni vicine a quelle di una rete, la garanzia di convessità è spesso un argomento decisivo: il modello è più facile da validare, da spiegare a un revisore e da mantenere nel tempo. La convessità, in questo senso, non è solo una proprietà matematica ma un criterio di ingegneria.
Lettura corretta delle metriche di addestramento. Sapere che la loss di una rete è punteggiata di punti di sella, e non di minimi locali invalicabili, suggerisce le mosse giuste quando un training rallenta: aumentare temporaneamente il learning rate, cambiare optimizer, aggiungere rumore, anziché concludere frettolosamente che il modello ha raggiunto il suo limite. È l’opposto di quello che si farebbe in un problema convesso, dove un plateau è davvero la fine della corsa.
Dove si rompe
Sezione intitolata “Dove si rompe”Oltre alla grande tensione con il deep learning, già trattata, restano alcuni fraintendimenti e limiti più puntuali che vale la pena fissare.
“Convesso” non vuol dire “a forma di cupola”. Nel linguaggio comune “convesso” evoca una superficie che sporge in fuori — una cupola, una lente. In matematica una funzione convessa ha la forma a U, a scodella, non a cupola. La cupola è la funzione concava. L’origine della scelta terminologica: un insieme convesso è “pieno e senza rientranze”, e una funzione si dice convessa quando il suo epigrafo — la regione del piano che sta sopra il grafico — è un insieme convesso. L’epigrafo di una U è pieno; quello di una cupola ha una rientranza. Da lì il nome.
Hessiana definita positiva e stretta convessità non coincidono. Come visto, “Hessiana definita positiva ovunque” implica “strettamente convessa”, ma non vale il viceversa: è strettamente convessa con derivata seconda nulla nell’origine. L’unica equivalenza pulita è fra “convessa” e “Hessiana semidefinita positiva”.
Convessità e derivabilità sono indipendenti. Il valore assoluto è convesso ma non derivabile nell’origine. La definizione con la corda non fa alcun riferimento alle derivate; le caratterizzazioni di primo e secondo ordine sono comodità aggiuntive valide quando la funzione è regolare, non parte della definizione.
Il teorema del minimo globale richiede anche un dominio convesso. L’enunciato chiede due cose insieme: che sia convessa e che l’insieme su cui la si minimizza sia convesso. Se i vincoli del problema definiscono un insieme non convesso, anche una perfettamente convessa può avere minimi locali che non sono globali. La convessità della funzione, da sola, non basta.
Jensen ha un verso, ed è facile sbagliarlo. La disuguaglianza vale per convessa; per concava il verso si inverte. Poiché il logaritmo — la funzione più frequente in questi conti — è concavo, è un errore comune applicare la disuguaglianza nel verso sbagliato e arrivare, per esempio, a un ELBO con il segno invertito.
Non convesso non vuol dire intrattabile. È la lezione del deep learning, e va ripetuta perché contraddice l’intuizione: in alta dimensione, con sovraparametrizzazione, una loss non convessa è spesso perfettamente ottimizzabile. “Non convesso” non è sinonimo di “impossibile”. È sinonimo di “senza garanzia generale” — che è una cosa diversa, e molto meno spaventosa.
Convesso non vuol dire risolvibile in fretta. All’opposto del fraintendimento precedente: la convessità garantisce dove si arriva, non quando. Un problema convesso ma mal condizionato — con numero di condizionamento enorme — può richiedere un numero proibitivo di iterazioni di discesa del gradiente. Convesso significa “affrontabile con garanzie”, non “veloce”. La velocità è un’altra proprietà, governata dalla curvatura e dal condizionamento, non dalla convessità da sola.
La convessità si verifica per costruzione, non a occhio. Guardare il grafico di una funzione di una variabile e dire “sembra convessa” funziona in una dimensione. In più dimensioni l’occhio non basta, e calcolare gli autovalori dell’Hessiana in ogni punto è impraticabile. Il modo corretto è dimostrare la convessità per costruzione: partire da funzioni convesse note e combinarle solo con operazioni che la preservano. Una funzione “convessa a occhio” non è una funzione di cui ci si possa fidare.
Collegamenti
Sezione intitolata “Collegamenti”- Hessiana, curvatura, condizionamento — la caratterizzazione di secondo ordine si fonda sull’Hessiana semidefinita positiva; i punti di sella e il numero di condizionamento, centrali in questo capitolo, sono costruiti lì.
- Taylor come approssimazione locale — la caratterizzazione di primo ordine usa l’approssimazione lineare; la retta tangente come sottostima della funzione convessa è un’idea che viene da lì.
- discesa-gradiente (in preparazione) — la convessità garantisce dove arriva la discesa, la forte convessità quanto in fretta; il numero di condizionamento governa il ritmo.
- gradienti-intuito (in preparazione) — il gradiente nullo come test di ottimalità è esatto e globale solo nel caso convesso.
- ottimizzazione-non-convessa (in preparazione) — loss landscape, punti di sella e minimi locali approfonditi, il seguito naturale della sezione “Dove si rompe”.
- ottimizzazione-convessa-intro (in preparazione) — il quadro completo dell’ottimizzazione convessa applicata, con vincoli e dualità.
- Entropia, cross-entropy, KL divergence — Jensen dimostra che la divergenza KL è non negativa, da cui il minimo della cross-entropy.
- svm (in preparazione) — l’esempio canonico di problema di machine learning convesso, con la hinge loss.
- regressione-logistica (in preparazione) — log-loss convessa e soluzione unica, il contrasto con la rete neurale dell’Esempio 3.
- vae (in preparazione) — l’ELBO come applicazione diretta della disuguaglianza di Jensen.
Per andare oltre
Sezione intitolata “Per andare oltre”- Johan Jensen, “Sur les fonctions convexes et les inégalités entre les valeurs moyennes”, Acta Mathematica, 1906. Il paper fondativo: introduce il concetto di funzione convessa e dimostra la disuguaglianza. Lettura storica.
- Stephen Boyd, Lieven Vandenberghe, Convex Optimization, Cambridge University Press, 2004. Il testo di riferimento moderno, disponibile gratuitamente online: definizioni, le tre caratterizzazioni, operazioni che preservano la convessità, ottimalità globale.
- R. Tyrrell Rockafellar, Convex Analysis, Princeton University Press, 1970. Il libro che fonda la convex analysis come disciplina; impegnativo ma canonico.
- Y. Dauphin, R. Pascanu, C. Gulcehre et al., “Identifying and attacking the saddle point problem in high-dimensional non-convex optimization”, NeurIPS 2014 (arXiv:1406.2572). L’argomento centrale sul perché in alta dimensione i punti di sella, non i minimi locali, sono l’ostacolo vero.
- Ryan Tibshirani, note del corso Convex Optimization (10-725, Carnegie Mellon University). In particolare l’analisi di convergenza della discesa del gradiente: ritmo nel caso liscio, convergenza lineare nel caso fortemente convesso.
- Per il quadro intuitivo su perché il deep learning funzioni nonostante la non-convessità, le sintesi divulgative sui loss landscape sovraparametrizzati e sulla preferenza di SGD per i minimi piatti sono un buon punto di partenza prima di affrontare la letteratura tecnica.