
























































































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Riassunto di Statistical Learning completo e semplice con spiegazioni e grafici dettagliati.
Tipologia: Appunti
1 / 96
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!

























































































Viviamo in un mondo in cui vengono generati dati in quantità enormi: miliardi di pagine web, sensori, dispositivi digitali, e piattaforme che ogni secondo registrano attività, immagini, audio, transazioni. Questa “esplosione dei dati” è ciò che viene definito “Era dei Big Data”. Di fronte a un tale volume di informazioni, l’essere umano non è più in grado di analizzare tutto manualmente. Per questo nasce il machine learning.
di imparare automaticamente dai dati e individuare modelli utili per prendere decisioni o fare previsioni. La premessa di base del Machine Learning è l’uso di un insieme di osservazioni per scoprire un processo sottostante. L' obiettivo fondamentale del Machine Learning è duplice:
1. Imparare dai dati: Riuscire a comprendere e analizzare grandi quantità di dati complessi. 2. Prevedere o decidere: Utilizzare i modelli scoperti per fare previsioni su dati futuri o per aiutare nei processi decisionali in condizioni di incertezza. Lo Statistical Learning (SL) è uno dei campi di ricerca che si occupa di questo. Definizione (Statistical Learning): È il ramo del machine learning che usa tecniche statistiche per: capire le relazioni tra le variabili nei dati; prevedere un valore futuro partendo da osservazioni presenti; costruire modelli che funzionino bene anche su dati nuovi, non ancora osservati. In altre parole, lo Statistical Learning prende il machine learning e lo fonda sulla statistica matematica. Approcci all'analisi dei dati Nell'analisi dei dati, si distinguono tre principali approcci: 1. Approccio Non supervisionato (Unsupervised Learning): Analizza solo le variabili esplicative X (es. X₁ = età, X₂ = reddito) , senza alcuna variabile target Y da prevedere. L’obiettivo è individuare strutture, gruppi o relazioni interne ai dati (Clustering). È un approccio descrittivo ed esplorativo, utile quando non sappiamo ancora quale fenomeno specifico vogliamo spiegare o prevedere. 2. Approccio Supervisionato (Supervised Learning): Utilizza sia le variabili esplicative X sia una variabile target Y. Questo approccio è impiegato per spiegare le relazioni tra X e Y e per fare previsioni. La variabile Y può essere: Quantitativa e Continua (in questo caso si parla di Regressione ). Es. ( Y= Prezzo della casa) Discreta (in questo caso si parla di Classificazione ). La Y prende il nome di label , e sta a rappresentare delle etichette (Y = abbandona/non
abbandona) che rappresentano lo stato di una determinata unità statistica
apprendimento del modello
Il Framework dello Statistical Learning: L'Output Nel supervised learning partiamo da dati di input (X) e dalle loro etichette corrette (Y). Prediction Rule (Regola di Previsione) Ogni volta che abbiamo due variabili, X e Y, stiamo facendo previsione. Questo vale in due casi principali: Classificazione : Y è discreta (esempio: spam / non spam). Regressione : Y è continua (esempio: prezzo di una casa, fatturato, temperatura). In entrambi i casi, l’obiettivo è capire che relazione esiste tra X e Y. Assumendo che nella realtà esista una vera relazione tra X e Y, la indichiamo così:
Il problema è che non conosciamo la forma di f. Esempio intuitivo: Supponiamo di voler prevedere il prezzo di una casa. X = metri quadri Y = prezzo Nella realtà esiste una relazione tra metri quadri e prezzo. Quella relazione è f. Ma noi non sappiamo qual è la formula esatta. Non sappiamo se è lineare, curva, più complessa. Non conoscendo f, proponiamo una funzione h : X → Y. Dove h è la nostra approssimazione di f. L’obiettivo è che h(x) sia il più possibile simile a f(x). Più h si avvicina a f, migliori saranno le previsioni. Questa funzione h è anche chiamata predittore , ipotesi o classificatore. Il predittore (^) f^ (o h) viene stimato utilizzando i dati del training set. Lo scopo della regola di previsione è poter essere utilizzata per prevedere l'etichetta ( Y) di nuovi punti di dominio (^ X^0 ). Data-Generation Model (Modello di Generazione dei Dati) Si assume che le istanze ( X ) siano generate da una distribuzione di probabilità , che rappresenta l'ambiente. Questa distribuzione di probabilità è indicata con X o D. Questa assunzione è cruciale perché è l'ambiente (la distribuzione D ) a determinare l'errore che il classificatore commette. Misure di Successo: Come valutiamo se h è buona? Per valutare la bontà del modello (la sua aderenza alla vera funzione f ), si definiscono le misure di successo o accuratezza. L'obiettivo è misurare l'errore di un classificatore h. L'errore di h è definito come la probabilità che il modello non preveda l'etichetta corretta ( y = f ( x ) ) su un punto di dati casuale generato dalla distribuzione sottostante. Nel caso della regressione, un esempio molto comune è il Mean Squared Error (MSE) : misura quanto, in media, le nostre previsioni si discostano dai valori reali. Se
Perché stimiamo la funzione f? Come abbiamo detto, la funzione obiettivo f è sconosciuta. Stimiamo f per due scopi principali: Predizione Inferenza
di risposta Y. Formalmente, scriviamo: Y = f ( X )+ ε Dove: f(X) = la vera funzione (sconosciuta) che lega X a Y ε (epsilon) = errore casuale (rumore), cioè tutto ciò che non possiamo spiegare
regressione lineare, alberi decisionali, reti neurali, ecc. Perché lo facciamo? Per prevedere nuovi valori ( predizione ) o per capire come le variabili sono correlate ( inferenza ). Predizione La predizione è il caso in cui ci interessa sapere: “Dato un nuovo input, quanto vale Y?” Se produciamo una buona stima di f, con una varianza non troppo alta, possiamo fare previsioni accurate della variabile Y per un nuovo valore^ X^0. Possiamo prevedere Y usando: Y^ ^ = f^ ( X
dove (^) f^ è la nostra stima della funzione f e ^ Y è la previsione risultante. Esempio: Se abbiamo due variabili X= Metratura e Y= Prezzo di una casa. Supponiamo che la nostra funzione stimata sia: (^) f^ ( X )= 2000⋅X. Arriva una nuova casa:^ X^0 =^80 mq^ e^ vogliamo stimare il prezzo. Possiamo stimare il prezzo Y usando la nostra funzione stimata (^) f^. Sostituiamo: Y^ ^ = 2000 ⋅ 80 Y^ =160.000 € Previsione: 160.000 € Inferenza Oltre alla predizione, potremmo essere interessati anche al tipo di relazione tra Y e le variabili X. Domande chiave: Quali predittori influenzano davvero la risposta? La relazione è positiva o negativa? È una relazione lineare o più complessa? Esempio concreto: Marketing X = spesa in pubblicità online Y = vendite Domande tipiche di inferenza: Aumentare la spesa in pubblicità aumenta davvero le vendite? L’effetto è forte o debole? È lineare o cresce meno dopo una certa soglia? L’inferenza serve per capire, non per prevedere.
Come stimiamo f? In primo luogo, si assume di aver osservato un insieme di training data del tipo: (^ x^1 ,^ y^1 )^ ,(^ x^2 ,^ y^2 )^ ,...^ ,(^ x^ n ,^ y^ n ) Se ad esempio consideriamo x= ore di studio e y= voto esame, potremmo avere ad esempio: (2,18),(5,24),(8,28) Una volta che abbiamo i training data, dobbiamo scegliere un metodo di machine learning , per stimare 𝑓. Esistono due grandi approcci:
Metodi Paramatrici
avrà il modello. È come dire: “Voglio che la relazione tra X e Y sia una linea retta” oppure “Voglio che sia una curva di secondo grado”. Una volta scelta la forma, tutto quello che dobbiamo fare è trovare i parametri che la descrivono, per esempio i coefficienti β di una retta. Esempio: Regressione Lineare Supponiamo di assumere che la relazione sia lineare: f ( X )= β 0 + β 1 X Che equivale a scrivere y= mx+q o y= q+mx Dove: β 0 = intercetta (q) β 1 = coefficiente angolare (m) I β sono parametri Qui abbiamo deciso che la relazione è una retta. Il compito del modello è solo stimare i parametri^ β^0 e^ β^1. Metodi Non Parametrici I metodi non parametrici possono aumentare la flessibilità fino al punto di ottenere
porta a una maggiore complessità del modello. Non decidono in anticipo la forma della relazione. Non dicono: “La relazione deve essere una retta”. Piuttosto dicono: “Lasciamo che siano i dati a suggerire la forma”. Questo li rende molto più flessibili. Possono adattarsi a relazioni irregolari, curve complesse e cambiamenti non lineari. Più punti dati abbiamo, più questi metodi possono modellare la realtà in modo preciso. Ma c’è un rischio: se lasciamo al modello troppa libertà, potrebbe finire per passare esattamente attraverso ogni punto del training set. In pratica, “disegna una linea” che tocca tutti i dati, anche il rumore. Questo fenomeno si chiama overfitting e accade quando la flessibilità diventa eccessiva.
Complessità, Overfitting e Parsimonia Il modello non deve essere troppo attaccato al training set ma si deve cercare di lavorare bene per le osservazioni che al momento non sono disponibili. Ed è per questo che si vuole evitare l’overfitting. Per cui anche se lo scopo dell’apprendimento dai dati è la previsione è spesso possibile ottenere previsioni più accurate con un modello semplice anziché complicato. Ricapitolando: Modello piu flessibilie (cioè che può adattarsi a curve o cambiamenti non lineari) = modello piu complesso; dunque, l’Overfitting si verifica quando il
fluttuazioni casuali specifiche di quel campione.
troppo vincolato al campione di addestramento. Per evitare l'overfitting, si preferisce adottare il Principio del Rasoio di Occam (o principio di parsimonia): non complicare il modello oltre il necessario. Tra due modelli con prestazioni predittive simili, si preferisce quello più semplice (più parsimonioso), poiché questo favorisce l'interpretabilità dei parametri. Compromesso dell’algoritmo di apprendimento Ci sono due aspetti da considerare quando si progetta un algoritmo di apprendimento ovvero:
Sii il più robusto possibile , i risultati devono essere robusti e quindi il
Quindi il predittore che si è generato utilizzando i training data deve funzionare bene anche con i nuovi dati. Da un punto di vista metodologico, il discorso sul fitting e overfitting può essere dimostrato andando a studiare il comportamento del Means Squared Error (MSE) ovvero l’errore di previsione che si può commettere. Quando si adotta un approccio supervisionato si fa una previsione e pertanto si può commettere un errore,
Mean Squared Error (MSE): È la media dei quadrati delle differenze tra valori osservati e valori predetti.
Bias , ovvero la distorsione. È una misura di quanto è buono, in media, il predittore. Tende ad essere più piccolo nei modelli complicati perché tanto più è complesso il modello e tanto più si riesce a stare dietro alle caratteristiche del dato e quindi si riesce a migliorare il fit. Varianza è una misura dell’incertezza della previsione. Tende ad essere maggiore per i modelli più complessi
È vero che aumentando la complessità si riduce il bias ma questo comporta un aumento della varianza. Per cui, anche qui bisogna trovare un bilanciamento tra le due misure. Non si vuole un modello completamente distorto, che non c’entra nulla con i dati, ma allo stesso tempo non si vuole un modello che si vincoli troppo ai dati perché, quando poi si andrà a fare previsione aumenta l’incertezza essendo il modello legato ai dati e quando arriverà qualcosa di nuovo egli non sarà in grado di riconoscerlo.
Questo perché c’è una combinazione tra il bias e la varianza. Di fatti da una
una U. L'obiettivo è trovare il punto di minimo di questa curva a U, dove il Bias e la Varianza sono in un equilibrio ottimale, consentendo al modello di generalizzare bene sui nuovi dati senza cadere nell'overfitting.
Misurare la qualità del fit: esempio di regressione In questo esempio si hanno 10 punti (𝑋,𝑌) che rappresentano le osservazioni (che sono un campione della funzione) con un errore di misura, mentre la funzione seno è il dato vero che non si osserva. L’errore di misura lo si nota dal fatto che non tutti i punti sono sulla funzione. In questo caso la funzione sarebbe 𝑦 = sin𝑥 + 𝜀. In questo caso specifico le 10 osservazioni rappresentano il training set. Si ha una variabile dipendente, 𝑌, e una variabile indipendente 𝑋 che può assumere valori tra 0 e 1. Si nota come si hanno una serie di modelli e dei risultati che vengono fuori dalla loro applicazione. Questo grafico mostra che il modello 𝑦 =^ β^0 + 𝜀,^ β^0 è un intercetta e il fit è esattamente la costante che è rappresentata in rosso. Se il modello si complica e quindi abbiamo 𝑦 =^ β^0 +^ β^1 𝑥 + 𝜀 si sta usando una retta di regressione e quindi il fit è quello della retta di regressione che cercherà di passare fra tutte le infinite rette e prenderà quella che andrà a dare il miglior fit delle 10 osservazioni a disposizione. m=3 è la funzione di regressione polinomiale e quindi di un polinomio che eleva il regressore al cubo. Si avrà 𝑦 =^ β^0 +^ β^1 𝑥 +^ β^2 x^2 +^ β^3 x^3 +𝜀. In questo caso non si avrà più una retta ma si avrà una funzione che tende ad avere un andamento sinusoidale. Se si va avanti con l’idea del polinomio e quindi si aggiungono altri parametri elevando la 𝑥 alla quarta, alla quinta, alla sesta fino ad arrivare alla nona si nota come in questo caso si avrà un fit perfetto perché il polinomio di grado 9 è in grado di far si che i dati teorici (del modello) siano uguali a quelli osservati perché il modello fittato passa per tutti i punti.
Fase 1: specificazione del modello Tra tutti i possibili modelli che possiamo utilizzare per studiare la relazione tra le variabili si decide quindi di partire con un modello lineare. Possiamo trascrivere f(x) con la notazione matriciale x trasposto beta : Dove β è corrispondente al vettore di parametri di regressione. I regressori sono semplicemente le variabili x che vengono utilizzate per stimare la variabile dipendente y attraverso una relazione lineare, come y = β₀ + β₁x₁ + β₂x₂ + ... + βₙxₙ, dove β₀, β₁, β₂, ..., βₙ sono i coefficienti di regressione che rappresentano la relazione tra ciascun regressore (x) e la variabile dipendente (y). Ogni regressore è moltiplicato per il suo rispettivo coefficiente per determinare la sua influenza sulla variabile dipendente. Fase 2: stima dei parametri Abbiamo detto che uno degli obiettivi è quello di stimare la funzione 𝑓 e questo vuol dire studiare la relazione tra la 𝑦 e la 𝑥. Questa funzione è un’espressione analitica che è una combinazione lineare delle variabili. Di questa combinazione lineare si deve procedere alla stima dei parametri (𝛽) e questo lo si fa attraverso il Metodo OLS.
Il metodo OLS è il metodo più usato per stimare i parametri di un modello di regressione lineare. OLS significa Ordinary Least Squares , cioè Minimi Quadrati Ordinari. L’idea è molto semplice: Scegliamo i coefficienti della retta in modo da minimizzare la somma dei quadrati degli errori.
i = 1 n
2
i = 1 n
2 Ricordiamo che: Il Mean Squared Error sul training set è:
n
i = 1 n
2
OLS minimizza la RSS Minimizzare la RSS equivale a minimizzare il MSE. RSS: È la funzione che OLS minimizza MSE: È una misura di performance Naturalmente 𝑓(𝑥) non la si conosce e quindi si possono fare due errori:
vera relazione potrebbe essere: non lineare, polinomiale, logaritmica, oppure molto più complessa.
questa stima dipende dal campione osservato. Se prendessimo un altro campione, otterremmo un valore diverso. Quindi, introduciamo una seconda fonte di variabilità quella dovuta al fatto che
Per rendere la stima “buona”, si cerca di specificare il modello in modo tale che i residui rispettino le ipotesi classiche del Teorema di Gauss-Markov : media zero omoschedasticità assenza di autocorrelazione linearità nei parametri Se queste ipotesi sono soddisfatte, lo stimatore OLS è BLUE (Best Linear Unbiased Estimator).
Poiché l’obiettivo non è solo interpretare i coefficienti β , ma anche fare previsione, è necessario verificare la performance su dati non usati per la stima. In generale, si
usa per testare la validità del modello in termini di previsione. Cosa Succede Quando Il Modello Diventa Complesso Quando costruiamo un modello di regressione, l’obiettivo è fare buone previsioni. La qualità della previsione si misura attraverso il Mean Squared Error (MSE) , che può essere scritto in termini di valore atteso come: Questa quantità misura quanto, in media, la previsione si discosta dal valore reale. Si nota come il mean squared error ha tre ingredienti fondamentali: La varianza legata all’errore individuata da σ (^) ε 2 (sigma quadro epsilon) di cui non si riesce a tenere il controllo; La varianza legata al predittore e quindi al modello; La parte legata alla distorsione del modello che dice effettivamente quanto quel modello riesce a adattarsi ai dati. La minimizzazione di questa misura (dell’MSE) porta ad identificare il problema del Bias-variance trade-off. Quando aggiungiamo regressori ci sono due effetti: Effetto 1: Diminuisce il bias Il modello diventa più flessibile e si adatta meglio ai dati. → Migliora il fit sul training set → L’MSE_train diminuisce Effetto 2: Aumenta la varianza Il modello diventa più instabile: I coefficienti possono cambiare molto se cambia il campione Il modello diventa più sensibile al rumore → L’MSE_test può aumentare Aggiungere più regressori vuol dire aumentare la complessità del modello e di conseguenza aumentare la probabilità di avere problemi di multicollinearità ; questo perché se si aggiungono più regressori è possibile che molti di questi regressori tendano ad inserire nel modello informazioni ridondanti. Quando c’è correlazione tra le 𝑥 si crea il problema di ridondanza che porta a non riuscire ad interpretare bene i coefficienti del modello di regressione perché, se due variabili tendono a dare la stessa informazione non si riesce a distinguere bene qual è il significato dei 𝛽. Ad esempio, di β 1 e β 2 non si riesce a dare corretta interpretazione se x 1 e x (^2) tendono a dare la stessa informazione. Naturalmente una delle condizioni di base del teorema di Gauss-Markov è che le 𝒙 devono essere indipendenti tra di loro. Quindi bisogna calibrare il modello e fare in modo che, attraverso la fase di
stima, non dia dei coefficienti che possano risentire di problematiche di multicollinearità dovute alle scelte sulle variabili. MSE: Prediction Error Se dovessimo rappresentare graficamente l’andamento del MSE con le sue componenti abbiamo 3 funzioni: Linea blu: bias legato in funzione della complessità , all’inizio è alto in un modello poco complesso e man mano che aumenta la complessità il bias si riduce. Linea verde: contemporaneamente alla riduzione del bias e all’aumento della complessità del modello aumenta la varianza (instabilità) del modello. Linea rossa: la somma delle due componenti genera un MSE con un comportamento ad U. Nel caso in cui il bias è zero, il MSE dipenderà maggiormente dalla varianza dello stimatore. Nel nostro caso avere bias zero significa lavorare con un modello molto complesso. Bisogna trovare un buon compromesso tra varianza e bias del
del bias e della varianza per minimizzare il MSE. Per stabilizzare il modello in presenza di alta dimensionalità o multicollinearità, e per