Home
Data Mining: tecniche di trasformazione dei dati (Parte quarta)

11 Novembre 2004

Data Mining: tecniche di trasformazione dei dati (Parte quarta)

di

Lo scopo di questo articolo (il quarto e ultimo della serie) è quello di dare indicazioni specifiche, utili alla costruzione di sistemi di Data Mining, in termini di metodologie di sviluppo e di analisi.

L’articolo, come si diceva nelle parti precedenti, propone inoltre un’indagine sulle tecniche che soddisfano le esigenze di analisi, ne descrive la possibile applicabilità e fornisce dei parametri di valutazione.

Raffinamento del/i modello/i

Basandosi sulle nuove comprensioni ottenute al passo precedente o a quello successivo di test nel mondo reale, si raffina il modello.
Si esaminano quali input hanno forte impatto sugli output, quali hanno poco impatto, quali non hanno impatto, e quali input, se combinati con altri input, hanno un forte impatto rispetto a quando sono presi da soli (congiunzione). Si cercano nuove intuizioni nelle relazioni cause-ed-effetti nei dati, si usano più dati, si includono nuovi elementi di dati, si eliminano dati che non hanno impatto, si estendono o si diminuiscono gruppi di dati per ottenere tutte le possibili intuizioni.

Scelta del modello finale

La scelta del modello, ovvero delle regole finali, si basa su considerazioni che completano l’analisi delle statistiche messe a disposizione dalle diverse tecniche.
Indicazioni quali gli obiettivi da raggiungere ed i vincoli di business, sia in termini di budget che di tempo, concorrono alla valutazione della performance di un modello.

Il rilascio di un costrutto metodologicamente ottimale potrebbe richiedere molto più del tempo effettivamente disponibile, in questi casi è preferibile perseguire soluzioni più semplici, ma in grado di fornire indicazioni più efficaci rispetto ai criteri tradizionalmente usati in azienda.
In un contesto di questo tipo disporre di una tecnologia altamente performante e ricca di tecniche costituisce l’elemento caratterizzante l’attività di Data Mining: produrre una grande quantità di modelli in modo semplice e rapido, confrontare i risultati da essi prodotti, dare una quantificazione economica della regola costruita, sono gli elementi necessari per la scelta ottimale del modello.

Validazione esterna

Non ci sono modi per stabilire la precisione che il modello promette di avere, non ci sono garanzie che esso rifletta il mondo reale.

Un valido modello non è necessariamente un modello corretto. Una delle principali ragioni per questo problema è che ci sono spesso assunzioni implicite nel modello.
Per esempio, variabili come il tasso di inflazione possono non fare parte del modello per predire la tendenza individuale di acquisto, ma un salto dell’inflazione dal 3 al 17 per cento sicuramente influisce il comportamento delle persone.

Un’altra ragione per cui un modello valido non è sempre corretto è che ci sono inevitabili problemi con i dati stessi. Non ci sono modi per dire che si è fatto un buon lavoro di preparazione con i dati, ci si può solo essere sorpresi dei dati con cui si lavora. Per esempio, si può avere avuto una coerente travisazione del reddito nei dati che si usano per costruire il modello: persone con basso reddito possono avere esagerato con le loro risposte ed essere state interpretate come persone con alto reddito.
Quindi, è importante testare il modello nel mondo reale – su un dataset indipendente che non è stato usato per creare il modello. Per esempio, se si usa il modello per selezionare un sottoinsieme da una mailing list, effettuare realmente l’invio della corrispondenza e verificare quanto sono vicine le risposte rispetto alle previsioni del modello.

Se si usa un modello per predire il rischio associato alla concessione di un credito, provare il modello su un piccolo insieme di candidati prima della completa applicazione. Poiché sono elevati i rischi associati con un modello incorretto, è molto importante effettuare un esperimento preliminare per controllare i risultati del modello.

Dispiegamento delle regole nei processi decisionali

Se inizialmente le informazioni che hanno portato a prendere decisioni corrette sono state scoperte da personale specializzato, con un certo background statistico o analitico, il lavoro non sarà finito fino a quando gli strumenti necessari ad ottenere quelle informazioni non saranno a disposizione di tutti coloro che ne hanno bisogno nel lavoro quotidiano.

Avviene così la “condivisione” del modello a tutti gli utenti che hanno l’esigenza di utilizzare le funzionalità che esso esplica. Naturalmente gli utenti devono essere preventivamente informati sull’utilizzo delle nuove regole nei processi decisionali.

