Oltre il Data Warehouse: Progettare la Piramide della BI Matteo Golfarelli DISI - University of Bologna - Italy [email protected] Outline Scalare la piramide della BI What-if Analysis Social business intelligence Data Mining 2 Scalare la Piramide della BI 3 Progettare e scalare la piramide L’esigenza di inserire in azienda sistemi di analisi via via più sofisticati e potenti è conseguenza dell’aumento della cultura dell’informazione che si innesca con l’utilizzo dei sistemi di BI della disponibilità di dati generati dai livelli sottostanti nella piramide della pressione competitiva esterna Quali strumenti di BI siano i più utili dipende dal tipo di business e dal tipo di problematiche che l’azienda affronta Necessità di monitorare/prevedere il mercato e i competitor soprattutto in assenza di un contatto diretto con i propri clienti finali Disponibilità di grandi moli di dati difficilmente analizzabili manualmente Necessità di prevedere il comportamento di fenomeni aziendali 4 The BI pyramid decisions SOCIAL BI user-generated content WHAT-IF ANALYSIS simulation models knowledge DATA MINING patterns and models OLAP ANALYSIS data warehouse OLTP APPLICATIONS operational data sources information data 5 What-if Analysis 6 Dal warehousing all’analisi what-if Per valutare in anticipo le conseguenze di una mossa strategica o tattica, le aziende hanno bisogno di sistemi previsionali affidabili I DW supportano l’analisi dettagliata dei dati passati, ma non sono in grado di dare anticipazioni sui trend futuri 7 Analisi what-if L’analisi what-if è una simulazione data-intensive il cui obiettivo è studiare il comportamento di un sistema complesso (il sistema-azienda o una sua parte) alla luce di una data ipotesi (scenario) Più pragmaticamente, l’analisi what-if misura come le variazioni in un insieme di variabili indipendenti impattano sui valori di un insieme di variabili dipendenti con riferimento a un dato modello di simulazione; questo modello costituisce una rappresentazione semplificata del business, tarata sui dati storici aziendali Esempio di quesito what-if nel dominio del marketing: “Come cambierebbero i miei profitti se attivassi una promozione 3X2 per una settimana su alcuni prodotti in vendita?” scenario MODELLO DI SIMULAZIONE DW previsione 8 Espressione vs. costruzione Tecniche per esprimere il modello di simulazione • Per esempio: equazioni, regole, algoritmi, matrici di correlazione, ... Tecniche per costruire il modello di simulazione Tecniche statistiche: derivano un modello a partire dal comportamento del sistema durante un periodo di tempo passato • Per esempio: regressione, data mining – non catturano le cause dei fenomeni ma solo i suoi effetti – se usate su un sistema complesso, possono fallire quando i dati storici non descrivono in modo esauriente il comportamento del sistema Tecniche di giudizio: analizzano e formalizzano i legami causa- effetto che regolano il comportamento del sistema • Per esempio: analisi congiunta e gioco di ruolo producono modelli più generali e accurati sono difficili da applicare su sistemi complessi Il problema principale del progettista è costruire un modello sufficientemente accurato da fornire all’utente una previsione utile al suo processo decisionale Non sempre complessità è sinonimo di accuratezza L’accuratezza del modello dipende spesso dalla disponibilità di dati storici di buona qualità e da algoritmi in grado di sfruttarli 9 Forecasting Largamente usato in campo bancario e assicurativo Viene eseguito estrapolando dei trend dalle serie storiche memorizzate nei sistemi informativi Fa largo uso di tecniche statistiche quali regressione e interpolazione $ Il prezzo di un prodotto varia in modo non monotono, ma il trend a lungo termine può essere approssimato come una crescita costante oggi tempo 10 System dynamics È un approccio alla modellazione del comportamento di sistemi non lineari Le relazioni causa-effetto tra eventi vengono catturate in forma di dipendenze tra variabili numeriche; in generale, queste dipendenze possono dare origine a cicli di retroazione Dal punto di vista matematico, questi sistemi vengono modellati come sistemi di equazioni differenziali, risolti con tecniche numeriche 11 Un progetto reale: redditività delle filiali di OROGEL La società opera sia mediante GDO, sia mediante proprie filiali distribuite sul territorio Obiettivo del modello è prevedere la redditività di una delle proprie filiali per l’anno successivo stimando l’andamento del mercato sulla base di un insieme di parametri di forecast prevedendo un insieme di fenomeni di perturbazione • l’aggiunta di una nuova referenza • lo spostamento di una nuova referenza da venduto a distribuito e viceversa • la rimozione di una referenza • l’aggiunta di un cliente • la rimozione di un cliente Le stime non vengono espresse al massimo livello di dettaglio, ma vengono definite per gruppi di eventi per cui ha senso supporre un comportamento similare Per ogni misura l’utente deve ipotizzare l’andamento futuro: Esprimendo una percentuale di variazione Indicando al sistema di seguire il trend degli ultimi anni 12 Metodologia ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 13 Metodologia Identificazione dei quesiti e delle variabili di previsione. Condivisione con la direzione aziendale ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 14 Metodologia Analisi del modello di business e fattori chiave che determinano la redditività di una filiale ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 15 Redditività Primo livello di decomposizione della redditività in caso di vendita tramite filiale redditività - + incasso lordo costi generali costi fissi + + costi in fattura + costi costi industriali + altri costi bonus costi variabili commissioni trasporto sconti omaggi amministrazione leasing elettricità 16 Metodologia Definizione del livello di granularità a cui effettuare la previsione ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 17 Modello dei dati Schema multidimensionale che ospiterà i dati di previsione VENDITE FILIALI Anno Mese Categoria economica Punto vendita Filiale Quantità Prezzo finale Compenso Provvigioni Costo trasporti Costo industriale Costi generali Sconti ImportoOmaggio Premi Categoria Merceologica Prodotto Fornitore Tipo Attività 18 Metodologia Si costruisce il modello definendo l’approccio, le ipotesi di previsione, le regole/formule di calcolo, ecc ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 19 Approccio alla simulazione Simulazione in due fasi: Previsione dell’andamento della filiale rispetto ad un periodo precedente preso come riferimento Perturbazione, ovvero introduzione di nuove circostanze non presenti nel periodo di riferimento: • Aggiungi cliente/i • Rimuovi cliente/i • Aggiungi referenza/e • Rimuovi referenza/e Le ipotesi di previsione (scenario) sono espresse su: Costi generali - Fissi • Stoccaggio ed energia refrigerante, acc.svalutazione crediti, ecc. Costi generali - Variabili • Gas metano, acqua, trasporti vendita c.terzi, provvigioni di vendita, ecc. Vendita • Quantità, prezzo, costo industriale Distribuzione • Quantità, compenso Costi in fattura • Provvigioni, costi trasporto, premi, sconti. 20 Definizione degli scenari e generazione dei dati di previsione Per ogni voce di costo e ricavo che contribuisce al calcolo della redditività va definito: Se e come può essere specificato nello scenario A che livello di dettaglio va definito Come deve essere calcolato Ipotesi sul prezzo dei prodotti in vendita (per categoria economica) Il prezzo delle vendite relative alla categoria economica “special” aumenterà del 2%. PrezzoFinaleST = VarPerc *(PrezzoFinale/QtaKg) * QtaKgST Ipotesi sulla quantità venduta (per filiale e categoria economica) La quantità venduta nella filiale di Udine per la categoria economica “normal trade” seguirà il trend degli ultimi 3 anni. QtaKgST = VarPerc * QtaKg 21 Metodologia La validazione è effettuata simulando fenomeni già avvenuti sulle serie storiche del DW. ANALISI DEGLI OBIETTIVI variabili & scenari MODELLAZIONE DEL BUSINESS modello di business ANALISI DELLE SORGENTI schema sorgente MODELLAZIONE MULTIDIMENS. MODELLAZIONE DELLA SIMULAZ. modello multidim. modello di simulazione PROGETTAZIONE DEI DATI IMPLEMENTAZIONE VALIDAZIONE 22 Considerazioni La costruzione di un modello per l’analisi what-if può essere un’attività molto onerosa e di cui non è certa a priori l’accuratezza Cercare di applicare a porzioni della realtà aziendale ben definiti Verificare la disponibilità di dati storici e del know how relativo al dominio Applicare solo a problematiche altamente critiche • Università di Bologna: costi del personale in base alle progressioni di carriera e agli aumenti • del costo del lavoro Target e premi degli agenti di commercio La redazione del budget mediante strumenti di BI è la più diffusa attività di analisi what-if Si basa su semplici modelli di previsione 23 Social BI 24 Motivazioni I social network e i sistemi mobile hanno abilitato nuove forme di comunicazione che si basano sulla condivisione volontaria di informazioni personali Come risultato il web mette oggi a dispozione, oltre ai tradizionali contenuti (es. riviste on-line), un’enorme quantità di user-generated content relativi ai gusti, pensieri, opinioni e azioni delle persone. Queste informazioni hanno attratto l’attenzione dei decision maker perchè forniscono un’imediata percezione dell’umore del mercato e dei suoi trend e permettono di spiegare i fenomeni di mercato ancor prima che questi impattino sul business aziendale BIG DATA 25 Una definizione La Social BI è la disciplina che mira a combinare i dati corporate con gli UGC al fine di permettere ai decision-maker di analizzare il proprio business sulla base dei trend e degli umori percepibili nel mondo esterno Come per la BI tradizionale il goal della SBI è di permettere ai decision maker, con competenze limitate in ambito informatico, di effettuare analisi potenti e flessibili 26 Il percorso • Business Intelligence 2005 • Owned Data • Web/Social Media Monitoring 2010 • User Generated Content • Social Business Intelligence 2013 • Owned Data + Social Data 2015 Global Environment Voice of the Market • ? Voice of the Customer Corporate Data KNOWLEDGE Lo scenario attuale L’analisi dei dati social media è oggi appannaggio di agenzie di web marketing e fornitori di software/servizi specialistici perché: Il primo cliente aziendale è il settore marketing Le agenzie di web marketing eseguivano già analisi similari con approcci manuali Le tecnologie necessarie non sono ancora sufficientemente diffuse e non appartengono al tipico know-out di un fornitore di software aziendale L’approccio attuale a un progetto di analisi dati social E’ orientato al progetto e non sistematizzato all’interno del SI Non consente di effettuare analisi in stile OLAP Consente limitate analisi storiche e rielaborazioni dei dati Non consente di integrare i dati social con i dati enterprise 29 ODS ERP Brand Awareness Market Prediction Strong & Weak point Risk Evaluation Finance Marketing Il vantaggio di una soluzione unificata Marketing Campaign Planning & Evaluation Investments Analysis Product Perception Customer Fidelization and Retention R&D CRM Fast Interactions Crowd-based product evolution Enterprise Funzionalità L’analisi di dati social si basa sull’interpretazione sintattico, lessicale e semantica del testo al fine di individuare I topic più utilizzati I topic più trendy Le relazioni tra topic • Quali topic vengono utilizzati assieme • Quali aggettivi/verbi sono utilizzati per caratterizzare un topic La polarizzazione delle frasi o dei topic che le contengono Ogni testo può essere accoppiato con i meta dati che lo accompagnano permettendo così di specializzare l’analisi per Data Profilo dell’autore Fonte e tipologia di fonte (blog, TW, FB, rivista, ecc.) Geo-localizzazione 32 L’analisi utente: il caso del marketing digitale Cosa si dice del nostro marchio e dei nostri prodotti Punti di forza (polarizzazioni positive) e di debolezza (polarizzazioni negative) Alerting su post critici Analisi dell’andamento delle campagne pubblicitarie Quanto se ne parla? Analisi dei testimonial Analisi dei competitor Analisi del mercato Nuovi trend Problematiche emergenti 33 Un’architettura per la Social BI UGC Crawling ontology/di ctionary Semantic Enrichment ETL Data Mart ETL ODS docs OLAP domain ontology E. Gallinucci, M. Golfarelli, S. Rizzi. Meta-stars: multidimensional modeling for social business intelligence. Proceedings 16th International Workshop on Data Warehousing and OLAP (DOLAP 2013), S. Francisco, USA, pp. 11-18, 2013 34 L’analisi del testo: semantic enrichment L’analisi del testo può essere fatta con tecniche profondamente diverse… Natural Language Processing Text Mining …che permettono di effettuare analisi simili, ma con un diverso livello di approfondimento Identificazione dei legami sintattici vs cooccorrenza Ogni testo può essere accoppiato con i meta dati che lo accompagnano permettendo così di specializzare l’analisi per Data Profilo dell’autore Fonte e tipologia di fonte (blog, TW, FB, rivista, ecc.) Geo-localizzazione 35 NLP – Natural Language processing Presuppone la completa interpretazione del testo Morfologica: analizza i morfemi, le più piccole unità di analisi della lingua, che concorrono alla formazione delle parole: • il termine “preregistrazione” è formato dal suffisso “pre” e dal termine “registrazione” Lessicale: • Matteo [nome proprio, maschile, singolare] • dà [voce del verbo dare, 3 persona singolare, presente] • un [art. indeterminativo] • libro [nome comune, maschile, singolare] • a [prep. semplice] • Fabio [nome proprio, maschile, singolare] Sintattica: determina il ruolo del termine nella frase Semantica: stabilisce il significato di una frase interpretando correttamente le relazioni sintattiche tra i termini in base al contesto Dà buoni risultati quando il testo analizzato non contiene errori 36 di sintassi, dialetti web, ecc. NLP – Natural Language processing L’interpretazione del testo pone problemi di ambiguità “Personalmente odio la pesca!“, il frutto o lo sport? “Luigi ha visto un uomo nel parco con il binocolo“, Chi aveva il binocolo? Marinaio: “Capitano, siamo attaccati dai monsoni!” Capitano: “allora ci batteremo con onore!” Marinaio: “ma capitano, i monsoni sono venti!” Capitano: “anche se fossero cento, li batteremo comunque!!!“ 37 Considerazioni Sia che si parli di Social BI sia che si parli di Media monitoring l’interesse per lo sfruttamento degli UGC è molto elevata Oggi i costi di progetto sono in larga parte determinati dall’utilizzo di software commerciale Motori di crawling per l’acquisizione dei dati dal web Motori semantici per l’arricchimento dei dati Le modalità di diffusione di questi sistemi sarà influenzata dal: Diffondersi di software open source o con prezzi più accessibili La verifica del reale impatto che le informazioni social hanno sull’andamento delle aziende 38 Data Mining 39 Dal warehousing al mining La maggior parte delle aziende dispone di enormi basi di dati contenenti dati di tipo operazionale, che costituiscono una potenziale miniera di informazioni utili Nei sistemi DBMS e DW attuali le possibilità di estrarre conoscenza sono limitate: infatti, in presenza di moli di dati molto elevate, l’utente non è sempre in grado di individuare tutti i pattern (modelli) significativi presenti Il data mining è un’attività orientata a scoprire informazioni nascoste nei dati; esso raccoglie tecniche di intelligenza artificiale e pattern recognition per aiutare l’utente nella ricerca di pattern: è sufficiente indicare cosa e dove si vuole ricercare 40 Data mining Processo di estrazione di conoscenza da banche dati di grandi dimensioni tramite l’applicazione di algoritmi che individuano le associazioni “nascoste” tra le informazioni (pattern) e le rendono visibili I pattern devono essere: Validi Precedentemente sconosciuti Potenzialmente utili Comprensibili 41 Esempio Record di vendite id transazione id cliente prodotti comprati T1 cust33 p2, p5, p8 T2 cust45 p5, p8, p11 T3 cust12 p1, p9 T4 cust40 p5, p8, p11 T5 cust12 p2, p9 T6 cust12 p9 Osservazioni: I prodotti p5 e p8 vengono spesso comprati assieme Al cliente 12 piace il prodotto p9 42 Esempio Prestiti o x x x x x x x x x x x x x o x o o o o o o x o o o o o o o o Stipendio Persone che hanno ricevuto un prestito dalla banca x: persone che hanno mancato la restituzione di rate o: persone che hanno rispettato le scadenze 43 Esempio Prestiti o x x x x x x x x x x x x o x o o o o x k o o x o o o o o o o o Stipendio IF stipendio < k THEN mancati pagamenti 44 Tipi di pattern Regole associative consentono di determinare le regole di implicazione logica presenti nella base di dati, quindi di individuare i gruppi di affinità tra oggetti Classificatori consentono di derivare un modello per la classificazione di dati secondo un insieme di classi assegnate a priori Clustering raggruppa gli elementi di un insieme, a seconda delle loro caratteristiche, in classi non assegnate a priori Serie temporali Permettono l’individuazione di pattern ricorrenti o atipici in sequenze di dati complesse Pattern interessanti perchè inattesi I pattern restituiti richiedono una interpretazione da parte dei tecnici e degli utenti Evitare che i parametri utilizzati e le trasformazioni applicate ai dati non forniscano informazioni fuorvianti Complementare le informazioni ottenute con la conoscenza di dominio non modellabile Selezionare i pattern effettivamente interessanti + Pattern che ci si attende siano frequenti - Pattern che ci si attende siano non frequenti Pattern rivelatesi frequenti Pattern rivelatesi non frequenti + - + Pattern attesi Pattern inattesi CRISP-DM: un approccio metodologico Un progetto di Data mining richiede un approccio strutturato in cui la scelta del miglior algoritmo è solo uno dei fattori di successo La metodologia CRISP-DM è una delle proposte maggiormente strutturate per definire i passi fondamentali di un progetto di Data Mining Le sei fasi del ciclo di vita non sono strettamente sequenziali. Tornare su attività già svolte è spesso necessario http://www.crisp-dm.org/ Alcune applicazioni Approvazione di prestiti e crediti Segmentazione di mercato Profilazione dei clienti Applicazioni finanziarie Commercio elettronico Ricerche di mercato Studio dell’efficacia del marketing Analisi delle abitudini di acquisto Pianificazione aziendale Modellazione degli investimenti Rilevamento di attività fraudolente Valutazione delle categorie di rischio Riconoscimento di similarità tra sequenze di eventi Valutazione di casi clinici e studio di modelli epidemiologici 48 Regole associative Consentono di determinare le regole di implicazione logica presenti nella base di dati, quindi di individuare i gruppi di affinità tra oggetti Le regole associative sono utilizzabili a fini descrittivi 49 Un esempio la market basket analysis Dati un insieme di scontrini fiscali (transazioni), riportanti i prodotti (item) acquistati assieme….. Record di vendite id transazione id cliente prodotti comprati T1 T2 T3 cust33 cust45 p2, p5, p8 p5, p8, p11 p1, p9 T4 cust12 cust40 p5, p8, p11 T5 cust12 p2, p9 T6 cust12 p9 Trovare le regole trovare regole che correlano la presenza di un insieme di prodotti X con un altro insieme Y Il risultato potrebbe essere {scarpe} {calze} 50 Supporto e Confidenza Regola X Y (X,Y I) Supporto S, indica la rilevanza statistica: #trans. contenenti X Y #trans. totali Confidenza C, indica la significatività dell’implicazione: #trans. contenenti X Y #trans. contenenti X Obiettivo: determinare tutte le regole con supporto e confidenza superiori ad una soglia data 51 Applicazioni Nel campo del marketing: studio delle abitudini di acquisto pubblicità mirata organizzazione della merce sugli scaffali studio della variabilità delle vendite in assenza di un certo prodotto 52 Classificazione Consente di derivare un modello per la classificazione di dati secondo un insieme di classi assegnate a priori Presuppone la disponibilità di un insieme di oggetti etichettati con il nome della classe di appartenenza (training set) da utilizzare per l’addestramento del classificatore il profilo descrittivo per ogni classe, è basato sulle feature degli oggetti di quella classe contenuti nel training set I sistemi di classificazione possono essere utilizzati per Descrivere il profilo di classe Prevedere la classe di appartenenza per nuovi oggetti 53 Costruzione del modello ALGORITMI DI CLASSIFICAZIONE TRAINING DATA NOME QUALIFICA ANNI CATTEDRA Mike Assistant Prof. 3 no Mary Assistant Prof. 7 yes Bill Jim Dave Professor Associate Prof. Assistant Prof. 2 7 6 yes yes no Anne Associate Prof. 3 no CLASSIFICATORE (MODELLO) IF qualifica = ‘Professor’ OR anni > 6 THEN cattedra = ‘yes’ 54 Uso del modello per previsioni CLASSIFICATORE DATI NUOVI TESTING DATA (Jeff, Professor, 4) NOME QUALIFICA ANNI CATTEDRA Tom Assistant Prof. 2 no Merlisa Associate Prof. 7 no George Professor Joseph Assistant Prof. 5 yes 7 yes cattedra? YES! 55 Applicazioni profilazione dei clienti identificazione del rischio in mutui/assicurazioni efficacia trattamenti medici …. 56 Alberi decisionali Vengono usati per la comprensione di un particolare fenomeno poiché permettono di identificare, in ordine di importanza, le cause che portano al verificarsi di un evento Vantaggi: Veloci rispetto agli altri metodi Facili da interpretare tramite regole di classificazione Possono essere convertiti in interrogazioni SQL per interrogare la base di dati 57 Esempio ETA` TIPO AUTO 40 65 20 25 50 Eta` < 26 si familiare sportiva utilitaria sportiva familiare CLASSE RISCHIO basso alto alto alto basso no Alto Tipo auto sportiva utilitaria familiare Alto Basso Alto 58 Considerazioni Mentre i progetti di data warehousing portano normalmente a un risultato aziendalmente utile, nei progetti di data mining il rischio che i dati a non permettano di inferire informazioni utili è più elevato Dati di scarsa qualità ai fini del DM Assenza di pattern rilevanti La complessità delle tecniche di data mining richiede la presenza di esperti in grado di: Scegliere e parametrizzare le tecniche Interpretare i risultati 59 Domande? 60