Data MiningIntroduzione
Prof. Gianluca AmatoCorso di Laurea Magistrale in “Digital Marketing”
Università “G. d’Annunzio” di Chieti-PescaraUltimo aggiornamento: 30 gen 2020
30/01/20 Data Mining - Introduzione 2
Esplosione dei dati
● Vi è stata un'enorme crescita delle basi di dati commerciali e scientifiche a causa dei progressi nelle tecnologie di generazione e raccolta dei dati.
● Nuovo mantra:● Raccogli tutti i dati che puoi
quando e dove possibile.● Aspettative:
● I dati raccolti avranno valore o per lo scopo per cui sono stati raccolti o per qualche altro scopo non previsto.
Computational Simulations
Social Networking: Twitter
Sensor Networks
Traffic Patterns
Cyber Security E-Commerce
30/01/20 Data Mining - Introduzione 3
● Una enorme quantità di dati vengono raccolti e organizzati in data warehouse.
● Dati su web– Yahoo ha petabyte di dati relativi al web– Facebook ha miliardi di utenti attivi
● Vendite nei centri commerciali o siti di commercio elettronico– Amazon riceve milioni di viste al giorno
● Transazioni bancarie e/o con carta di credito● I computer sono diventati più economici e potenti.● Forte pressione competitiva.
● Fornire servizi migliori e personalizzati per avere un vantaggio competitivo– Esempio: Customer Relationship Management
Esplosione dei dati nel commercio
30/01/20 Data Mining - Introduzione 4
Esplosione dei dati nella scienza
● I dati sono raccolti e memorizzati a velocità enorme:● Sensori remoti sui satelliti
– Gli archivi NASA EOSDIS raccolgono petabyte di dati scientifici sulla terra ogni anno
● https://worldview.earthdata.nasa.gov/● Osservazioni astronomiche dai telescopi● Dati biologici● Simulazioni scientifiche
– Terabytes di dati vengono generati in poche ore● Tecniche tradizionali di analisi non sono utilizzabili
per i dati grezzi.● Il data mining aiuta gli scienziati:
● nell’analisi automatizzata di enormi insiemi di dati● nella formulazione delle ipotesi
4
fMRI Data from Brain
Sky Survey Data
Surface Temperature of Earth
30/01/20 Data Mining - Introduzione 5
Affogare nei dati
● C’è spesso una informazione “nascosta” nei dati che non è immediatamente evidente.● Gli analisti umani impiegano settimane a scoprire informazioni utili.● La maggior parte dei dati non viene mai analizzata.
0
500,000
1,000,000
1,500,000
2,000,000
2,500,000
3,000,000
3,500,000
4,000,000
1995 1996 1997 1998 1999
The Data Gap
Total new disk (TB) since 1995
Number of analysts
From: R. Grossman, C. Kamath, V. Kumar, “Data Mining for Scientific and Engineering Applications”
30/01/20 Data Mining - Introduzione 6
Cosa è il Data Mining
30/01/20 Data Mining - Introduzione 7
Cosa è il Data Mining
● Molte definizioni:● Esplorazione e analisi, con mezzi automatici o semi-
automatici, di grandi quantità di dati al fine di scoprire modelli significativi
● Estrazione non banale di informazioni implicite, precedentemente sconosciute e potenzialmente utili dai dati
● Estrazione di informazione interessante da grandi quantità di dati
30/01/20 Data Mining - Introduzione 8
Cosa è l’informazione
● Cosa è l’informazione?● insieme delle regolarità presenti implicitamente nei dati● vedremo in seguito vari modi di rappresentare questa
informazione● i risultati del processo di estrazione di informazione
prendono il nome di pattern o di modelli– https://it.wikipedia.org/wiki/Pattern
30/01/20 Data Mining - Introduzione 9
Cosa è l’informazione interessante
● Cosa vuol dire interessante? In prima analisi● nuova: non è qualcosa di già noto o conoscenza
comune● implicita: presente nei dati analizzati, ma non
immediatamente accessibile● potenzialmente utile: può essere utilizzata per
prendere delle decisioni● comprensibile agli uomini: la forma in cui la
conoscenza è estratta deve essere interpretabile facilmente dagli esseri umani
30/01/20 Data Mining - Introduzione 10
Cosa non è il Data Mining
● Cosa non è il Data Mining● Trovare un numero di
telefono in un elenco telefonico
● Interrogare un motore di ricerca del web sul termine “amazon”
● Sviluppare un sistema di guida automatica per una automobile
● Cosa è il Data Mining● Analizzare la distribuzione dei
cognomi in certe aree dell’Italia (Di Carlo, Di Vincenzo, Di …. in Abruzzo)
● Raggruppare documenti simili restituiti dai motori di ricerca sulla base del loro contesto (esempio: foresta amazzonica, Amazon.com)
30/01/20 Data Mining - Introduzione 11
Cosa c’è di nuovo (1)
● Gli uomini sono andati alla scoperta di regolarità da quando la vita umana ha avuto inizio:● i cacciatori cercano regolarità nelle migrazioni degli
animali● i politici cercano regolarità nell'opinione degli elettori
– quale azione posso intraprendere per guadagnare il 5% dei voti?
● un fisico cerca regolarità nei fenomeni naturali– scopre così che una mela che si stacca dall'albero viene
attratta sulla terra
30/01/20 Data Mining - Introduzione 12
Cosa c’è di nuovo (2)
● Nel data mining i dati sono memorizzati in forma elettronica e la ricerca è automatica o semi-automatica.
● neanche questo è particolarmente nuovo● gli statistici hanno sempre lavorato all'idea che regolarità
potessero essere trovate con mezzi automatici● Quello che è nuovo è l'enorme aumento delle
opportunità per applicare questa ricerca di informazioni.● causata, come abbiamo detto, dalla crescita delle basi di
dati negli anni recenti● da cui l'accento posto, da molti esperti di data mining,
alla ricerca di informazione all'interno di database di vaste dimensioni
30/01/20 Data Mining - Introduzione 13
Sinonimi di Data Mining
● Il termine è etimologicamente errato.. bisognerebbe parlare di “knowledge mining”:● Esattamente come l’attività di estrazione dell’oro (gold)
dai minerale grezzi (ore), si chiama “gold mining” e non “ore mining”
● Molti termini hanno dei significati uguali o simili a “data mining”:● knowledge discovery● pattern analysis● pattern recognition
30/01/20 Data Mining - Introduzione 14
Data Mining in prospettiva
● Il data mining è:● Parte integrale del processo di Knowledge Discovery in
Database (KDD)– Un termine simile a KDD è analisi dei dati (data analysis)
● Una componente chiave del campo emergente della scienza dei dati (data science)
30/01/20 Data Mining - Introduzione 15
Motivazioni del Data Mining
● Tecniche tradizionali di analisi possono non essere adeguate alle applicazioni moderne a causa di varie difficoltà:● I dati sono numerosi (scalabilità)● I dati hanno elevata dimensionalità● I dati sono complessi ed eterogenei● I dati sono distribuiti● Siamo interessati ad analisi non-tradizionali
– Automatizzare il processo di generazione di ipotesi– Usare per l’analisi dei dati raccolti per tutt’altri scopi
30/01/20 Data Mining - Introduzione 16
Origini del Data Mining
● Trae concetti ed idee dall’intelligenza artificiale, in particolare dall’apprendimento automatico (machine learning), dalla statistica e dalle tecnologie per le basi di dati.
30/01/20 Data Mining - Introduzione 17
Funzioni del Data Mining
● Metodi predittivi.● Usare alcune variabili per predirre valori ignoti o futuri di
altre variabili:– Classificazione– Regressione– Riconoscimento delle anomalie
● Metodi descrittivi.● Trovare pattern interpretabili dagli uomini che
descrivano i dati:– Analisi di raggruppamento (clustering)– Individuazione di regole associative
30/01/20 Data Mining - Introduzione 18
Classificazione (apprendimento)
● Trovare un modello che dia il valore di un attributo specifico (chiamato classe) come funzione dei valori di altri attributi.
Tid Employed Level of
Education
# years at present address
Credit Worthy
1 Yes Graduate 5 Yes
2 Yes High School 2 No
3 No Undergrad 1 No
4 Yes High School 10 Yes
… … … … … 10
Modello per predirre il merito creditizio
Class Employed
No Education
Number ofyears
No Yes
Graduate{ High school, Undergrad }
Yes No
> 7 yrs < 7 yrs
Yes
Number ofyears
No
> 3 yr < 3 yr
30/01/20 Data Mining - Introduzione 19
Classificazione (uso del modello)
class
DataSet
Training Set
ModelLearn
Classifier
Tid Employed Level of
Education
# years at present address
Credit Worthy
1 Yes Graduate 5 Yes
2 Yes High School 2 No
3 No Undergrad 1 No
4 Yes High School 10 Yes
… … … … … 10
Tid Employed Level of
Education
# years at present address
Credit Worthy
1 Yes Undergrad 7 ?
2 No Graduate 3 ?
3 Yes High School 2 ?
… … … … … 10
30/01/20 Data Mining - Introduzione 20
Classificazione: esempi
● Classificazione del terreno (laghi, aree urbane, foreste, etc...) usando dati satellitari.
● Catalogare le notizie in base alla tipologia: finanza, tempo atmosferico, intrattenimento, sport, ….
● Predirre la natura delle cellule tumorali come benigne o maligne.
● Determinare la struttura delle proteine.
30/01/20 Data Mining - Introduzione 21
Classificazione: applicazione 1
● Direct Marketing● Obiettivo: Ridurre il costo delle spedizioni postali individuando
un insieme di consumatori che è più propenso ad acquistare un nuovo prodotto per telefono cellulare.
● Approccio:– Usare i dati delle campagne pubblicitarie precedenti condotte su
prodotti simili● Sappiamo quali clienti hanno deciso di comprare e chi no. Questa
caratteristica {compra, non compra} è l’attributo classe che vogliamo predirre.
– Collezionare informazione demografiche, sullo stile di vita e sulle interazioni con la compagnia per tutti i clienti.
● Tipo di lavoro, dove vivono, quanto guadagnano, etc...– Usare queste informazioni come input per addestrare un modello
di classificazione.From [Berry & Linoff] Data Mining Techniques, 1997
30/01/20 Data Mining - Introduzione 22
Classificazione: applicazione 2
● Riconoscimento di frodi● Obiettivo: Individuare usi fraudolenti nelle transazioni
con carte di credito.● Approccio:
– Usare le transazioni delle carte di credito e le informazioni sui correntisti come attributi.
● Quando, dove, cosa compra un cliente, quanto spesso salta le scadenze, etc...
– Etichettare le transazioni passate come fraudolente o lecite. Quest’etichetta formerà il nostro attributo classe.
– Addestrare un modello per classificare le transazioni.– Usare questo modello per riconoscere le frodi osservando
le transazioni della carta di credito di un correntista.
30/01/20 Data Mining - Introduzione 23
Classificazione: applicazione 3
● Previsione degli abbandoni delle compagnie telefoniche da parte dei clienti● Obiettivo: Predirre quando è probabile che un cliente
abbandoni la compagnia per una concorrente.● Approccio:
– Usare informazioni dettagliate sulle transazioni di tutti i clienti presenti e passati per ricavare attributi utili.
● Quanto spesso il cliente chiama, dove chiama, a che ora del giorno chiama più spesso, il suo stato finanziano, il suo stato civile, etc...
– Etichettare i clienti come fedeli o non fedeli.– Trovare un modello per la fedeltà.
From [Berry & Linoff] Data Mining Techniques, 1997
30/01/20 Data Mining - Introduzione 26
Regressione
● Predirre il valore di una variabile continua sulla base del valore di altre variabili, assumendo un rapporto di dipendenza lineare o non lineare.
● Problema studiato estensivamente in statistica e nel campo delle reti neurali.
● Esempi:● Predirre l’ammontare di vendite di un nuovo prodotto
sulla base delle spese per pubblicità.● Predirre la velocità del vento come funzione della
temperatura, umidità, pressione atmosferica, etc...● Predirre il valore futuro di serie temporali, come il valori
di azioni nei mercati finanziari.
30/01/20 Data Mining - Introduzione 27
Individuazione delle anomalie
● Individuare deviazioni significative dal comportamento normale.
● Non molto diverso da un problema di classificazione
● Applicazioni:● Riconoscimento di frodi con carta di credito.● Riconoscimento di intrusi in una rete di
calcolatori.● Identificare comportamenti anomali di una
rete di sensori usata per monitoraggio o sorveglianza.
● Individuare cambiamenti nella copertura forestale globale.
30/01/20 Data Mining - Introduzione 28
Analisi di raggruppamento
● Noto anche con il termine clustering o cluster analysis.● Formare gruppi di oggetti tali che oggetti dello stesso gruppo siano simili
tra di loro, e diversi dagli oggetti che appartengono a un gruppo differente.● Misure di similarità:
● Distanza euclidea, quando gli attributi sono continui.● Altre misure specifiche per il problema.
Inter-cluster distances are maximized
Intra-cluster distances are
minimized
30/01/20 Data Mining - Introduzione 30
Clustering: applicazione 1
● Segmentazione del mercato:● Obiettivo: suddividere il mercato in sottoinsiemi distinti
di clienti, ognuno dei quali può essere considerato un bersaglio di una campagna di marketing distinta.
● Approccio: – Raccogliere diversi attributi dei clienti sulla base di
informazioni geografiche e del loro stile di vita.– Trovare gruppi di clienti simili.– Misurare la qualità dei gruppi osservando i pattern di
acquisto dei clienti nello stesso gruppo vs. quelli di gruppi differenti.
30/01/20 Data Mining - Introduzione 31
Clustering: applicazione 2
● Raggruppamento di documenti:● Obiettivo: Trova gruppi di documenti che se sono simili
tra di loro sulla base dei termini importanti che appaiono in essi.
● Approccio: – Identificare i termini che occorrono più di frequente in
ogni documento.– Formare una misura di similarità basata sulla frequenza
di questi termini.– Usare la misura di similarità per l’analisi di
raggruppamento.
30/01/20 Data Mining - Introduzione 32
Esempio di clustering di documenti
● Oggetti da raggruppare: 3204 articoli del Los Angeles Times.
● Misura di similarità: quante parole sono in comune tra questi documenti (dopo una fase preliminare di filtraggio).
Category TotalArticles
CorrectlyPlaced
Financial 555 364
Foreign 341 260
National 273 36
Metro 943 746
Sports 738 573
Entertainment 354 278
30/01/20 Data Mining - Introduzione 33
Esempio: clustering di azioni S&P
● Osservare ogni giorno i movimenti del mercato azionario.
● Oggetti da raggruppare: eventi Azione-{UP/DOWN}.● Misura di similarità: due eventi sono simili se
accadono frequentemente assieme lo stesso giorno.Discovered Clusters Industry Group
1Applied-Matl-DOW N,Bay-Network-Down,3-COM-DOWN,
Cabletron-Sys-DOWN,CISCO-DOWN,HP-DOWN,DSC-Comm-DOWN,INTEL-DOWN,LSI-Logic-DOWN,
Micron-Tech-DOWN,Te xas-Inst-Down,Te llabs-Inc-Down,Natl-Semiconduct-DOWN,Oracl-DOWN,SGI-DOW N,
Sun-DOWN
Technology1-DOWN
2Apple-Comp-DOW N,Autodesk-DOWN,DEC-DOWN,
ADV-Micro-Device-DOWN,Andrew-Corp-DOWN,Computer-Assoc-DOWN,Circuit-City-DOWN,
Compaq-DOWN, EMC-Corp-DOWN, Gen-Inst-DOWN,Motorola-DOW N,Microsoft-DOWN,Scientific-Atl-DOWN
Technology2-DOWN
3Fannie-Mae-DOWN,Fed-Home-Loan-DOW N,MBNA-Corp-DOWN,Morgan-Stanley-DOWN Financial-DOWN
4Baker-Hughes-UP,Dresser-Inds-UP,Halliburton-HLD-UP,
Louisiana-Land-UP,Phillips-Petro-UP,Unocal-UP,Schlumberger-UP
Oil-UP
30/01/20 Data Mining - Introduzione 34
Individuazione di regole associative
● Dato un insieme di transazioni, ognuna delle quali contiene un certo numero di elementi.● Produrre regole di dipendenza che predicono
l’occorrenza di elementi sulla base della presenza di altri elementi.
TID Items
1 Bread, Coke, Milk
2 Beer, Bread
3 Beer, Coke, Diaper, Milk
4 Beer, Bread, Diaper, Milk
5 Coke, Diaper, Milk
Regole associative: {Milk} --> {Coke} {Diaper, Milk} --> {Beer}
Regole associative: {Milk} --> {Coke} {Diaper, Milk} --> {Beer}
30/01/20 Data Mining - Introduzione 35
Applicazioni delle regole associative
● Analisi del carrello della spesa● In inglese: Market-basket analysis● Le regole sono usate per promuovere sconti, gestire gli
scaffali e l’inventario.● Diagnosi degli allarmi nelle telecomunicazioni
● Le regole sono usate per trovare combinazioni di allarmi che si verificano frequentemente nello stesso periodo di tempo.
● Informatica medica● Le regole sono usate per trovare combinazioni di
sintomi e risultati di test associati a certe malattie.
30/01/20 Data Mining - Introduzione 36
Regole associative: applicazione 1
● Gestione degli scaffali al supermercato● Obiettivo: Identificare oggetto che vengono acquistati
assieme da un numero sufficiente di clienti.● Approccio: Elaborare i dati di vendita collezionati con i
codici a bare per trovare dipendenze tra gli oggetti.● Una regola classica:
● { pannolini, latte } → birra.● Pertanto, si potrebbe spostare la birra vicino a latte e
pannolini per incentivare questo fenomeno!● In realtà questa regola è una leggenda metropolitana e
non sembra sia mai stata osservata in realtà.