La messa in opera delle nuove regole pronte all’utilizzo viene indicato con la frase inglese “deploying the model“.

Utilizzo delle nuove regole nelle business analysis

Non basta che le regole siano messe a disposizione di tutti gli utenti. Esse devono essere usate.

Ogni iniziativa che vuol far leva sui risultati del data mining deve essere preparata ad assimilare ed agire con le nuove conoscenze di business.
I risultati di data mining danno l’opportunità di cambiare la visione dei propri clienti. Per esempio, se una campagna di mailing è stata fatta prima del data mining in modo massiccio senza una discernibile strategia adesso le operazioni di mailing devono essere viste nel contesto chiamato “customer lifetime value“, in altre parole, massimizzare i ritorni del contatto con ogni cliente.

Se il modello costruito è un modello predittivo, utilizzare le predizioni per modificare il comportamento dell’azienda. Il dispiegamento del modello può richiedere la costruzione di un sistema computerizzato per catturare gli appropriati dati e generare le predizioni in tempo reale cosicché la decisione presa può essere applicata alla predizione. Per esempio, un modello che predice se una transazione effettuata con carta di credito è fraudolenta si può intervenire decidendo di bloccare la transazione e la carta di credito.

Monitoraggio e revisione del modello

Dopo che si usa il modello, si deve misurare il suo successo. Per esempio, supponiamo che è stato costruito un modello che identifica le persone propense a lasciare un servizio per un altro (questa situazione viene indicata con il termine inglese “churn“). Se si conosce il tasso degli abbandoni (churn rate) precedente all’utilizzo del modello, si può predire quale sarà il churn rate dopo il disegno degli interventi intesi a mantenere i buoni clienti. Da notare che non è il modello da solo ha determinare il successo, ma sono azioni prese basandosi sul tale modello a fornire i migliori benefici.

Solo misurando i risultati finali si può valutare precisamente un programma di data mining.
Comunque, anche quando il modello lavora bene e si pensa di aver finito, si deve continuare a monitorare le sue performance.

Nel tempo tutti i sistemi evolvono, e i dati che essi producono cambiano. È noto che i pattern di vendita cambiano nel tempo.
Variabili esterne, come in tasso d’inflazione, l’introduzione sul mercato di un nuovo prodotto, l’individuazione dei media di un nuovo argomento “caldo”, possono alterare il comportamento delle persone.

Così un modello che è valido oggi, può non essere più buono tra un mese.
Quindi col passare del tempo bisogna ri-testare, ri-addestrare e possibilmente ricostruire completamente il modello.

Fare un grafico delle differenze tra i valori previsti e quelli osservati è un eccellente modo per monitorare i risultati del modello.

Tali grafici sono facili da usare e da comprendere, non onerosi computazionalmente e possono essere costruiti con lo stesso software che implementa il modello, cosicché il sistema può monitorare se stesso.

Considerazioni

Il data mining è una grande proposta di aiuto per le organizzazioni a scoprire i pattern nascosti nei loro dati.

Comunque, gli strumenti di data mining devono essere guidati da utenti che conoscono il business, i dati e la natura generale dei complessi metodi analitici. Realistiche aspettative possono raccogliere risultati attraverso un ampio range di applicazioni, dal miglioramento delle entrate alla riduzione dei costi.

Costruire i modelli non è solo un passo nella scoperta della conoscenza. Il “migliore” modello è spesso trovato dopo la costruzione di modelli di diversi tipi e provando varie tecnologie e/o algoritmi.

Tecniche di analisi

Identificato il problema di business e preparati i dati da esplorare bisogna scegliere quale tecnica si vuole applicare per analizzare i dati.

In molte situazioni un analista può usare una varietà di tecniche, ma ogni tecnica guida l’analisi in una particolare direzione e rappresenta i risultati in modo differente.
Le varie tecniche di analisi, chiamate anche approcci, modelli o funzioni, in accordo alle categorie di applicazioni in cui possono essere usate, sono state raggruppate in sei classi principali come segue:

  • Classificazioni,
  • Regressioni,
  • Serie storiche (time series),
  • Clustering,
  • Associazioni,
  • Scoperta sequenze (sequence discovery).

Classificazioni

Le classificazioni sono forse la più comune tecnica applicata ad analisi di Data Mining. Utilizza un insieme di preclassificati esempi per sviluppare un modello che può classificare una popolazione di record molto grande.

