Reti e sistemi informativi DATA MINING E DATA WAREHOUSE Marco Gottardo • • • • FONTI Wikipedia Cineca Università di Udine, Dipartimento di fisica, “il data mining scientifico” thepcweb.com giovedì 3 dicembre 2009 DATA MINING 1/2 Il Data Mining è il processo di esplorazione ed analisi, con strumenti automatici e semi-automatici, di grandi quantità di dati, al fine di scoprire strutture e regole significative L’estrazione di dati ha duplice valenza: • Estrazione, con tecniche analitiche all'avanguardia, di informazione implicita, nascosta, da dati già strutturati, per renderla disponibile e direttamente utilizzabile; • Esplorazione ed analisi, eseguita in modo automatico o semiautomatico, su grandi quantità di dati allo scopo di scoprire pattern (schemi) significativi. Un dato può essere significativo o irrilevante a seconda del tipo di applicazione in cui si intende operare. giovedì 3 dicembre 2009 DATA MINING 2/2 In sostanza il data mining è l'analisi matematica eseguita su database di grandi dimensioni Questo processo, noto anche col nome KDD (Knowledge Discovery in Databases), consente di estrarre conoscenza, in termini di informazioni significative ed immediatamente utilizzabili, da grandi moli di dati, tramite l’applicazione di particolari tecniche ed algoritmi. giovedì 3 dicembre 2009 ESEMPI Che cosa non è estrazione di dati? • Cercare un numero di telefono nell'elenco; • Fare una ricerca in Internet su "vacanze alle Maldive". Che cosa è estrazione di dati? • Scoprire che alcuni cognomi (Benetton, Troncon, Cavasin) sono molto comuni in specifiche aree dell'Italia; • Fare una ricerca nel web su una parola chiave e classificare i documenti trovati secondo un criterio semantico (p. es. "corriere": nome di giornale, professione, ecc.). I fattori principali che hanno contribuito allo sviluppo del data mining sono: • le grandi accumulazioni di dati in formato elettronico, • il data storage poco costoso, • i nuovi metodi e tecniche di analisi (apprendimento automatico, riconoscimento di pattern). Le tecniche di data mining sono fondate su specifici algoritmi. I pattern identificati possono essere, a loro volta, il punto di partenza per ipotizzare e quindi verificare nuove relazioni di tipo causale fra fenomeni; in generale, possono servire in senso statistico per formulare previsioni su nuovi insiemi di dati. giovedì 3 dicembre 2009 PRINCIPALI APPLICAZIONI IN CAMPO ECONOMICOFINANZIARIO 1/2 • Segmentazione della Clientela (Database Marketing): applicazione di tecniche di clustering per individuare i raggruppamenti impliciti nei dati, omogenei in termini di comportamento d’acquisto e di caratteristiche socio-demografiche; • Customer Retention: applicazione di tecniche previsive per individuare i clienti a rischio di abbandono; • Fraud Detection: individuazione di comportamenti fraudolenti; • Analisi delle Associazioni (market basket analysis): individuazione dei prodotti acquistati congiuntamente; • Sequential Patterns: individuazione di comportamenti ricorrenti in sequenze temporali di eventi; giovedì 3 dicembre 2009 PRINCIPALI APPLICAZIONI IN CAMPO ECONOMICOFINANZIARIO 2/2 • Competitive Intelligence: applicazione di tecniche di clustering a documenti estratti da banche dati internazionali di tipo tecnicoscientifico volte ad individuare le tecnologie emergenti, le loro relazioni, l’evoluzione temporale e le aziende coinvolte; • Analisi Testuale (text mining): individuazione degli argomenti trattati da un set di documenti e delle relazioni tra argomenti; L'utilizzo del data mining nella ricerca di mercato è volto ad ampliare la conoscenza su cui basare i processi decisionali. Nel contesto aziendale il data mining è considerato parte del processo che porta alla creazione di un data warehouse. Un pattern non è altro che la rappresentazione delle relazioni chiave che vengono scoperte durante il processo di estrazione dati: sequenze ripetute, omogeneità, emergenza di regole. giovedì 3 dicembre 2009 LE FASI DI UN PROGETTO 1/2 Si intende per progetto, in questo contesto, l’applicazione di tecniche di data mining in un ambito specifico e circoscritto, per il raggiungimento di uno specifico obiettivo. Ogni progetto si articola nelle seguenti fasi: • Individuazione delle fonti di dati • Estrazione / acquisizione dei dati (ed integrazione, se provenienti da fonti o data bases diversi) • Pre-processing (Pulizia dei dati - Analisi esplorative - Selezione - Trasformazione Formattazione) • Data Mining (Scelta dell'algoritmo - Individuazione dei parametri - Elaborazione Valutazione del modello) • Interpretazione / valutazione dei risultati • Rappresentazione dei risultati giovedì 3 dicembre 2009 LE FASI DI UN PROGETTO 2/2 Il processo ora descritto è di tipo iterativo: la fase di valutazione dei risultati può infatti portare a ripercorrere alcune delle fasi precedenti giovedì 3 dicembre 2009 TEXT MINING Il text mining è una particolare applicazione che consente di individuare sequenze di parole (pattern) che accomunano e caratterizzano un insieme di documenti e che consentono perciò il raggruppamento tematico. Questo tipo di applicazione è particolarmente utile quando si deve analizzare il contenuto di una collezione di documenti (anche provenienti da fonti eterogenee). L’individuazione di gruppi tematici consente di dare un’organizzazione all’informazione disponibile e di individuare argomenti minori, che anche ad una lettura attenta potrebbero sfuggire. Le relazioni, inoltre, mettono in evidenza legami tra argomenti apparentemente separati ma che hanno una terminologia comune. Negli ultimi anni ha avuto un notevole sviluppo, a causa dei progressi delle tecniche di elaborazione del linguaggio naturale (NLP in inglese), della disponibilità di applicazioni complesse attraverso gli Application Service Provider (ASP) e dell'interesse verso le tecniche automatiche di gestione della lingua mostrato sia dagli accademici, sia dai produttori di software, sia dai gestori dei motori di ricerca giovedì 3 dicembre 2009 ALCUNI SOFTWARE DI DATA MINING • SPSS: SPSS Clementine • SAS: SAS Enterprise Miner e SAS Text Miner • R • Oracle Data Miner • Microsoft SQL Server: strumenti di data mining del DBMS prodotto da Microsoft • Weka, datamining in Java • Orange Canvas: Software Opensource per data mining sviluppato in python giovedì 3 dicembre 2009 DATA WAREHOUSE 1/2 Un Data Warehouse è un archivio informatico contenente i dati di un'organizzazione. I DW sono progettati per consentire di produrre facilmente relazioni ed analisi. William H. Inmon, colui che ha coniato il termine DW, lo definisce come una raccolta di dati: • Integrata: requisito fondamentale di un DW è l'integrazione dei dati raccolti, dal momento che in esso confluiscono dati provenienti da più sistemi transazionali e da fonti esterne; • Orientata al soggetto: il DW è orientato a temi aziendali specifici piuttosto che alle applicazioni o alle funzioni. In esso i dati vengono archiviati in modo da essere facilmente letti o elaborati dagli utenti. L'obiettivo, quindi, è quello di fornire dati organizzati in modo tale da favorire la produzione di informazioni; • Variabile nel tempo: i dati archiviati all'interno di un DW coprono un orizzonte temporale molto più esteso rispetto a quelli archiviati in un sistema operativo. Ciò differisce da quanto si verifica in un sistema transazionale, nel quale i dati corrispondono sempre ad una situazione aggiornata, solitamente incapace di fornire un quadro storico del fenomeno analizzato; giovedì 3 dicembre 2009 DATA WAREHOUSE 2/2 • Non volatile: tale caratteristica indica la non modificabilità dei dati contenuti nel DW che consente accessi in sola lettura. Ciò comporta una semplicità di progettazione del database rispetto a quella di un'applicazione transazionale. Il data warehouse, quindi, descrive il processo di acquisizione, trasformazione e distribuzione di informazioni presenti all'interno o all'esterno delle aziende come supporto ai decision maker. Esso si differenzia in modo sostanziale dai normali sistemi gestionali che, al contrario, hanno il compito di automatizzare le operazioni di routine. giovedì 3 dicembre 2009 ARCHITETTURA DI UN DATA WAREHOUSE 1/3 • Data transformation layer: L'architettura parte dall'insieme di applicazioni che svolgono l'attività di estrazione, trasformazione e caricamento dei dati dai sistemi transazionali che alimentano il data warehouse (processo ETL: Extraction, Transformation, Loading ); • Data preparation and storage layer: Una volta che i dati hanno superato il transformation layer, essi vengono ‘stoccati’ in questo livello architetturale per consentire la creazione di sintesi informative per gli utenti (data mart e aggregazioni); • Data interpretation and analysis layer: A questo livello si trovano oggetti tra loro molto diversi per funzione e tecnologia. Le funzionalità base espletate da questo livello architetturale sono: • Aggregazione, funzionalità che provvede a costruire sintesi decisionali partendo dai dati di dettaglio presenti nel layer precedente; • Analisi, la quale consente di effettuare indagini sugli aggregati costruiti dal sistema. Tipicamente le funzionalità di analisi di un data warehouse si appoggiano su una tecnologia di tipo OLAP (On-Line Analytical Processing). giovedì 3 dicembre 2009 ARCHITETTURA DI UN DATA WAREHOUSE 2/3 • Data presentation layer: Questo livello contiene i sistemi di presentazione delle informazioni agli utenti. I sistemi appartenenti a questo livello architetturale possono essere: • strumenti specialistici di Business Intelligence: in questa categoria, molto vasta in termini di soluzioni presenti sul mercato, troviamo strumenti per costruire query, strumenti di navigazione OLAP; • strumenti di Office Automation: gli strumenti ordinari del lavoro quotidiano, come word processor e fogli elettronici. Questa è una soluzione rassicurante per gli utenti che si avvicinano per la prima volta al data warehouse, in quanto non sono costretti ad imparare nuovi strumenti complessi; • strumenti di grafica e publishing: gli strumenti di Business Intelligence sono capaci di generare grafici e tabelle per i propri utenti, la soluzione in oggetto serve sostanzialmente ad evitare inefficienti doppi passaggi. giovedì 3 dicembre 2009 ARCHITETTURA DI UN DATA WAREHOUSE 3/3 giovedì 3 dicembre 2009 I DATI DI UN DATA WAREHOUSE • Dati attuali di dettaglio: sono i dati al massimo livello di dettaglio che si ritiene possa essere utile ai processi decisionali, sulla base delle esigenze note e di quelle ragionevolmente prevedibili; • Dati storici di dettaglio: i dati di dettaglio che superano la finestra temporale del dato "attuale" ma che rientrano comunque nella finestra temporale del data warehouse vengono collocati su supporti meno impegnativi e costosi, ma anche accessibili meno comodamente; • Dati aggregati: la presenza dei dati aggregati nel data warehouse deriva da considerazioni di efficienza e praticità nella risposta alle richieste degli utenti; infatti tutte le informazioni ricavabili dai dati aggregati sono in teoria ricavabili dai dati di dettaglio, ma ciò richiederebbe di volta in volta il loro ri-calcolo; • Metadati (dati su altri dati): è l'informazione che descrive un insieme di dati, indicandone provenienza, utilizzo, valore o funzione del dato. Un esempio tipico di metadati è costituito dalla scheda del catalogo di una biblioteca, la quale contiene informazioni circa il contenuto e la posizione di un libro, cioè dati riguardanti i dati che si riferiscono al libro; giovedì 3 dicembre 2009 APPLICAZIONI DEL DATA WAREHOUSE 1/2 • Controllo di gestione: In questo caso il data warehouse viene utilizzato sostanzialmente come piattaforma di reporting e analisi di redditività; • Risk e Asset Management: l'analisi e la simulazione dei portafogli e dei relativi rischi. In questo caso il data warehouse va dotato di strumenti di analisi avanzati e basati su algoritmi statistici di analisi e simulazione; • Supporto alle vendite: In questo caso il database di marketing costituisce una base di informazioni fondamentale per indirizzare correttamente campagne e iniziative promozionali o per attivare servizi avanzati di ‘’customer care’’; • Sistema informativo di marketing: tecnologia più idonea nel momento in cui la conoscenza in oggetto è costituita prevalentemente da informazioni strutturate e preferibilmente numeriche; • Supporto al Call Center: nel caso in cui le richieste non siano di tipo strutturato e quindi risolvibili con la classica interrogazione da terminale; giovedì 3 dicembre 2009 APPLICAZIONI DEL DATA WAREHOUSE 2/2 • Knowledge Base: stesso discorso valido per il marketing; • Engineering di prodotto: piattaforma decisionale per l'analisi e la concettualizzazione di nuovi prodotti da offrire alla clientela e/o per aggredire nuovi mercati o segmenti di mercato, se esso è dotato oltre che di strumenti di analisi, anche di ambienti di simulazione e di testing di nuove soluzioni; • e-business: consente di cogliere dinamiche all'interno di rilevanti masse di transazioni on-line, inoltre l'informazione può essere uno strumento di supporto o l'oggetto stesso della transazione. giovedì 3 dicembre 2009