






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
DATA ANALYTICS - COMPLETO DI TUTTE LE INFORMAZIONI
Tipologia: Dispense
1 / 10
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!







Il corso introduce i concetti fondamentali dell’informatica, partendo dalla CPU, che esegue le istruzioni, e dalle memorie, centrali o di massa, dove i dati vengono conservati. Un algoritmo è una sequenza finita di istruzioni per risolvere un problema, mentre un programma è la sua implementazione in un linguaggio come Python, che utilizzeremo per scrivere codice con strutture come diramazioni e iterazioni. La progettazione degli algoritmi richiede attenzione alla correttezza, cioè la capacità di risolvere sempre il problema, e all’efficienza, ovvero impiegare il minor tempo possibile. Esempi pratici includono algoritmi di ordinamento, calcolo di distanze, suggerimenti automatici e il Pagerank di Google. Questi strumenti sono ormai centrali nell’analisi dei dati, una disciplina chiave nell’attuale era dei dati, che nasce dalla crescente produzione e raccolta di dati da parte di utenti e sensori. La scienza dei dati si è sviluppata grazie alla diffusione delle tecnologie di raccolta, all’aumento della potenza computazionale e alle tecniche di apprendimento automatico. L’obiettivo è passare dal dato grezzo (simboli senza significato), all’informazione (dato interpretato) e infine alla conoscenza (comprensione reale). I dati possono essere strutturati (es. tabelle) o non strutturati (es. testi), con i secondi più frequenti ma anche più complessi da analizzare. Con il termine Big Data si indicano enormi quantità di dati con tre caratteristiche fondamentali: volume, velocità e varietà, a cui si aggiungono variabilità (flussi irregolari) e complessità (fonti eterogenee, errori, mancanze). L’analisi dei dati parte da questi dataset per identificare relazioni e costruire modelli che descrivano fenomeni reali, come la correlazione tra vendite e incentivi. Esempi di dataset includono archivi sportivi, cinematografici, musicali o linguistici, utili per estrarre informazioni sia immediate che più profonde. L’informatica fornisce strumenti e algoritmi, ma nella scienza dei dati intervengono anche matematica/statistica e la conoscenza del dominio. Mentre l’informatica cerca soluzioni generali, la scienza dei dati si concentra sulla realtà rappresentata nei dati, consapevole della loro imperfezione. Infine, Python è il linguaggio scelto per l’analisi grazie alla sua semplicità e ai numerosi moduli specifici. Può essere usato scrivendo codice sorgente o in modalità interattiva, come su piattaforme online tipo pythonanywhere.com. ALGORITMI PROBLEMI DEGLI ALGORITMI Gli algoritmi sono strumenti utilizzati per risolvere problemi trasformando dati in input in una soluzione finale (output) attraverso una sequenza finita di istruzioni. I problemi che possono essere affrontati con gli algoritmi si dividono principalmente in tre categorie: i problemi di decisione, dove si verifica se un insieme di dati possiede una determinata proprietà (come nel caso in cui si chiede se una sequenza di numeri è ordinata in modo crescente o decrescente); i problemi di ordinamento e ricerca, nei quali si devono riordinare i dati o trovare un elemento specifico e determinarne la posizione; e infine i problemi di ottimizzazione, che prevedono la massimizzazione o la minimizzazione di una funzione obiettivo per ottenere il miglior risultato possibile. VALUTAZIONE DELL’EFFICIENZA Una volta identificato il tipo di problema, è possibile progettare più algoritmi per risolverlo, ma occorre valutare quale sia il più efficiente. L’efficienza di un algoritmo si valuta confrontando il numero di operazioni di base necessarie per completarlo. Un esempio è la scelta tra due strategie per determinare il miglior giocatore tra otto: il torneo all’italiana, dove ogni giocatore affronta tutti gli altri, genera più partite ma permette di costruire una classifica completa, e l’eliminazione diretta, che richiede meno partite ma non consente di stabilire un ordine completo. La valutazione dell’e ffi cienza dipende quindi sia dal numero di operazioni richieste (come il numero di partite) sia dall’obiettivo dell’algoritmo. In alcuni casi, esistono dei limiti teorici minimi oltre i quali non è possibile migliorare ulteriormente l’efficienza, come accade nel caso in cui sia necessario almeno n-1 partite per determinare un vincitore. ORDINAMENTO E RICERCA L’algoritmo per determinare il vincitore di un torneo parte dalla necessità di trovare il punteggio massimo all’interno di un vettore non ordinato, operazione che richiede di confrontare ogni elemento e che quindi ha una complessità lineare, indicata come n. Poiché il tempo effettivo di esecuzione dipende da molti fattori esterni, per valutarne l’efficienza si utilizza un’analisi astratta chiamata complessità computazionale, basata sul comportamento dell’algoritmo nel caso peggiore e descritto tramite funzioni matematiche come n, n ² , 2 ⁿ , ecc. Le costanti moltiplicative vengono trascurate perché poco significative nel lungo termine. I problemi si dividono quindi in facili, risolvibili con algoritmi efficienti (polinomiali- come n o n²), e di ffi cili, per cui non esistono soluzioni efficienti conosciute. Un esempio di problema difficile è la suddivisione di un insieme in due sottogruppi con somma uguale, che richiede di esplorare tutte le combinazioni. Tra gli algoritmi fondamentali c’è Selection Sort, che ordina i dati selezionando il massimo residuo ad ogni passaggio. La sua complessità è n², rendendolo poco adatto a insiemi grandi: ordinare un milione di elementi può richiedere minuti anche su computer veloci. Più efficiente è l’approccio Divide et Impera, utilizzato da Merge Sort, che divide l’insieme in sottogruppi, li ordina e poi li riunisce. La sua complessità è n log ₂ n, molto più performante: su un milione di elementi impiega circa 0,02 secondi. L’ordinamento è utile anche per migliorare le prestazioni della ricerca. La ricerca sequenziale, che analizza gli elementi uno per uno, ha complessità n, mentre la ricerca binaria, molto più efficiente (log ₂ n), è applicabile solo su insiemi ordinati. Essa dimezza progressivamente lo spazio di ricerca confrontando il valore centrale con quello cercato. Per questo motivo, in caso di numerose ricerche, conviene ordinare una volta sola (es. con Merge Sort) e poi usare la ricerca binaria. In sintesi, scegliere l’algoritmo giusto è cruciale: la scansione lineare è sufficiente per trovare un massimo, per l’ordinamento è meglio usare Merge Sort rispetto a Selection Sort, e per la ricerca conviene applicare la binaria, ma solo dopo aver ordinato i dati. La complessità computazionale è lo strumento che ci guida verso le strategie più efficienti per risolvere problemi in modo ottimale. IL CALCOLO DELLE DISTANZE I grafi o reti sono strutture composte da due elementi fondamentali: i nodi, che possono rappresentare entità come persone, documenti o contenuti di una piattaforma, e gli archi, che rappresentano le relazioni binarie tra due nodi, come amicizie tra utenti o collegamenti ipertestuali tra pagine web. I grafi sono strumenti essenziali per modellare e analizzare reti complesse, e vengono usati in diversi ambiti per calcolare distanze, raggruppare elementi (clustering), o per operazioni di classificazione. Quando si analizzano i grafi, una delle operazioni principali è la ricerca del cammino, ovvero una sequenza di nodi collegati da archi attraverso cui ci si può spostare da un nodo di partenza a uno di arrivo. Un cammino valido deve rispettare alcune condizioni: i nodi devono essere adiacenti (cioè direttamente collegati da un arco) e devono essere distinti (non si torna indietro nello stesso nodo, a meno che non si stia cercando un ciclo), perché l’obiettivo è trovare il cammino più breve, sia in termini di numero di nodi attraversati sia, nel caso di grafi pesati, in base ai pesi assegnati agli archi, che rappresentano ad esempio costi, tempi o distanze. Se un grafo è pesato, ogni arco ha un valore numerico. Questo è utile per problemi pratici, come trovare il percorso più veloce su una mappa stradale o il modo più efficiente di connettere nodi. Se non sono presenti pesi, si possono assumere uguali per ogni arco (di solito pari a 1). Uno dei problemi più studiati è il commesso viaggiatore, che deve visitare tutti i nodi della rete nel minor tempo possibile. Per calcolare il cammino più breve da un nodo A a un nodo D in un grafo pesato, uno degli algoritmi più efficaci è l’algoritmo di Dijkstra. Questo algoritmo lavora assegnando a ogni nodo un’etichetta che rappresenta la distanza minima calcolata fino a quel punto: inizialmente, il nodo di partenza ha etichetta 0 (perché non serve spostarsi per essere su se stessi), mentre gli altri hanno valore infinito (non ancora raggiunti). L’algoritmo seleziona a ogni iterazione il nodo con l’etichetta temporanea più bassa e la rende definitiva, aggiornando poi le etichette dei nodi adiacenti se trova un percorso più breve. Si prosegue fino a rendere definitiva l’etichetta del nodo di arrivo.
RICERCA E PAGERANK - Algoritmi e motori di ricerca * Un’applicazione interessante dei grafi nel contesto del web è legata all’algoritmo PageRank, ideato da Google per determinare la rilevanza delle pagine web. Il web può essere visto come un grafo orientato in cui i nodi sono le pagine e gli archi sono i link ipertestuali. L’idea alla base del PageRank è che la rilevanza di una pagina web dipenda non tanto dal numero di link in entrata, ma dalla rilevanza delle pagine che la linkano. Se una pagina molto importante (secondo PageRank) rimanda a un’altra, trasmette parte della sua rilevanza. Questa trasmissione è proporzionale: se una pagina A ha 3 link uscenti, ogni link trasmette 1/3 della sua importanza alle rispettive pagine di destinazione. Il calcolo del PageRank è ricorsivo: la rilevanza di ogni pagina dipende da quella delle altre e viene calcolata attraverso un processo iterativo che si ferma quando i valori si stabilizzano (convergenza). Il PageRank, una volta calcolato, resta valido finché non cambia la struttura dei link del web. È indipendente dalle parole chiave digitate e riflette solo la struttura della rete. SISTEMI DI RACCOMANDAZIONE/SUGGERIMENTO I sistemi di raccomandazione sono software basati su algoritmi che suggeriscono agli utenti contenuti, prodotti o altri utenti in base a due principali fonti di informazioni: i contenuti stessi (come film o libri) e il comportamento degli utenti (ad esempio, ciò che hanno già visto o valutato). Questi sistemi sono fondamentali soprattutto in ambiti con cataloghi molto vasti, come le piattaforme di intrattenimento tipo Netflix, dove si cerca di migliorare l’interazione con l’utente attraverso suggerimenti automatici o ricerche mirate. Il modello tipico per rappresentare questi sistemi è GRAFO BIPARTITO (O DELLE VALUTAZIONI) formato da due insiemi di nodi distinti: gli utenti e i contenuti. I collegamenti tra questi nodi rappresentano le valutazioni date dagli utenti ai contenuti, che possono essere positive o negative. Tuttavia, non tutti gli utenti forniscono valutazioni, il che limita l’efficacia di questo approccio. Esistono due approcci principali ai sistemi di raccomandazione: il primo si basa sulla similarità dei contenuti, cioè se un utente apprezza un certo contenuto, gli si suggeriscono altri contenuti simili analizzandone le caratteristiche; questo metodo però richiede un’analisi approfondita e complessa dei contenuti, specialmente quando sono molti. Il secondo approccio, detto SELEZIONE COLLABORATIVA, non analizza i contenuti, ma sfrutta i pattern delle valutazioni degli utenti: due utenti che hanno valutato in modo simile molti contenuti probabilmente condividono gusti affini, quindi si può suggerire a uno i contenuti che l’altro ha apprezzato. Nel grafo bipartito, il vicinato di un utente è l’insieme dei contenuti che ha valutato, positivamente o negativamente. Per misurare la similarità tra utenti, le loro valutazioni vengono rappresentate con vettori in cui ogni elemento può essere 1 (valutazione positiva), -1 (negativa) o 0 (assenza di valutazione). La similarità tra due utenti si calcola sommando i prodotti delle loro valutazioni per ogni contenuto, dove 1×1 o -1×-1 indicano accordo (valore positivo), mentre 1 × -1 indica disaccordo (valore negativo). Per evitare che utenti con molte valutazioni abbiano un’influenza sproporzionata, la somma viene normalizzata dividendo per il numero di contenuti valutati da almeno uno dei due utenti, ottenendo così una misura di similarità compresa tra -1 e 1. Con questa matrice di similarità, che ha valori 1 sulla diagonale (perché ogni utente è perfettamente simile a sé stesso), si stima quanto un utente potrebbe apprezzare un contenuto che non ha ancora valutato calcolando una media pesata: si moltiplicano le valutazioni degli altri utenti per il loro grado di similarità con l’utente target, sommando il tutto e dividendo per la somma dei pesi assoluti. Questo permette di fare suggerimenti personalizzati basati su gusti simili. Infine, per migliorare la qualità delle raccomandazioni, si considerano anche fattori aggiuntivi come l’inclinazione di alcuni utenti a dare sempre valutazioni positive o negative, le caratteristiche intrinseche dei contenuti che possono essere generalmente apprezzati o meno, e le dinamiche temporali, cioè il fatto che i gusti cambiano nel tempo e quindi le valutazioni più vecchie dovrebbero pesare meno rispetto a quelle più recenti. METODO DEI FATTORI NASCOSTI Il metodo dei fattori nascosti rappresenta un’evoluzione dei sistemi di raccomandazione, basandosi sull’idea che dietro il giudizio di un utente su un contenuto ci siano motivazioni implicite, non osservabili direttamente ma determinanti nel processo di scelta. Questo approccio non si basa sulle valutazioni esplicite né sull’analisi del contenuto, bensì sull’individuazione di dimensioni latenti che influenzano le preferenze, come ad esempio il genere cinematografico, il paese di produzione o lo stile narrativo. L’obiettivo è quindi individuare numericamente il peso che tali fattori esercitano sulle valutazioni degli utenti. Per farlo si ipotizza l’esistenza di due tabelle: una che rappresenta il grado di interesse dell’utente verso ciascun fattore nascosto e una che indica la presenza di questi fattori nei contenuti. Poiché i valori di queste tabelle sono ignoti, inizialmente si attribuiscono valori casuali e si calcola una matrice stimata delle valutazioni, da confrontare con la matrice reale conosciuta solo parzialmente. La di ff erenza tra le due permette di calcolare un errore, misurato come radice dell’errore quadratico medio. Si procede poi con una riduzione iterativa dell’errore: si aggiorna ogni valore delle tabelle minimizzando la differenza tra le valutazioni reali e quelle stimate, finché il processo converge, cioè non produce più miglioramenti significativi. Ottenute le tabelle aggiornate si possono prevedere le valutazioni mancanti e quindi offrire suggerimenti personalizzati. Questo metodo è stato fondamentale nella Netflix Prize del 2006, dove l’utilizzo dei fattori nascosti ha portato a un miglioramento del 7% delle raccomandazioni e il team vincitore ha ottenuto oltre il 10% combinando più tecniche in un sistema ibrido. STATISTICA - ANALISI DEI DATI (CALCOLO DELLE PROBABILITÀ) STATISTICA E PROBABILITÀ Statistica e calcolo delle PROBABILITÀ sono discipline diverse ma complementari: la statistica si occupa di analizzare dati raccolti, con l’obiettivo di estrarre informazioni e descrivere fenomeni osservati, mentre il calcolo delle probabilità mira a prevedere eventi futuri, assegnando loro una probabilità numerica. All’interno della statistica, la STATISTICA DESCRITTIVA ha il compito di riassumere e rappresentare sinteticamente grandi quantità di dati, rendendo comprensibile l’andamento generale senza elencare ogni singolo valore. Quando si analizzano dati si fa riferimento a una popolazione, cioè l’insieme completo degli individui oggetto di studio, anche se spesso si lavora solo su un campione. I caratteri sono invece le proprietà o variabili misurate su ciascun individuo della popolazione, come età, voto, reddito, e rappresentano gli aspetti specifici su cui si basa l’analisi. Per associare ogni elemento della popolazione al valore del carattere, si usano le variabili statistiche, che mappano ciascun individuo a un valore numerico che rappresenta quella proprietà. TIPOLOGIE DI DATI Nel contesto dell’analisi dei dati, è importante distinguere tra dati strutturati e non strutturati. I dati STRUTTURATI sono organizzati secondo una struttura chiara e definita, ad esempio sotto forma di tabelle nei database, dove ogni colonna rappresenta una proprietà specifica (come lo Stato o il consumo di alcol). Questa organizzazione ne facilita l’analisi. Tuttavia, questi dati sono meno comuni rispetto ai dati NON STRUTTURATI, che invece non seguono uno schema preciso. I dati non strutturati includono contenuti testuali come post sui social media o articoli online. Per poterli analizzare, è necessario sottoporli a una fase di pre-elaborazione, che ha lo scopo di strutturarli. Questa fase può includere operazioni semplici, come contare la frequenza delle parole o rilevare caratteri speciali, oppure operazioni più complesse, come la classificazione semantica. I dati possono essere QUANTITATIVI o QUALITATIVI. I dati quantitativi sono numerici e consentono operazioni matematiche come somma o media, mentre i dati qualitativi descrivono categorie o proprietà non numeriche e si analizzano attraverso frequenze o appartenenze a gruppi. I dati quantitativi si dividono ulteriormente in discreti e continui. I primi sono contabili (es. numero di studenti), i secondi sono misurabili con precisione teoricamente infinita (es. temperatura, peso) e spesso vengono raggruppati in intervalli o classi. Esistono quattro livelli di misurazione dei dati, che si distinguono in base alle operazioni che si possono applicare e alla possibilità di definire misure sintetiche come il centro. Il livello nominale rappresenta categorie senza un ordine specifico (es. colori o continenti) e consente solo di verificare uguaglianze o differenze. L’unica misura del centro possibile è la moda, cioè il valore più frequente. Il livello ordinale introduce un ordine tra i dati (es. titoli di studio) ma non consente operazioni aritmetiche; la misura del centro associata è la mediana, che individua il valore centrale in un insieme ordinato. Il livello degli intervalli è il primo livello quantitativo: permette addizioni e
Per descrivere meglio la variabilità dei dati rispetto alla media, si introducono misure che tengono conto degli scarti quadratici, perché la semplice somma degli scarti rispetto alla media dà sempre zero. Elevando al quadrato gli scarti, si eliminano i segni negativi e si evita la compensazione. Per evitare questo effetto di compensazione, si elevano al quadrato gli scarti, rendendoli tutti positivi. Questo permette di ottenere una misura significativa della dispersione, poiché si tiene conto dell’intensità della deviazione di ogni valore rispetto al centro. Si osserva che la media aritmetica è anche il valore che minimizza la somma degli scarti quadratici, confermando il suo ruolo centrale nella descrizione dei dati. La prima misura basata sugli scarti quadratici è la VARIANZA, che quantifica la variabilità dei dati calcolando la media degli scarti quadratici. Si parte da un insieme di dati (x ₁ , x ₂ , …, x ₙ ), si calcola la media x̄, poi si sottrae ogni valore dalla media, si eleva il risultato al quadrato e si somma il tutto. Infine, questa somma viene divisa per il numero totale dei dati. La varianza esprime quanto i dati si allontanano, in media, dal valore centrale, ma il fatto che utilizzi scarti al quadrato fa sì che il suo valore sia in unità al quadrato rispetto ai dati originali. Per superare questa difficoltà, si introduce la DEVIAZIONE STANDARD, che è semplicemente la radice quadrata della varianza. Questo permette di tornare all’unità di misura originale, rendendo la dispersione più interpretabile. La deviazione standard è quindi una misura intuitiva di quanto i valori si discostano in media dalla media stessa, ed è molto usata in statistica descrittiva e inferenziale. La DISUGUAGLIANZA DI TCHEBYCHEV permette di stimare quanti dati si trovano in un certo intervallo centrato sulla media. È una proprietà generale che si può applicare a qualsiasi insieme di dati se si conoscono la media (m) e la deviazione standard (v). Definendo un intervallo [m - k·v, m + k·v], si sa che almeno la quota 1 - 1/k² dei dati è contenuta in quell’intervallo. Ad esempio, scegliendo k = 2, si garantisce che almeno il 75% dei dati si trova tra m - 2v e m + 2v. DISTRIBUZIONE NORMALE Alcuni fenomeni naturali e sociali generano dati che seguono una forma specifica chiamata distribuzione normale o distribuzione gaussiana. Questa distribuzione ha una forma a campana, detta curva di Gauss, nella quale la maggior parte dei valori si concentra intorno alla media. È caratterizzata da due elementi fondamentali: la simmetria rispetto alla media e la rarità di valori molto distanti da essa. Nella distribuzione normale infatti, i valori estremi esistono ma sono poco frequenti e comunque non si discostano in modo eccessivo dalla media. Esempi di fenomeni che tendono a seguire questo tipo di distribuzione sono l’altezza delle persone, il peso corporeo e l’aspettativa di vita. In tutti questi casi si osserva che la maggior parte degli individui ha valori vicini alla media e pochi si collocano agli estremi. Per analizzare la concentrazione dei dati intorno alla media, quando la distribuzione è normale, non si usa la disuguaglianza di Tchebychev ma una regola più precisa nota come regola empirica o regola del 68-95-99.7. Secondo questa regola, circa il 68% dei dati si trova entro un intervallo che va da media meno una deviazione standard a media più una deviazione standard. Circa il 95% si trova tra media meno due deviazioni standard e media più due deviazioni standard. Circa il 99.7% è compreso tra media meno tre deviazioni standard e media più tre deviazioni standard. Questa regola consente di stimare in modo rapido e affidabile la distribuzione dei dati quando il modello normale è valido. FREQUENZE La frequenza di una variabile statistica indica quanti dati assumono un certo valore esistono due tipi principali le frequenze assolute che rappresentano il numero di unità statistiche che assumono un certo valore e le frequenze relative che sono le frequenze assolute divise per il totale dei dati utili per confrontare insiemi di dati di dimensioni diverse Quando si confrontano più insiemi di dati (dataset) non basta analizzare solo un valore centrale come la media ma bisogna considerare anche la dispersione dei dati cioè quanto i dati si distribuiscono intorno al centro tuttavia la dispersione dipende dalla scala su cui si misurano i dati per confrontare correttamente la dispersione su scale diverse si usa il COEFFICIENTE DI VARIAZIONE definito come la deviazione standard divisa per la media questo valore è adimensionale e rende omogenee le misure di dispersione rispetto alla scala un coefficiente più basso significa che i dati sono più concentrati intorno alla media quindi la media è più rappresentativa Ad esempio supponiamo di conoscere la media degli stipendi di due gruppi e la rispettiva deviazione standard guardando solo la deviazione standard un gruppo come i tennisti può sembrare più variabile ma confrontando i coefficienti di variazione si può capire quale gruppo è effettivamente più disperso in modo proporzionale alla propria media. Per valutare LA POSIZIONE RELATIVA di un singolo dato rispetto al centro di un dataset si usa lo z-score o punteggio standardizzato che misura la distanza di un valore dalla media in unità di deviazione standard calcolato come il valore osservato meno la media diviso la deviazione standard lo z-score indica quanto un dato è vicino o lontano dalla media in modo standardizzato. Ad esempio un primo utente con 109 amicizie e media 110 avrà uno z-score di circa meno 0,037 quindi un valore vicino e leggermente sotto la media mentre un quarto utente con 202 amicizie e media 42,8 avrà uno z-score di circa più 2,132 valore molto superiore alla media circa due volte più distante rispetto alla distanza media la media degli z-score è sempre zero perché i valori positivi e negativi si compensano LO Z-SCORE è utile per confrontare dati provenienti da scale diverse come il numero di amici e il grado di felicità per individuare legami tra variabili in dataset diversi e per standardizzare valori per valutare la posizione relativa in modo uniforme Tuttavia lo z-score funziona bene con distribuzioni simmetriche e bilanciate dove i dati sono distribuiti in modo relativamente uniforme attorno alla media ma perde efficacia con distribuzioni sbilanciate o con valori anomali estremi come nelle distribuzioni di tipo power law ad esempio la distribuzione della ricchezza perché i valori troppo lontani dalla media alterano la standardizzazione rendendo difficile interpretare la posizione relativa correttamente. RELAZIONI TRA DATI Le relazioni tra dati indicano come due caratteri o variabili possono essere correlati ovvero legati tra loro attraverso un qualche tipo di associazione. È importante ricordare che misurare un legame tra dati non significa automaticamente stabilire una relazione di causa-effetto, ad esempio il fatto che chi fuma abbia più malattie non implica da solo che il fumo sia la causa diretta senza ulteriori prove. Per confrontare dati quantitativi e misurare i legami si utilizzano due principali misure la covarianza e la correlazione. La COVARIANZA misura quanto due variabili X e Y variano insieme rispetto ai loro valori medi Ex e Ey. Se la covarianza è positiva significa che le variabili variano in modo diretto cioè quando una aumenta anche l’altra tende ad aumentare, come nel caso della ricchezza e dell’aspettativa di vita. Se la covarianza è negativa indica una variazione inversa, cioè se una variabile aumenta l’altra tende a diminuire ad esempio più sigarette fumate corrispondono a un’aspettativa di vita minore. Quando la covarianza è vicina a zero non c’è un legame significativo e i dati sembrano distribuiti in modo casuale o simmetrico. La CORRELAZIONE serve a misurare più precisamente il grado e il tipo di associazione tra due dati possiamo avere una associazione positiva quando le due variabili aumentano o diminuiscono insieme come ricchezza e aspettativa di vita una associazione negativa come nel caso del fumo e aspettativa di vita oppure nessuna associazione quando le due variabili non mostrano alcun legame chiaro. I coefficienti di correlazione variano tra -1 e 1 dove 1 rappresenta la correlazione positiva perfetta -1 la correlazione negativa perfetta e 0 l’assenza di correlazione. L’INDICE DI CORRELAZIONE DI PEARSON è una misura basata sulla covarianza normalizzata dividendo la covarianza per il prodotto delle deviazioni standard di X e Y. Questo coefficiente valuta la forza di una possibile relazione lineare tra le variabili tuttavia ha dei limiti importanti: non rileva relazioni di tipo non lineare e soprattutto la correlazione non implica causalità quindi anche un coefficiente alto non dimostra che una variabile causi direttamente l’altra ma solo che c’è un’associazione misurabile.
Il concetto di CASUALITÀ fa riferimento a una relazione causa-effetto, in cui un cambiamento in una variabile provoca una variazione in un’altra. Quando esiste causalità tra due variabili, significa che intervenire sulla prima determina un effetto sulla seconda. Ad esempio, se aumentando il numero di ore di studio aumentano anche i voti, possiamo parlare di una relazione causale. Tuttavia, è fondamentale distinguere la causalità dalla correlazione: quest’ultima indica solo che due variabili si muovono insieme, ma non necessariamente che una sia la causa dell’altra. Un esempio riguarda l’uso quotidiano dello smartphone e i voti all’esame di data analytics. Se il coefficiente di correlazione è pari a -0.822374, questo indica una forte correlazione negativa: all’aumentare dell’uso dello smartphone i voti diminuiscono. Nonostante ciò, non possiamo concludere che l’uso del telefono sia la causa diretta dei voti più bassi, perché potrebbe esistere un’altra variabile latente, come le ore di sonno, che in realtà influenza entrambe le variabili osservate. In questo caso si parla di CORRELAZIONE SPURIA, cioè un’apparente relazione tra due variabili che in realtà dipendono da una terza variabile non considerata. I FATTORI DI CONFUSIONE sono quindi elementi che alterano la relazione tra due variabili e che devono essere tenuti in conto per non trarre conclusioni errate. Un esempio significativo è il PARADOSSO DI SIMPSON, che mostra come una relazione tra due variabili possa cambiare o invertirsi quando si considera una terza variabile. Questo accade, ad esempio, nei test A/B usati nel web design per misurare il tasso di conversione tra due versioni di una pagina. A prima vista, una versione può sembrare migliore, ma analizzando i dati per gruppi geografici può emergere un risultato opposto. Questo succede perché i gruppi di utenti non sono equamente distribuiti e la provenienza geografica, che influenza il comportamento, agisce come variabile di confusione. Quindi, una correlazione elevata non basta a dimostrare una relazione causale. È necessario condurre test statistici per verificare se i risultati osservati sono dovuti al caso o a un fenomeno reale. In questo contesto, è utile il COEFFICIENTE DI SPEARMAN, che valuta se i valori di due variabili mantengono lo stesso ordine crescente o decrescente. Questo è utile soprattutto quando le relazioni non sono lineari, poiché misura il legame attraverso i ranghi piuttosto che i valori assoluti. CALCOLO DELLE PROBABILITÀ PROCEDURA ED EVENTO Nel calcolo delle probabilità, si analizzano diversi aspetti fondamentali: definizioni, proprietà, approcci interpretativi (frequenza e bayesiano), probabilità condizionale, TEOREMA DI BAYES e variabili causali. Il concetto di procedura si riferisce a una sperimentazione che porta a un esito. Se l’esito è certo si parla di procedura deterministica (come il Teorema di Pitagora), altrimenti si ha una procedura non deterministica o casuale, come nel lancio di un dado. Un evento rappresenta un insieme di possibili esiti. Può essere elementare (un singolo esito), complementare (la negazione di un evento A, ovvero ciò che non è A), oppure composto (ottenuto con l’unione o l’intersezione di due eventi A e B). L’insieme di tutti i possibili esiti è detto spazio dei campioni, ad esempio nel lancio di due monete: TT, TC, CT, CC. Le probabilità si fondano su tre assiomi fondamentali: non negatività (nessuna probabilità può essere inferiore a zero), additività (la probabilità dell’unione di due eventi disgiunti è la somma delle loro probabilità), e norma (la probabilità dell’evento certo è uguale a 1). La probabilità di un evento si calcola come il rapporto tra il numero di casi favorevoli all’evento e il numero totale dei casi nello spazio dei campioni. Un concetto chiave è quello di EVENTO COMPLEMENTARE: la probabilità di un evento A si può ottenere anche come 1 meno la probabilità del suo complementare. Questo è utile per semplificare i calcoli. Ad esempio, nel lancio di due dadi, calcolare la probabilità di ottenere un risultato maggiore di 3 è più semplice trovando la probabilità del complementare (risultato minore o uguale a 3) e sottraendola da 1. Se le combinazioni che danno un totale ≤ 3 sono 3 su 36, la probabilità dell’evento cercato è 33/36. Un altro esempio riguarda una start-up che partecipa a due riunioni indipendenti per ricevere un finanziamento, con probabilità rispettivamente del 10% e del 20%. La probabilità di ottenere almeno un finanziamento si ottiene calcolando il complementare (cioè nessun finanziamento) e sottraendolo da 1. La probabilità di non ottenere alcun finanziamento è 0.9 * 0.8 = 0.72, quindi la probabilità di almeno un finanziamento è 1 - 0.72 = 0.28, ovvero il 28%. Nel caso di EVENTI COMPOSTI, ci si può chiedere la probabilità che si verifichino entrambi gli eventi A e B (intersezione) oppure almeno uno dei due (unione). Nell’intersezione, si contano i casi in cui entrambi gli eventi si verificano. Ad esempio, se si analizza un test medico su 100 persone e si vuole sapere quante persone hanno l’influenza (evento A) e risultano positive al test (evento B), l’intersezione rappresenta coloro che soddisfano entrambe le condizioni. Se questi sono 20 su 100, la probabilità è 20%. Per l’unione, cioè verificarsi di almeno uno dei due eventi, si sommano i casi in cui si verifica solo A, solo B, o entrambi. Se 10 persone hanno l’influenza ma non sono positive, 20 risultano positive ma non hanno l’influenza, e 20 hanno entrambe le condizioni, la probabilità dell’unione sarà 50%, poiché sono 50 persone su 100 coinvolte in almeno uno dei due eventi. REGOLE DEL CALCOLO DELLA PROBABILITÀ Nel calcolo delle probabilità esistono due regole fondamentali: la regola della somma e il principio di reciproca esclusività. La regola della SOMMA si applica al calcolo della probabilità dell’unione di due eventi A e B. Se vogliamo conoscere quanti elementi appartengono ad A ∪ B, dobbiamo sommare i casi di A e quelli di B, ma sottrarre l’intersezione (cioè gli elementi comuni), per evitare di contarli due volte. La formula è: |A ∪ B| = |A| + |B| - |A ∩ B|. Ad esempio, se 30 persone hanno l’influenza (evento A), 25 sono positive al test (evento B), e 20 rientrano in entrambi i gruppi, allora la probabilità dell’unione sarà: 30 + 25 - 20 = 35 persone. La RECIPROCA ESCLUSIVITÀ si verifica quando due eventi non possono accadere contemporaneamente. Sono mutuamente esclusivi. Se si verifica A, allora B è impossibile, e viceversa. In questo caso, la regola della somma si semplifica, poiché A ∩ B = ∅, cioè l’intersezione è vuota. Ad esempio, prendere 30 all’esame ed essere bocciato sono eventi che non possono coesistere, quindi la probabilità di A ∪ B sarà semplicemente: P(A ∪ B) = P(A) + P(B). APPROCCIO A FREQUENZA Quando non è possibile individuare lo spazio dei campioni né calcolare in modo diretto la probabilità, si ricorre a un approccio sperimentale, detto anche approccio a frequenza. In questo metodo la probabilità di un evento A viene stimata come il rapporto tra il numero di volte in cui si verifica A e il numero totale di ripetizioni della procedura. Questa stima è detta frequenza relativa ed è un modo per valutare la probabilità futura basandosi su dati passati. Ad esempio, per stimare TASSO DI RIPETIZIONE, ovvero quante volte gli utenti ritornano sul sito, si analizzano i file di log, che registrano le attività svolte dagli utenti. Se nell’ultimo mese ci sono stati 2441 visitatori totali e 783 visitatori ripetuti, la frequenza relativa sarà data da 783 diviso 2441. A giustificare questo approccio è la legge dei grandi numeri, secondo la quale, ripetendo molte volte un esperimento, la frequenza relativa osservata tende ad avvicinarsi alla probabilità reale. Un esempio classico è quello del lancio della moneta: aumentando il numero di lanci, la frequenza di “testa” si avvicinerà sempre più a 0,5, che rappresenta la probabilità teorica. PROBABILITÀ CONDIZIONALE La probabilità condizionale è fondamentale nelle applicazioni reali, perché permette di valutare un evento sapendo che un altro si è già verificato. Ad esempio, se un paziente risulta positivo a un test, vogliamo sapere qual è la probabilità che abbia davvero l’influenza. In questo caso si definiscono due eventi: A come “avere l’influenza” e B come “essere positivo al test”. La probabilità che il paziente abbia l’influenza dato che il test è positivo si scrive P(A|B) e si legge “la probabilità di A dato B”.
Quando dobbiamo analizzare le modalità per comunicare i dati, possiamo seguire due approcci principali: l’approccio verbale, in cui si spiega com’è strutturato il dataset, e l’approccio visuale, che utilizza grafici. L’obiettivo è comunicare tendenze, andamenti e possibili relazioni tra i dati. I grafici sono utili soprattutto in due momenti: nella fase iniziale di analisi esplorativa, per scoprire aspetti nascosti o errori e valori anomali, e nella fase finale, quando vogliamo comunicare i risultati in modo chiaro ed efficace. VISUALIZZAZIONE Quando visualizziamo i dati cerchiamo di fornire una rappresentazione sintetica. La rappresentazione grafica aiuta a comprendere meglio le caratteristiche dei dati, soprattutto quando le misure sintetiche non riescono a distinguere differenze tra insiemi diversi. Anche se le misure di sintesi possono far sembrare che i dati siano uguali o molto simili, la visualizzazione tramite grafici può mostrare differenze che altrimenti non emergerebbero. TIPOLOGIE DI GRAFICI Le tipologie di grafici comprendono diverse rappresentazioni utili a visualizzare e comunicare dati in modo chiaro e sintetico. I grafici a torta sono usati per rappresentare caratteri qualitativi e la distribuzione di frequenza: il grafico è suddiviso in settori, e l’area di ogni settore rappresenta la proporzione dei dati appartenenti a una certa categoria. I diagrammi a barre sono indicati per variabili categoriche, non quantitative, e servono sia nell’analisi di un singolo insieme di dati sia nel confronto tra insiemi diversi, mostrando la frequenza assoluta o la frequenza relativa, quest’ultima utile per evidenziare differenze e somiglianze tra categorie. Gli istogrammi rappresentano variabili quantitative suddivise in classi, con le frequenze assolute o relative per ciascuna classe; la scelta del numero e dell’ampiezza delle classi può variare a seconda della situazione, e non è necessario che le classi siano omogenee. Ad esempio, un’analisi della popolazione può suddividere i dati per etnia e genere mostrando che in un gruppo specifico, come quello asiatico, c’è una maggiore presenza di lavoratori. I grafici a dispersione mostrano la relazione tra due variabili rappresentando i valori di una sull’asse delle x e dell’altra sull’asse delle y; ogni punto corrisponde a un elemento del campione e l’obiettivo è individuare eventuali correlazioni, spesso misurate dal coefficiente di correlazione di Pearson, che valuta la correlazione lineare. I grafici a linee, composti da punti collegati da linee, illustrano l’evoluzione temporale di una variabile quantitativa, come vendite o iscrizioni, e sono utili per interpretare motivazioni di variazioni, ad esempio un aumento di vendite dovuto a incentivi; è fondamentale che la scala sull’asse delle x sia omogenea per una corretta interpretazione. I grafici box-plot sintetizzano la distribuzione dei dati mostrando la mediana (secondo quartile), il primo e il terzo quartile, racchiusi nella “scatola” che contiene circa il 50% dei dati, e i “baffi” che collegano ai valori estremi o rappresentano valori anomali (outlier); questi grafici permettono anche di confrontare più dataset. Infine, le mappe di dati considerano l’importanza dello spazio geografico, posizionando dati su mappe per analizzare somiglianze tra aree vicine, come nei risultati elettorali; talvolta la mappa viene modificata per riflettere meglio il peso numerico, come nel caso della rappresentazione del numero di grandi elettori, piuttosto che la fedeltà geografica. PRINCIPI DI VISUALIZZAZIONE Quando costruisco un grafico, devo seguire alcuni principi fondamentali per garantire una rappresentazione efficace e corretta dei dati. Il primo principio è massimizzare il rapporto data/inchiostro, cioè utilizzare la maggior parte dell’inchiostro del grafico per comunicare informazioni utili, evitando elementi estetici superflui che non aggiungono valore alla comprensione dei dati; ad esempio, i grafici bidimensionali sono spesso più chiari dei tridimensionali perché permettono di distinguere meglio le colonne o le informazioni rappresentate. Il secondo principio è minimizzare le falsificazioni, ovvero evitare che la rappresentazione alteri la percezione dei dati: ciò significa non fornire solo la media senza indicare la varianza, non usare linee senza punti che mostrino le osservazioni reali, non distorcere le scale e non omettere le etichette degli assi, tutte pratiche che possono ingannare chi interpreta il grafico. Il terzo principio è minimizzare gli e ff etti non utili adottando un approccio di minimalismo grafico, evitando ad esempio un uso eccessivo di griglie, limitando i colori di sfondo e non usando inchiostro per elementi inutili come decorazioni; una buona strategia può essere togliere elementi superflui (inchiostro) piuttosto che aggiungerne di inutili. Infine, è importante prestare attenzione a scale e architettura del grafico, limitando la scala se necessario per rendere più chiari i dati e, se opportuno, escludendo dalla rappresentazione dati meno rilevanti per non appesantire o confondere la visualizzazione. Questi principi aiutano a creare grafici chiari, precisi e utili per l’analisi e la comunicazione. MACHINE LEARNING INTELLIGENZA ARTIFICIALE Fino a questo momento abbiamo esaminato un approccio combinatorio, ovvero un metodo in cui l’essere umano definisce regole e algoritmi precisi da seguire. Adesso invece ci avviciniamo agli approcci automatici, che puntano a risolvere problemi in modo differente, lasciando alla macchina la possibilità di apprendere dai dati senza indicazioni esplicite. Entrambi gli approcci mirano a risolvere un problema, ma il percorso seguito è molto diverso. Il concetto di intelligenza artificiale nasce con ALAN TURING, che ipotizza la possibilità di replicare il funzionamento della mente umana attraverso una macchina. Per verificare questa ipotesi propone il test di Turing, un esperimento in cui un interlocutore pone domande sia a una persona che a una macchina e deve determinare chi dei due risponde. Se non riesce a distinguere le risposte, la macchina dimostra di avere un comportamento intelligente. Oggi esistono applicazioni di intelligenza artificiale che imitano alcuni aspetti delle capacità umane, come il riconoscimento vocale o visivo, ma siamo ancora lontani dalla realizzazione di una vera intelligenza artificiale generale. I sistemi attuali, detti ristretti, sono progettati per eseguire compiti specifici, come vincere una partita a scacchi, ma non sono in grado di adattarsi ad altri contesti o problemi. Una branca fondamentale dell’intelligenza artificiale è il MACHINE LEARNING, ovvero l’apprendimento automatico. In questo approccio la macchina non riceve istruzioni dettagliate su come agire, ma apprende dai dati che le vengono forniti. Analizzando grandi quantità di dati, questi sistemi sono in grado di costruire modelli che permettono di fare PREVISIONI, ad esempio anticipare un comportamento futuro sulla base di dati osservati in passato, oppure CLASSIFICARE un nuovo dato all’interno di una categoria già conosciuta. Un altro obiettivo importante è superare il RUMORE DEI DATI, cioè riuscire a individuare le informazioni utili anche quando sono presenti distorsioni o falsi segnali. La principale di ff erenza tra approcci combinatori e machine learning è che nel primo caso siamo noi a stabilire ogni singolo passaggio che la macchina deve compiere, mentre nel secondo caso forniamo degli esempi risolti e lasciamo che il sistema trovi da solo le regole sottostanti. Per esempio, nel riconoscimento facciale un approccio combinatorio richiederebbe di specificare tutte le caratteristiche di un volto da riconoscere, cosa molto complessa e difficile da generalizzare. L’approccio basato su apprendimento invece parte da un insieme di immagini in cui indichiamo quali contengono un volto e quali no, lasciando al sistema il compito di imparare le differenze e costruire un modello che possa essere applicato anche a immagini nuove e mai viste. Esistono tre principali strategie di apprendimento automatico. L’apprendimento supervisionato si basa su dati etichettati, ovvero esempi con la soluzione già nota, e consente al sistema di imparare relazioni tra input e output. L’apprendimento non supervisionato analizza i dati senza disporre di etichette, cercando autonomamente strutture, somiglianze o gruppi nascosti. L’apprendimento per rinforzo invece si ispira al comportamento umano, in particolare a un modello educativo: si premiano le risposte corrette e si penalizzano quelle errate, spingendo il sistema a migliorare le proprie scelte nel tempo. Ogni metodo di apprendimento può avere caratteristiche diverse. Il potere di espressione si riferisce alla capacità di un modello di rappresentare fedelmente i dati, ma ipotesi troppo rigide o errate possono rendere il modello inefficace. L’interpretabilità indica quanto è facile per noi umani comprendere il funzionamento del modello; alcuni sistemi, pur essendo molto precisi, risultano completamente oscuri nelle loro decisioni. La velocità di apprendimento misura quanto tempo impiega un sistema a imparare dai dati a disposizione, mentre la velocità di predizione o classificazione si riferisce alla rapidità con cui il sistema fornisce risposte dopo l’addestramento.
Quando si costruisce un modello matematico, l’obiettivo principale è quello di spiegare, in termini quantitativi, perché i dati che abbiamo presentano certe caratteristiche. In altre parole, vogliamo capire come e quanto certe variabili influenzano un determinato esito. I modelli matematici sono fondamentali perché permettono sia di rappresentare meglio i fenomeni reali, sia di effettuare previsioni future. Uno degli aspetti cruciali nella costruzione dei modelli è la complessità. Un modello troppo complesso rischia di diventare inefficiente o difficile da interpretare, mentre uno troppo semplice può risultare poco rappresentativo. Per questo si applica spesso il principio del Rasoio di Occam, secondo cui, a parità di capacità esplicativa, è meglio scegliere la spiegazione più semplice. Questo implica ridurre al minimo le assunzioni del modello, poiché troppe ipotesi lo renderebbero rigido e meno adattabile. Inoltre, un modello con troppi parametri diventa complicato da gestire, aumentando il rischio che l’apprendimento risulti lento o poco efficace. È anche importante evitare l’overfitting, cioè l’adattamento eccessivo del modello ai dati osservati, che compromette la sua capacità di generalizzare. Nel processo di modellazione, si possono commettere diversi errori. Il BIAS, ad esempio, si verifica quando il modello si basa su assunzioni errate, come considerare un campione di dati non rappresentativo dell’intera popolazione. L’underfitting si ha quando il modello è troppo semplice e non riesce a catturare le relazioni nei dati, fallendo anche nell’apprendimento. Al contrario, l’overfitting si manifesta quando il modello si adatta troppo perfettamente ai dati su cui è stato addestrato, includendo anche il rumore e le eccezioni, diventando così inefficace quando viene applicato a dati nuovi. Per prevenire soprattutto l’overfitting, si utilizza una strategia di suddivisione dei dati in tre gruppi. I dati di addestramento, che rappresentano circa il 60% del totale, vengono utilizzati per costruire e allenare il modello. I dati di test, circa il 20%, servono a valutare se il modello ha bisogno di essere migliorato o corretto. Infine, i dati di valutazione (gli ultimi 20%) vengono impiegati per verificare le prestazioni del modello una volta ultimato. Solo dopo aver superato tutte queste fasi, il modello può essere applicato a nuovi dati di cui non si conosce la soluzione. L’APPROCCIO CON SUPERVISIONE L’approccio con supervisione è un tipo di apprendimento automatico in cui il metodo viene prima addestrato su un insieme di dati di cui si conoscono già le risposte corrette. L’obiettivo è capire la relazione tra le variabili di input (dette “predittori”) e una variabile obiettivo (detta anche “target”). Questo consente, una volta costruito il modello, di utilizzarlo per fare previsioni su dati nuovi, di cui non conosciamo l’esito. Per poter addestrare correttamente un modello supervisionato è fondamentale avere dati etichettati, cioè dati per cui si conosce anche la soluzione del problema. Ad esempio, se vogliamo prevedere se un paziente è malato, servono i suoi parametri clinici (le variabili predittive) e la diagnosi già nota (la variabile target). Questo approccio può essere applicato a due tipi di problemi: quelli di REGRESSIONE, in cui si vuole prevedere un valore numerico continuo (come la probabilità che piova domani), e quelli di CLASSIFICAZIONE, in cui bisogna assegnare un elemento a una determinata categoria (come sano/malato o spam/non spam). Tra i principali metodi supervisionati ci sono: la regressione lineare, la classificazione bayesiana e gli alberi decisionali. Nel caso della REGRESSIONE LINEARE, si parte dal presupposto che la relazione tra i predittori e la variabile da prevedere sia lineare, cioè esprimibile con una retta. Per esempio, se stiamo analizzando i dati sul noleggio di biciclette e conosciamo la temperatura, assumiamo che esista una relazione lineare tra questi due aspetti. Il compito del modello è trovare la retta che meglio approssima l’andamento dei dati, minimizzando la differenza tra i valori osservati e quelli stimati. Questo comporta il calcolo di alcuni coefficienti (indicati come b), che vengono scelti in modo da minimizzare l’errore residuo. Tuttavia, il limite di questo modello è che si basa su un’unica forte ipotesi: la linearità, che non sempre rispecchia la complessità dei fenomeni reali. La classificazione bayesiana na ї ve è invece un metodo molto usato per assegnare un elemento a una categoria. Si basa sul teorema di Bayes, secondo cui si calcola la probabilità che un dato elemento appartenga a una determinata classe, sulla base delle caratteristiche osservate. Un esempio classico è la classificazione delle email: il sistema calcola la probabilità che un messaggio sia spam conoscendo le parole che contiene. Questo metodo può lavorare con molte variabili (x1, x2, … xn), ma fa un’importante assunzione semplificatrice: che tutte queste caratteristiche siano indipendenti tra loro. Anche se questa ipotesi non è sempre vera, il metodo funziona spesso molto bene in pratica. Un problema possibile nella classificazione bayesiana è la mancanza di dati per alcune combinazioni di caratteristiche e categorie. Se nel set di addestramento non è presente una certa caratteristica, il modello non sarà in grado di gestirla in fase di previsione. Per ovviare a questo, si applica una tecnica chiamata “discounting”, che consiste nell’aggiungere un’unità alla frequenza di ogni evento, così da evitare che la probabilità stimata per categorie non viste sia zero. In sintesi, l’approccio supervisionato è potente e utile per fare previsioni accurate, ma dipende fortemente dalla disponibilità di dati etichettati e da ipotesi che, se non verificate, possono limitare l’efficacia del modello. APPRENDIAMO SENZA SUPERVISIONE L’apprendimento senza supervisione è un metodo in cui si lavora con dati non etichettati, cioè senza conoscere in anticipo le risposte corrette. L’obiettivo è scoprire strutture nascoste all’interno dei dati, come somiglianze, schemi o raggruppamenti. Questo approccio ha il vantaggio di non richiedere dati etichettati, quindi è più semplice da applicare a grandi quantità di informazioni generiche. Tuttavia, ha un limite importante: non permette di fare previsioni affidabili, perché manca una fase di apprendimento basata su risposte conosciute. Ci sono due tipi principali di analisi nell’apprendimento senza supervisione. Il primo è la RIDUZIONE DIMENSIONALE, che consiste nel semplificare i dati mantenendo le informazioni più rilevanti. Per esempio, se un dato è descritto da molte caratteristiche, si cerca di rappresentarlo usando un numero minore di proprietà, eliminando quelle ripetitive o poco significative. Il secondo tipo è il clustering, che mira a raggruppare dati simili. Si osservano i dati e si cerca di dividerli in gruppi, detti cluster, dove gli elementi all’interno dello stesso gruppo sono più simili tra loro rispetto a quelli appartenenti ad altri gruppi. Uno dei metodi più usati per il CLUSTERING è l’algoritmo K-means. Questo algoritmo richiede di stabilire prima il numero di gruppi che si vogliono individuare. Poi sceglie a caso dei punti nello spazio, chiamati centroidi, che rappresentano inizialmente il centro dei vari gruppi. A ogni iterazione, si assegna ogni dato al centroide più vicino e poi si ricalcolano i nuovi centroidi in base ai dati assegnati. Questo processo si ripete finché i centroidi non cambiano più, cioè finché si raggiunge una certa stabilità nella suddivisione dei dati. L’e ffi cacia del metodo dipende dalla scelta iniziale dei centroidi e dal numero di cluster deciso, che spesso va stimato empiricamente. In certi casi i gruppi non sono ben distinti o possono sovrapporsi, rendendo più difficile l’identificazione precisa dei cluster. ALBERI DECISIONALI Gli alberi decisionali sono un metodo supervisionato che costruisce una struttura ad albero per classificare gli elementi. Ogni nodo dell’albero rappresenta una condizione, e i rami portano a decisioni diverse a seconda che la condizione sia vera o falsa. Ad esempio, se voglio prevedere quanti gol segnerà un giocatore, potrei iniziare valutando se gioca da più di tre anni. Se sì, controllo la media dei gol segnati; se no, assegno direttamente un valore. In questo modo, ogni passaggio suddivide il gruppo di dati in sottoinsiemi più omogenei. Per costruire un buon albero decisionale, bisogna scegliere condizioni che dividano i dati in due gruppi abbastanza equilibrati (es. 50/50). Questo migliora la capacità del modello di generalizzare su nuovi dati. Ad esempio, per prevedere la sopravvivenza di un passeggero, posso iniziare suddividendo in base al sesso (maschio/femmina), se questa suddivisione risulta significativa. Gli alberi decisionali sono facili da interpretare, ma se non si pongono limiti alla loro crescita possono diventare troppo complessi e rischiano l’overfitting, adattandosi troppo ai dati di partenza.
confrontano questi vettori moltiplicando le valutazioni corrispondenti e sommando i risultati: accordo (1×1 o -1×-1) produce valori positivi, disaccordo (1×-1) valori negativi. La somma viene poi normalizzata dividendo per il numero di contenuti valutati da almeno uno dei due utenti, ottenendo un valore compreso tra -1 e 1. Questo coefficiente di similarità è poi utilizzato per stimare, con una media pesata, quanto un utente potrebbe apprezzare un contenuto non ancora valutato. Si tengono anche in considerazione fattori correttivi come le tendenze personali nelle valutazioni e l’evoluzione dei gusti nel tempo. Un ulteriore perfezionamento è rappresentato dal metodo dei fattori nascosti, che mira a individuare le motivazioni latenti dietro le preferenze degli utenti, come il genere, lo stile o il paese di produzione di un contenuto. Invece di basarsi su valutazioni esplicite o sull’analisi diretta dei contenuti, si costruiscono due tabelle: una per l’interesse degli utenti rispetto a ciascun fattore e una per la presenza di questi fattori nei contenuti. Poiché i valori sono inizialmente ignoti, si parte da stime casuali e si calcola una matrice delle valutazioni previste, confrontandola con quella reale (nota solo in parte). La differenza tra le due viene minimizzata iterativamente aggiornando i valori fino a raggiungere la convergenza. Una volta completato il processo, è possibile stimare le valutazioni mancanti e offrire suggerimenti personalizzati. MEDIA ARITMETICA E MEDIANA = Quando analizziamo un insieme di dati, è importante considerare la presenza di valori anomali (detti anche outliers), cioè valori molto distanti dalla maggior parte degli altri. Questi valori possono influenzare sensibilmente il risultato delle misure di centro, in particolare la media aritmetica, che risente molto degli scostamenti estremi. La mediana, invece, è meno sensibile a questi valori perché dipende solo dall’ordinamento dei dati e non dalla loro distanza numerica. Ad esempio, se analizziamo un insieme di temperature dove tutti i valori sono concentrati in un certo intervallo tranne uno (ad esempio 0), la media risulterà più bassa del previsto proprio per colpa di quel valore anomalo. In questo caso, la mediana rappresenta meglio il centro dei dati, perché non è influenzata direttamente da quanto estremo sia il valore anomalo. La scelta tra media e mediana dipende quindi dalla distribuzione dei dati. Se non ci sono valori anomali, la media è una buona misura del centro. Se invece ci sono valori molto alti o molto bassi, o entrambi (che si compensano), possiamo valutare caso per caso se usare la mediana, oppure eliminare i valori anomali. In alcune situazioni, come ad esempio il calcolo della statura media di una popolazione adulta, i valori non si discostano troppo, quindi la media resta affidabile. Al contrario, in contesti come la distribuzione della ricchezza, dove ci sono persone estremamente più ricche di altre (come Jeff Bezos), la media risulta alterata, mentre la mediana resta stabile e più rappresentativa. Per capire quanto sbagliamo nel rappresentare un insieme di dati con una misura del centro, possiamo calcolare gli scarti, cioè la differenza tra ogni dato e la misura scelta (media o mediana). Gli scarti rispetto alla media aritmetica si compensano (la loro somma è zero), mentre quelli rispetto alla mediana no. Questo fa della media una misura più precisa in termini matematici. Tuttavia, per evitare che gli scarti positivi e negativi si annullino, usiamo gli scarti quadratici (eleviamo al quadrato ciascuno scarto), così tutti diventano positivi. La somma di questi scarti quadratici ci dice quanto la misura del centro si discosta complessivamente dai dati. Un’ulteriore proprietà della media aritmetica è che minimizza proprio questa somma degli scarti quadratici: nessun’altra misura del centro può fare meglio della media in questo senso. Infine, se abbiamo due variabili x e y legate da una relazione lineare del tipo Y = a + bX, possiamo calcolare facilmente la media di y conoscendo la media di x: la media di y sarà semplicemente a + b \cdot E[x], dove E[x] è la media di x. POSIZIONE RELATIVA = (Z-SCORE) = La posizione relativa di un dato serve a capire quanto esso si discosta dal centro della distribuzione, cioè dalla media, ed è particolarmente utile quando vogliamo analizzare un singolo valore all’interno di un dataset o confrontare dati provenienti da insiemi diversi che possono avere scale differenti, come ad esempio la ricchezza e l’altezza. Per esprimere questa distanza in modo standardizzato si utilizza lo z-score, che si calcola sottraendo alla singola osservazione x la media del dataset (\bar{x}) e dividendo il risultato per la deviazione standard s, cioè la media delle distanze di tutti i punti rispetto al centro. Questo processo permette di confrontare la posizione di un valore rispetto alla distribuzione in cui si trova: ad esempio, se un utente ha 109 amici e la media è 110, il suo z-score sarà leggermente negativo (-0,037), indicando che si trova appena sotto la media, mentre un altro utente con 202 amici, molto distante dalla media e quindi più eccezionale rispetto al gruppo, avrà uno z-score pari a 2,132. Una proprietà importante dello z-score è che la media di tutti gli z-score di un dataset è sempre zero, poiché le deviazioni positive e negative si compensano. Lo z-score è particolarmente utile quando dobbiamo confrontare valori relativi a variabili con scale diverse, perché li porta tutti sulla stessa scala standardizzata. Per esempio, se vogliamo capire se c’è una relazione tra il numero di amici (da 0 a 100) e il livello di felicità (da 0 a 1), non possiamo confrontare i valori grezzi, ma dobbiamo usare gli z-score. Tuttavia, questo metodo funziona bene solo con distribuzioni bilanciate e simmetriche; in presenza di distribuzioni sbilanciate come quelle a legge di potenza (power law), ad esempio nella distribuzione della ricchezza, lo z-score può diventare fuorviante perché i valori estremi alterano troppo la media e la deviazione standard, rendendo difficile una standardizzazione efficace. IL TEOREMA DI BAYES = L’approccio bayesiano si basa sul teorema di Bayes, il cui scopo principale è quello di fare predizioni partendo da conoscenze pregresse, cioè da probabilità già note, per stimare la probabilità di un’ipotesi alla luce di nuovi dati osservati. Questo approccio, molto diffuso anche nel machine learning, si fonda su tre concetti fondamentali: la distribuzione a priori, che rappresenta ciò che già sappiamo sull’ipotesi prima di osservare i dati; la probabilità dell’evidenza, cioè la probabilità di osservare quei dati indipendentemente da qualsiasi ipotesi; e infine la distribuzione a posteriori, che è la probabilità aggiornata dell’ipotesi dopo aver preso in considerazione i dati. Il teorema di Bayes permette quindi di calcolare la probabilità di un’ipotesi (H) dato un insieme di dati osservati (D), attraverso la formula: dove: P(H) è la probabilità a priori dell’ipotesi, P(D|H) è la probabilità di osservare i dati se l’ipotesi è vera, P(D) è la probabilità di osservare quei dati in generale (costante di normalizzazione), P(H|D) è la probabilità a posteriori, ovvero la probabilità aggiornata dell’ipotesi dopo aver osservato i dati. Un esempio classico è quello di un test per un virus: se la probabilità che una persona sia malata (H) è del 9%, e la probabilità che il test risulti positivo sapendo che la persona è malata (P(D|H)) è del 90%, mentre la probabilità generale di test positivi (P(D)) è del 10%, allora applicando il teorema otteniamo una probabilità a posteriori (P(H|D)) di circa 81%, cioè se una persona risulta positiva al test, c’è l’81% di probabilità che abbia davvero il virus. Un altro esempio applicativo riguarda il superamento di un esame: se il 70% degli studenti è frequentante (P(H)), e il 55% di questi supera l’esame (P(D|H)), mentre solo il 20% dei non frequentanti (30% degli studenti) lo supera, possiamo calcolare la probabilità che uno studente che ha superato l’esame sia un frequentante (P(H|D)). Dopo aver calcolato la probabilità totale di superamento (P(D)) combinando entrambi i gruppi, scopriamo che c’è una probabilità del 78% che uno studente che ha superato l’esame sia effettivamente un frequentante. In sostanza, l’approccio bayesiano aggiorna le nostre convinzioni iniziali in base a nuove osservazioni, ed è per questo uno strumento chiave nell’analisi predittiva. CLUSTERING = Il clustering è una tecnica utilizzata per identificare gruppi (cluster) all’interno di un insieme di dati, con l’obiettivo di raggruppare elementi simili tra loro; ad esempio, può essere usata per raggruppare utenti con gusti simili. Tuttavia, la formazione dei cluster non è sempre semplice: può capitare, infatti, che due gruppi (come quelli blu e viola) siano sovrapposti e difficili da distinguere visivamente. Un metodo molto noto per individuare i cluster è l’algoritmo K-means, che permette di suddividere un insieme di punti in k gruppi, cercando di minimizzare la distanza interna ai gruppi. Il principale problema dell’approccio è che il valore di k, cioè il numero di cluster, non è noto a priori e va stimato; troppo pochi cluster non catturano la struttura dei dati, troppi rischiano di creare confusione. L’idea dell’algoritmo K-means è di rappresentare ciascun cluster con un centroide, cioè un punto centrale che rappresenta il “baricentro” dei dati assegnati a quel cluster. Il funzionamento prevede inizialmente la scelta casuale di k centroidi, e poi si procede in modo iterativo alternando due fasi: 1.Assegnazione: ogni punto viene assegnato al cluster il cui centroide è il più vicino (in base alla distanza euclidea); 2.Aggiornamento: i centroidi vengono ricalcolati come media dei punti assegnati a ciascun cluster. Questo processo viene ripetuto fino a convergenza, cioè fino a quando i centroidi non cambiano più posizione (oppure cambiano di pochissimo), ottenendo così una partizione stabile dei dati in cluster coerenti.