Le applicazioni di fraud detection e di credit risk sono particolarmente indirizzate da questo tipo di analisi. Con questo approccio, per sviluppare l’algoritmo di classificazione, vengono frequentemente utilizzati gli alberi decisonali o le reti neurali.

L’utilizzo di un algoritmo di classificazione inizia con un training set di esempi di transazioni preclassificate. Per un’applicazione di fraud detection, bisogna includere i record completi di entrambe le attività fraudolente e valide.
L’algoritmo di apprendimento della classificazione utilizza questi esempi preclassificati per determinare l’insieme dei parametri necessari per poter fare una discriminazione appropriata. L’algoritmo che codifica questi parametri in un modello è chiamato “classificatore“.

Da notare che l’approccio che si utilizza influenza la capacità di spiegazione del modello. Una volta che è stato sviluppato il classificatore, esso viene usato in modo predittivo per classificare dei nuovi record nelle stesse predefinite classi. Per esempio, un classificatore capace di identificare i rischi di prestito, può essere usato per aiutare nella decisione se concedere o meno un prestito ad un cliente.

Stime

Una variante al problema delle classificazioni richiede la generazione di punteggi (score) lungo varie dimensioni dei dati. Piuttosto che sviluppare un classificatore binario, e determinare se un candidato ad un prestito è a basso o ad alto rischio, questo approccio genera un “credit- worthiness score” basandosi su un precedente training set con punteggio.

Regressioni

Le classificazioni e le regressioni sono i più comuni problemi in cui oggi è applicato il Data Mining. Si differiscono tra loro dal tipo di output che forniscono. Le classificazioni, come si evince da sopra, predicono un’appartenenza ad una classe – il candidato di un prestito appartiene alla classe dei candidati a basso rischio o ad alto rischio. Con le classificazioni l’output predetto è categorico. Le variabili categoriche sono quelle che possono assumere pochi possibili valori: “Si” o “No”, “Basso”, “Medio” o “Alto”.

Le regressioni invece predicono uno specifico valore. Ad esempio la profittabilità del cliente Mario Rossi è di 750,00 euro. Pertanto le regressioni sono usate nei casi in cui il valore da predire può avere un numero illimitato (o una moltitudine) di possibili valori. Un esempio è predire la profittabilità di un nuovo cliente.

Queste variabili di output sono usualmente chiamate continue, un termine usato anche per variabili come l’età di una persona, che non sono continue nel senso matematico del termine. Il termine regressione, come viene usato nel Data Mining, non deve essere confuso con le “regressioni lineari“, largamente usate e spesso ci si riferisce senza l’aggettivo “lineare”.
Le regressioni lineari sono delle tecniche matematiche che possono essere usate per discriminare delle variabili con una linea (o con un iperpiano se si tratta con più di due dimensioni) e predire l’appartenenza ad un semipiano o all’altro.

Gli autori del data mining e i fornitori di prodotti differenziano nettamente le classificazioni dalle regressioni. Questa distinzione è inerente con le tecniche statistiche che hanno sempre trattato variabili continue e regressioni. Solo recenti sviluppi di queste tecniche permettono di trattare con variabili categoriche.

Ma i due argomenti sono molto stretti tra loro. È molto interessante notare che, un problema di classificazione può essere convertito in un problema di regressione e viceversa.
Un problema di regressione è convertito in un problema di classificazione raggruppando i valori della variabile continua da predire in categorie discrete, un problema di classificazione può essere convertito in un problema di regressione facendo la predizione di uno score o di una probabilità per ogni categoria ed assegnare un range di score ad ogni categoria. Il raggruppamento di valori (chiamato binning) occorre quando un modello di regressione è costruito con gli alberi decisionali. Mentre le classificazioni con le reti neurali comunemente predicono uno score o una probabilità.

Serie storiche

Simili alle regressioni, ma usano le supplementari proprietà delle informazioni temporali per predire valori futuri. La caratterizzazione di questa classe di tecniche di analisi è proprio la dipendenza dei valori dal tempo.

I tool possono sfruttare le distintive proprietà del tempo, specialmente la gerarchia dei periodi (inclusi i cinque o sei giorni lavorativi della settimana, le tredici mensilità e così via), le stagionalità, gli effetti calendariali come le vacanze, le date aritmetiche e speciali considerazioni come gli eventi trascorsi possono essere rilevanti per il futuro.
Un esempio di applicazione delle serie storiche sono le analisi finanziarie che provano a predire interessanti fluttuazioni dei tassi di interesse o dell’andamento di titoli (o azioni) partendo da una serie di eventi precedenti.

