1 / 73

Data Mining e Open Data Duccio Schiavon ( Statistica@Ning )

Data Mining e Open Data Duccio Schiavon ( Statistica@Ning ). Bari, 16 novembre 2013. Cos’è il Data Mining. Enunciazioni autorevoli. ‘We’re drawning in information and starving for knowledge’ John Naisbitt

adolfo
Download Presentation

Data Mining e Open Data Duccio Schiavon ( Statistica@Ning )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Mining e Open DataDuccio Schiavon(Statistica@Ning) Bari, 16 novembre 2013

  2. Cos’è il Data Mining

  3. Enunciazioni autorevoli ‘We’re drawning in information and starving for knowledge’ John Naisbitt studioso e futurologo di fama internazionale, ha collaborato con le amministrazioni Kennedy e Johnson, ha insegnato presso le Università di Mosca e Harvard.

  4. Enunciazioni autorevoli ‘Data Mining is the art and science of finding interesting and useful patterns in data’ Gregory Piatetsky-Shapiro massimo esperto di Data Mining, fondatore di KDD (Knowledge Discovery Conferences), cofondatore di ACM SIGKDD, (professional association on Knowledge Discovery and Data Mining), e amministratore di KDnuggets.com http://www.kdnuggets.com/faq/what-is-data-mining.html

  5. Definizione ‘Data Mining rappresenta l’attività di elaborazione in forma grafica o numerica di grandi raccolte o di flussi continui di dati con lo scopo di estrarre informazioni utili a chi detiene i dati stessi’ Adelchi Azzalini professore di Statistica presso il Dipartimento di Statistica dell’Università degli Studi di Padova e autore di Analisi dei dati e data mining.

  6. Sfide minerarie nella moderna società dell’informazione Gli ultimi anni hanno visto una proliferazione delle sorgenti di dati ad alta capacità di archiviazione Alcuniesempi: • Supermercati: market basket analysis basata sugli scontrini emessi e geo-localizzazione attraverso le carte fedeltà • Compagnie telefoniche: raccolta dei dati di utilizzo, studio di offerte progettate sulla base dei consumi, individuazione dei clienti target • Ricerca scientifica: nella microbiologia, l’analisi delle sequenze di porzioni di DNA porta alla costruzione di gigantesche tabelle, dette ‘DNA microarray’ • Rilevazioni di natura fisica e chimica: analisi dell’evoluzione del clima terrestre e di altri fenomeni naturali

  7. Sfide minerarie nella moderna società dell’informazione • Il Web: enorme deposito di informazioni, contenute in tanti documenti di forma differente. La ricchezza e la varietà dei contenuti contraddistinguono questo ambito dai precedenti. Quando vi è la possibilità di accedere ad informazioni strutturate (o strutturabili) le possibilità di studio divengono innumerevoli così come le relazioni osservabili

  8. Il Web: la sfida più impegnativa Purtroppo, i maggiori vantaggi offerti dal Web rappresentano spesso anche i peggiori svantaggi: - la quantità di dati è continuamente aggiornata per cui è anche difficilmente numerabile - la gran parte dei dati è organizzata in forma non-strutturata - all’interno del singolo documento, gli elementi oggetto di ricerca non sempre forniscono una pertinenza precisa sulla loro collocazione e sulla relazione con gli altri elementi in esso contenuti

  9. Problemi minerari e particolareapproccio analitico Maledizione della dimensionalità: il problema principale del DM è rappresentato da un possibile rischio: ovvero sia che una tale abbondanza di dati non consenta in realtà l’estrazione dell’informazione utile ‘Informazione utile’: espressione volutamente generica in quanto nel DM non è quasi mai specificato a priori quale sia l’oggetto di interesse, che spesso si cerca d’individuare proprio “scavando” tra i dati ‘Il DM è una disciplina recente, collocata al punto d’intersezione di varie aree scientifiche, e specialmente la statistica, l’intelligenza artificiale (machinelearning, pattern recognition, ecc.) e la gestione dei database’ A. Azzalini

  10. Ritrosia degli statistici verso il DM 1) In molti casi i dati sono raccolti per motivi diversi da quello della loro analisi statistica. Ad esempio, in molte imprese, la raccolta avviene per fini puramente contabili. I dati in questi casi non rispondono a nessun piano di campionamento o piano sperimentale 2) Dato che l’obiettivo spesso non è dichiarato a priori, la situazione classica è che andando alla ricerca “di qualcosa” si finisca col trovare comunque “qualcosa”… anche se questo “qualcosa” in realtà non esiste. ‘Ifyou torture the data long enough, Nature willalwaysconfess’ Ronald H. Coase, premio Nobel 1991 per l’economia

  11. Cosa distingue il data mining dalla statistica La statistica viene tradizionalmente considerata un’analisi primaria (sperimentale) dei dati raccolti per verificare ipotesi specifiche. La statistica viene quindi classificata come un’analisi (confermativa) condotta dall’alto, una verifica o valutazione d’ipotesi Il data mining è considerato generalmente come un tipo di analisi secondaria (osservazionale) dei dati raccolti per altre ragioni. Il DM viene quindi classificato come analisi (esplorativa) condotta dal basso, un processo di generazione d’ipotesi e di conoscenze (knowledgediscovery).

  12. Il modello ‘AllModels Are Wrong But Some Are Useful’ George E.P.Bpx pioniere del controllo di qualità dei processi, nella analisi delle serie storiche, disegno degli esperimenti e inferenza bayesiana Il DM è un processo complesso d’identificazione nei dati di tendenze, strutture, modelli o trend validi, potenzialmente utili ed infine comprensibili che consentano all’utente di prendere decisioni cruciali. • complesso: non si tratta del calcolo diretto di quantità predefinite come la media di un insieme di numeri • validi: i modelli devono “funzionare”, ovvero sia devono fornire buoni risultati se applicati su dati nuovi • potenzialmente utili: i modelli devono essere di qualche utilità per l’utente • comprensibili: i risultati devono essere interpretabili e comprensibili

  13. Gli obiettivi del data mining

  14. Principali funzioni

  15. Classificazione predittiva • Costruzione del modello: descrizione di un insieme pre-determinato di classi • Ogni unità appartiene ad una classe predefinita, identificata da una precisa etichetta di classe • L’insieme di unità utilizzato per la costruzione del modello è chiamato insieme di addestramento • Il modello può essere rappresentato da regole di classificazione, alberi decisionali, formule matematiche, ecc. • Utilizzo del modello: per la classificazione di oggetti futuri o non noti • Accuratezza della stima del modello • Il modello viene testato attraverso un insieme di test di cui sono note le etichette di output • Il tasso di accuratezza è la percentuale di unità dell’insieme di test correttamente classificate dal modello • L’insieme di test deve essere indipendente dall’insieme di addestramento • Se l’accuratezza è accettabile, si utilizza il modello per classificare i dati di cui non sono note le etichette

  16. Costruzione del modello Dati di addestramento Modello Algoritmi di Classificazione IF posizione = ‘professore’ OR anni > 6 THEN di ruolo = ‘si’

  17. Accuratezza della stima Utilizzo dell’insieme di test per costruirci la seguente MATRICE DI CONFUSIONE: i dati sulla var. DI RUOLO sono noti, ma noi applichiamo il modello facendo previsioni su di essi “censurandoli” DI RUOLO Osservati Tasso di Accuratezza: Numero di unità classificate correttamente su numero totale di unità (a+d)/(a+b+c+d) SI NO SI DI RUOLO Previsti NO

  18. Applicazione del modello Modello Dati di test Data Sconosciuti (Guido, Professore, 4) Di Ruolo? SI

  19. Tecniche di classificazione predittiva • Regressione lineare • Analisi discriminante • Metodi non parametrici • Alberi di classificazione • Reti neurali • Combinazioni di classificatori (bagging, boosting, voting)

  20. Regressione predittiva • La previsione tramite regressione consiste in • Costruire un modello secondo una procedura molto simile a quella della classificazione predittiva • usare il modello per prevedere valori continui o ordinali per un dato input • La regressione predittiva è differente dalla classificazione predittiva • La classificazione consente di prevedere etichette di classe categoriali • La regressione consente di modellare funzioni di base numerico-continua • Principale metodo predittivo: Regressione • modella la relazione tra una o più variabili indipendenti o predittori ed una variabile dipendente o di risposta • Analisi di regressione • Regressione lineare e multipla • Regressione non-lineare • Altri metodi di regressione: modelli lineari generalizzati, regressione di Poisson, modelli log-lineari

  21. Misure di accuratezza della previsione • Misura di accuratezza predittiva: misura quanto il valore previsto si scosta dal valore noto • Funzione di perdita: misura l’errore esistente tra il valore osservato yi e l’errore previsto yi’ (valori residui) • Errore assoluto: | yi – yi’| • Errore quadratico: (yi – yi’)2 • Errore di test (errore di generalizzazione): perdita media sull’insieme di test • Err. assoluto medio: Err. quadratico medio: • Err. ass. relativo: Err. quad. relativo: I più popolari indicatori di accuratezza sono la radice dell’errore quadratico medio (RMSE) così come la radice dell’errore quadratico relativo

  22. Complessità vs. Bontà di adattamento Dati di addestramento y x

  23. Complessità vs. Bontà di adattamento Troppo semplice? Dati di addestramento y y x x

  24. Complessità vs. Bontà di adattamento Troppo semplice? Dati di addestramento y y x x Troppo complesso? y x

  25. Complessità vs. Bontà di adattamento Troppo semplice? Dati di addestramento y y x x Troppo complesso? Ci siamo? y y x x

  26. Complessità e Generalizzazione Funzione di perdita Ad es., errore quadratico Errore di Test Errore di Addestramento Complessità = gradi di libertà del modello (ad es. numero di variabili) Complessità Ottimale del modello

  27. Altre tecniche di regressione predittiva(o meglio: di previsione di una variabile quantitativa) • Spline • Modelli addittivi e GAM • Alberi di regressione • Reti neurali

  28. L’intero processo deldata mining

  29. Definizione del problema Definizione del problema Rispondi alle seguenti domande: Cosa stai cercando? Quali tipi di relazioni intendi trovare? La soluzione che stai cercando è in linea con i tuoi reali obiettivi? Desideri costruire un modello per scopi previsionali oppure sei interessato ad indagare andamenti e associazioni? Quali attributi desideri prevedere? Quale tipo di relazione esiste tra le colonne del tuo dataset? Se disponi di diverse tabelle, queste come sono relazionate? In che forma sono disponibili i dati? I dati sono stagionali? Fase comune ai comuni processi di modellazione

  30. Preparazione dei dati Definizione del problema La pulitura dei dati non è solo rimozione dei dati mal-codificati, ma anche trovare correlazioni nascoste nei dati, identificare sorgenti di dati che siano sufficientemente accurate, e determinare quali colonne sono le più appropriate per l’analisi. Per esempio, desideri conservare la data di ordine o, in alternativa, la data di spedizione? Dati incompleti, dati errati ed input possono sembrare separati tra loro ma nei fatti possono influenzare i risultati del modello in modo inatteso. Quindi, prima d’iniziare occorre identificare i problemi e correggerli Preparazione dei dati Fase comune ai comuni processi di modellazione

  31. Esplorazione dei dati Definizione del problema Le tecniche di esplorazione includono il calcolo dei valori massimi e minimi, della media e delle deviazioni standard, così come l’osservazione della distribuzione dei dati. Dall’osservazione dei massimi, dei minimi e delle medie potreste ad esempio verificare che i dati non sono rappresentativi dei processi caratteristici della vs. attività di business. A questo punto sarà necessario ottenere dati più bilanciati o rivedere gli assunti alla base della vs. analisi. Valori elevati di deviazione standard possono indicare la necessità di aggiungere altri dati al fine di migliorare il modello, ecc. Preparazione dei dati Esplorazione dei dati Fase comune ai comuni processi di modellazione

  32. Costruzione del modello Definizione del problema Prima dell’elaborazione del modello, un modello di data mining è soltanto un contenitore in cui sono riconoscibili le colonne da utilizzare come input e l’attributo che si desidera prevedere. L’elaborazione di un modello è chiamato – come visto – addestramento. L’addestramento consiste nel processo di applicazione ai dati di uno specifico algoritmo matematico al fine di estrarne tendenze. Le tendenze trovate nel processo di addestramento dipendono dalla selezione dei dati di addestramento, dall’algoritmo scelto, e dal modo in cui l’algoritmo è stato configurato. Preparazione dei dati Esplorazione dei dati Costruzione del modello Fase tipica del data mining

  33. Validazione del modello Definizione del problema Prima di eseguire il deployment di un modello sarà necessario testare la sua bontà. Inoltre, in fase di costruzione generalmente si costruiscono più modelli basati su tecniche differenti: quindi si vorrà verificare anche quali tra questi si adatta meglio ai dati. Per fare ciò si ricorrerà ad un insieme di dati di test (o “di verifica”) per osservare quale tra i modelli (“competitivi”) prodotti funzioni meglio Preparazione dei dati Esplorazione dei dati Costruzione del modello Validazione del modello Fase tipica del data mining

  34. Deployment del modello Definizione del problema • Una volta ottenuto il modello, sono diverse le cose che si possono fare a seconda delle necessità: • Usare il modello per creare previsioni • Interrogare i dati per estrarne statistiche o formule • Integrare le funzionalità del modello direttamente in una qualsiasi applicazione (file PMML; PredictiveModel Markup Language) • Aggiornare il modello dinamicamente mano a mano che arrivano dati nuovi, e applicare modifiche costanti per migliorare l’efficacia della soluzione. Preparazione dei dati Esplorazione dei dati Costruzione del modello Validazione del modello Deployment del modello Fase tipica del data mining

  35. Il data mining e il Web

  36. Il caso Netflix Prize Netflix  è una società degli Stati Uniti, nata nel 1997, che offre un servizio di noleggio di DVD e videogiochi via Internet. La spedizione dei dischi è effettuata tramite il servizio postale, che viene utilizzato dai clienti anche per la restituzione. Dal 2008 Netflix offre anche un servizio di streaming online ai propri clienti, accessibile tramite un apposito abbonamento. SecondoCompete.com,netflix.com è stato mediamente visitato almeno da 194 millioni di visitatori all’anno dal 2008. Cinque volte il numero di visitatori di blockbuster.com. Nell’Aprile 2011, Netflix ha annunciato di aver raggiunto la quota di 26 milioni e 600 mila sottoscrittori. Dall’ottobre del 2012 è presente sul mercato europeo, in Irlanda ed in Scandinavia.

  37. Il caso Netflix Prize http://www.netflixprize.com/

  38. Il caso Netflix Prize Il NetflixPrize è una competizione aperta per il migliore algoritmo collaborativo di previsione dei giudizi espressi (voti) dagli utenti nei confronti dei film visti. L’algoritmo si basa sui giudizi passati e deve fornire la base per un sistema di “raccomandazione”. Netflix ha reso pubblico ai partecipanti un insieme di addestramento composto da 100.480.507 giudizi forniti da 480.189 utenti su 17.770 titoli. Ogni record del dataset era composto da 4 variabili (utente, film, data di giudizio, giudizio). I campi utente e film sono stati popolati da IDinteri, mentre i giudizi erano espressi in una scala da 1 a 5 stelle. L’insieme di dati di qualificazione conteneva 2.817.131 record di tre variabili (utente, film, data di giudizio), con giudizi noti solo alla giuria. I team di partecipanti dovevano eseguire le previsioni sull’intero set di qualificazione, ma dovevano essere informati solo del punteggio ottenuto su meta di esso (insieme di quiz; 1.408.342 giudizi). L’altra metà avrebbe costituito l’insieme di test (1.408.789), e la prestazione offerta su di esso avrebbe costituito il reale giudizio da parte della giuria. A solo i membri della giuria era noto sia il risultato sull’insieme di quiz che sull’insieme di test.

  39. Il caso Netflix Prize L’accuratezza delle previsioni fornite era espresso in termini di Radice dell’Errore Quadratico Medio (RMSE) e l’obiettivo era ovviamente ridurre per quanto possibile il valore di tale errore. Il concorso aveva l’obiettivo di migliorare la capacità di raccomandazione di quello che fino ad allora era stato l’algoritmo in uso in Netflix, e che si chiamava Cinematch. Un algoritmo elementare di previsione – se applicato all’insieme di quiz – produce in media un RMSE pari a 1,054. Cinematch si basava su semplici algoritmi a modelli lineari con un alto numero di vincoli sui dati. Dopo la costruzione del modello sui dati di addestramento, Cinematch produceva un RMSE pari a 0,9514 sui dati di quiz, con un miglioramento di oltre il 10% rispetto ad un qualsiasi algoritmo elementare. Cinematch aveva una performance simile sull’insieme di test (RMSE=0,9525). Per vincere il premio di 1 milione di dollari messo in palio, i team partecipanti dovevano migliorare almeno di un 10% la performance sull’insieme di test (per arrivare a RMSE=0,8572). Sull’insieme si quiz tale miglioramento corrisponde a RMSE=0,8563.

  40. Il caso Netflix Prize Il concorso fu indetto nell’ottobre del 2006, e per molto tempo il premio non fu vinto da nessuno. Fu messo in palio un premio minore (di 50.000 dollari) a chiunque ogni anno avesse raggiunto il risultato migliore. Tuttavia per vincere questo premio, un algoritmo doveva migliorare di almeno l’1% la prestazione rispetto a quella del vincitore dell’anno prima. Per vincere i partecipanti dovevano fornire alla giuria il codice sorgente ed una descrizione dell’algoritmo con una sua descrizione. Dopo la verifica il vincitore avrebbe dovuto rilascare una licenza NON-ESCLUSIVA a Netflix. Netflix avrebbe pubblicato solo la descrizione, e non il codice sorgente. Un team poteva, se preferiva, non reclamare il premio se desiderava mantenere segreto il codice. A giugno 2007 si erano iscritti 20.000 team provenienti da 150 paesi. 2.000 team hanno inviato 13.000 insiemi di previsioni.

  41. Il caso Netflix Prize http://www.netflixprize.com//community/

  42. Il caso Netflix Prize http://www.timelydevelopment.com/demos/NetflixPrize.aspx

  43. Il caso Netflix Prize http://www.cs.uic.edu/~liub/KDD-cup-2007/NetflixPrize-description.pdf

  44. Il caso Netflix Prize http://www.the-ensemble.com/content/netflix-prize-movie-similarity-visualization

  45. Il caso Netflix Prize http://abeautifulwww.com/2007/04/03/another-visualization-of-the-netflix-prize-dataset/

  46. Il caso Netflix Prize http://www.nytimes.com/2008/11/23/magazine/23Netflix-t.html?_r=1&pagewanted=all

  47. Netflix Prize leaderboard Il 18 settembre 2009, Netflix ha annunciato il vincitore del premio: il team chiamato "BellKor's Pragmatic Chaos” ha vinto 1 milione di dollari per avere raggiunto un RMSE Test pari a 0,8567. Il team “The Ensemble” ha ottenuto il medesimo risultato ma avendo loro presentato i dati 20 minuti più tardi, a loro è spettata solo la seconda posizione. http://www.netflixprize.com//leaderboard

  48. Altri casi di “algoritmi collaborativi” Heritage HealthPrize http://www.heritagehealthprize.com/c/hhp

  49. Lista delle “competizioni algoritmiche” TUNEDIT http://tunedit.org/challenges

  50. Come Facebook utilizza il data mining Le prime considerazioni in merito rilasciate da un analista-sviluppatore di Fb risalgono al 2009, quando al PredictiveAnalytics World  nello spazio riservato al Bay Area R Users Group, ItamarRosennha illustrato quali tecniche di analisi predittiva erano in uso all’interno di Fb nel 2007 Nel 2007 i due principali obiettivi analitici di Fb erano: (i) stabilire quali fossero le principali ragioni all’origine dell’abbandono di Fb da parte degli utenti (Disattivazione account) (ii) prevedere quali fossero i motivi per cui un utente appena iscritto rimaneva in Fb per almeno 3 mesi http://www.lecturemaker.com/2009/02/r-kickoff-video/

More Related