fbpx

Metodologie e tecniche avanzate per estrarre informazioni ad alto valore aggiunto da grandi dataset

Il corso presenta diverse metodologie di Data Mining e Machine Learning, di introduzione relativamente recente, per l’esplorazione di grandi quantità di dati, estendendo gli approcci discussi nel corso base o trattandone di nuovi e più sofisticati.

Obiettivi, didattica, destinatari

  • Il Data Mining si occupa dell’analisi di grandi quantità di dati, con l’obiettivo di estrarvi informazioni non immediatamente visibili ma ad alto valore aggiunto; in genere si tratta di individuare “modelli” utili a fini descrittivi o previsionali. Molte tecniche di Data Mining poggiano su algoritmi di Machine Learning, in grado di apprendere automaticamente i loro compiti dall’esperienza. Questo corso “avanzato” ha il duplice obiettivo di riprendere ed approfondire alcune metodologie solo accennate nel corso “base” e di introdurne di nuove e più sofisticate, con particolare riguardo al Web Mining, alle macchine a vettore di supporto ed agli algoritmi genetici. Come nel corso base, ci si focalizzerà sulla formulazione dei modelli, sulle ipotesi retrostanti, sui dati richiesti, sui risultati generati e sulla loro interpretazione, oltre che sugli algoritmi con cui i modelli elaborano i dati di input per produrre quelli di output.
  • Le lezioni combinano elementi teorici essenziali con esempi ed applicazioni pratiche su dati reali, illustrative delle varie tecniche, sfruttando il software open source RapidMiner ed il software Matlab.
  • Il campo di applicazione delle tecniche di Data Mining e Machine Learning è in continua crescita ed è già oggi sterminato: non è affatto esagerato affermare che chiunque debba gestire grandi database ed ambisca ad utilizzarli in modo efficiente, massimizzandone il potenziale informativo, deve ricorrere a queste tecniche. Il corso è quindi rivolto ad un’ampia platea di figure professionali, con competenze e livelli di seniority anche molto diversi: ad esempio chi si occupa di analisi e previsioni di mercato, di direct marketing, di web marketing, di strategie di vendita, di individuazione di frodi (finanziarie, alimentari, ecc.), di valutazione del rischio (ingegneristico, creditizio, ecc.), di diagnostica medico-sanitaria, di riconoscimento di testi ed immagini, per non parlare di analisti e ricercatori nelle scienze applicate.

Programma

  1. Cluster Analysis – Consente di raggruppare per similitudine dati multidimensionali. Verrà discusso l’approccio basato sulla mistura di Gaussiane, nel quale si assume che ogni dato venga generato da una di n variabili Gaussiane e che una loro combinazione convessa (mistura) generi l’intero dataset. Per la stima dei parametri incogniti si applicherà il criterio di massimizzazione della verosimiglianza, da implementare tramite algoritmo gradient descent o algoritmo EM. Applicazioni: segmentazione degli utenti di un negozio online, identificazione di pattern in immagini generate da strumentazione bio-medica, riconoscimento di immagini in ambito botanico.  [4 ore]
  2. Principal Component Analysis – Consente di “sintetizzare” un gran numero di variabili correlate che descrivono un fenomeno, in un numero ridotto di variabili “latenti”, non correlate, facili da interpretare, che spiegano il fenomeno (quasi) come le variabili originarie. Verrà introdotta la PCA probabilistica, che estende il modello standard, esaminato nel corso base, permettendo di calcolare la distribuzione di probabilità delle variabili latenti e di trattare il caso di dati mancanti. Per la stima dei parametri verrà applicato l’algoritmo EM. Come ulteriore estensione verrà trattata la PCA bayesiana, che consente di introdurre informazioni a priori sui dati e sul modello. Applicazioni: analisi di mercato, posizionamento strategico di prodotti e marche. [5 ore ]
  3. Web Mining e Text Mining – Il Web Mining è la disciplina che applica le tecniche del DM per scoprire regolarità presenti in risorse disponibili sul Web, ad esempio per classificare pagine dei siti in base al contenuto testuale. Verranno trattati i concetti di base della disciplina: apprendimento attraverso regole di associazione, rilevamento delle similarità, analisi delle sequenze, apprendimento per rinforzo, Hidden Markov Model, algoritmi PageRank. Un sotto-settore specifico di grande interesse è il Text Mining, che verrà brevemente presentato. Applicazioni: ricerca di sequenze rilevanti, web recommendations. [6 ore ]
  4. Support Vector Machines – Sono algoritmi di classificazione e di regressione di recente sviluppo. Le SVM per la classificazione estendono l’approccio basato sulle reti neurali monostrato perché permettono di separare i dati in modo non lineare e migliorano quello basato sulle reti multistrato grazie ad un addestramento efficiente. Una volta definito il concetto di SVM come classe di funzioni, si introdurranno i rischi di errore di classificazione effettivo ed empirico e si vedrà come controllare il primo tramite il secondo e la così detta dimensione VC. Si vedrà quindi come addestrare una SVM che minimizzi la dimensione VC, sia nel caso lineare che in quello non lineare, mostrando che il problema di ottimizzazione si può affrontare con la teoria della dualità. Infine, si accennerà alle SVM per problemi di regressione ed agli algoritmi di decomposizione per problemi di programmazione convessa. Applicazioni: problemi di classificazione e regressione su dati bio-medici. [7 ore ]
  5. Algoritmi genetici – Sono algoritmi, ispirati alla teoria dell’evoluzione darwiniana, che partendo da un insieme di possibili soluzioni ad un problema, consentono di generare iterativamente nuove soluzioni fino a raggiungere quella ottima. Si vedrà, in primo luogo, come codificare le soluzioni (codifica binaria, reale, ad albero) e valutare la bontà di una soluzione attraverso la funzione di fitness. Verranno quindi introdotte alcune tecniche di selezione delle soluzioni (roulette, categoria, torneo, Boltzmann) e creazione di ulteriori soluzioni (crossover, mutazione) che evitino la perdita di quelle potenzialmente interessanti in fase di selezione o la convergenza verso soluzioni di ottimo locale anziché globale. Infine, si valuterà la convergenza degli algoritmi. Applicazioni: problemi di classificazione e previsione su dati botanici ed automotive. [6 ore]
  6. Reti neurali artificiali – Le reti discusse nel corso base individuano relazioni tra i dati quando il loro addestramento è “supervisionato”, cioè basato su un insieme di dati di input-output predefiniti (training set). Qui vengono discusse le reti SOM (Self Organized Maps o reti di Kohonen), nelle quali l’addestramento si basa sugli input, senza necessità dei corrispondenti output: si parla infatti di reti “non supervisionate”. Verrà poi dato spazio ad un altro tipo di rete, detta Bayesiana ed all’algoritmo EM per stimarne i parametri: le reti Bayesiane non richiedono grandi training set e garantiscono un addestramento continuo, man mano che nuovi dati vengono passati alla rete. Applicazioni: riconoscimento di pattern, previsione di serie storiche in ambito finanziario. [5 ore]