Clustering

Il clustering segmenta un database in differenti gruppi. L’obiettivo è trovare dei gruppi che si differiscono tra loro e i cui membri hanno delle caratteristiche simili.

A differenza della classificazione, inizialmente non si conosce nulla sui cluster che devono essere creati e sugli attributi dei dati che devono essere raggruppati (unsupervised learning). Di conseguenza, un analista di business deve interpretare il significato di ogni cluster.
Alcune volte può capitare che gli algoritmi di clustering e di classificazione vengono usati insieme. Inizialmente viene usato un algoritmo di clustering per trovare un buon modo per raggruppare insieme istanze simili. A questo punto si designa ogni cluster come una classe e si assegna ogni istanza alla classe del corrispondente cluster. Quindi si utilizza un algoritmo di classificazione per trovare le regole per assegnare le nuove istanze ad una classe.

Associazioni

I modelli associativi trovano gli “argomenti” che occorrono insieme con un dato evento o record – la presenza di un insieme di argomenti implica la presenza di un altro insieme.
I tool associativi scoprono delle regole della forma: se l’argomento A è parte di un evento, allora X% delle volte (un fattore di confidenza), l’argomento B è parte dell’evento. Per esempio, un modello associativo può scoprire che: se un cliente acquista dei pop-corn, allora il 65% delle volte il cliente acquista anche la coca-cola, senza che sia in promozione, mentre se è in promozione il cliente acquista la coca-cola l’85% delle volte.

L’interesse nelle analisi associative è stato incrementato dal largo uso delle casse con scanner, le quali raccolgono i dettagli delle transazioni delle vendite al minuto. Questo ha portato alcune volte a chiamare le analisi delle associazioni “market-basket analysis” (MBA).

Scoperta sequenze (sequence discovery)

L’analisi della scoperta delle sequenze è simile all’analisi delle associazioni, eccetto che le relazioni tra gli argomenti sono distribuiti nel tempo. In effetti, la maggior parte degli strumenti di data mining trattano le sequenze semplicemente come associazioni i cui eventi sono collegati dal tempo.

Di regola per trovare queste sequenze, si devono catturare non solo i dettagli di ogni transazione ma anche l’identità di chi fa la transazione. Per esempio, se è eseguito un trattamento chirurgico X, allora il 45% delle volte un’infezione Y occorre entro 5 giorni.
L’analisi della scoperta delle sequenze può anche avere vantaggio dal tempo trascorso tra le transazioni che costituiscono un evento. Per esempio, si può trovare che dopo 5 giorni, la probabilità dell’infezione Y, si riduce al 4%.

Altri esempi possono essere: i commercianti possono scoprire che i genitori comprano dei giocattoli in promozione entro due settimane dall’affitto di un film per ragazzi, oppure che, un viaggiatore tende a pranzare subito dopo essere ritornato da un viaggio di lavoro.

Scelta della tecnica di analisi

Le tecniche di classificazione, regressione e serie storiche sono principalmente utilizzate per le predizioni, mentre le tecniche di clustering, associazione e scoperta sequenze sono più appropriate per descrivere le relazioni che esistono tra i dati.

Con ciò termina la prima parte dell’articolo: nella prossima uscita approfondiremo in dettaglio le tecnologie di supporto, gli alberi decisionali, le analisi statistiche, l’intelligenza artificiale, approcci ibridi… e tanto altro.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.

Corsi che potrebbero interessarti

Tutti i corsi
Big-data-analytics-iniziare-bene-cover Corso Online

Big Data Analytics - Iniziare Bene

con Andrea De Mauro

Credi che i Big Data siano una grande opportunità ma che spesso se ne parli a sproposito? Excel ti sta stretto e vorresti fare di più? Andrea De Mauro ti aiuta a fare chiarezza e ti insegna a muovere i primi passi nell'analisi dei Big Data.


Libri che potrebbero interessarti

Tutti i libri

Big Data Analytics

Analizzare e interpretare dati con il machine learning

34,90

49,89€ -30%

28,41

29,90€ -5%

19,99

di Andrea De Mauro

Machine Learning con Python

Costruire algoritmi per generare conoscenza

24,99

di Sebastian Raschka

Data Science con Python

Dalle stringhe al machine learning, le tecniche essenziali per lavorare sui dati

34,90

49,89€ -30%

28,41

29,90€ -5%

19,99

di Dmitry Zinoviev