Laboratorio informatico (datamining)
Esami
1. Informatica: durata 60 minuti.
- 1 domanda a risposta aperta di teoria 8 punti + lode.
- 1 esercizio di preparazione dei dati 10 punti.
- 1 esercizio di classificazione (2 modalità diverse) o clustering 12 punti.
Orario 8.45/10.15.
Statistica
Dispensa del corso: Boari e Cantaluppi raccolta di temi ed esercizi per il corso di laboratorio informatico per le decisioni aziendali 2° modulo statistico EDUCatt Milano 2017.
Informatica
Testo: C. Vercellis, Business Intelligence: modelli matematici e sistemi per le decisioni, McGraw-Hill, Milano, 2006 (capp. 1, 4, 5, 6; cap. 10, par. 10.1, 10.2, 10.3, 10.6; cap. 11, par. 11.1, 11.2, 11.3; cap. 12, par. 12.1, 12.2, 12.2.1, 12.3, 12.4).
(Se si segue in aula non si ha bisogno del libro).
Weka: 50.6 MB stable version without Java.
Introduzione al data mining
Negli ultimi anni, le imprese hanno effettuato investimenti significativi per migliorare la loro capacità di raccogliere dati. Questa vasta disponibilità di dati ha aumentato l'interesse nei confronti delle tecniche in grado di estrarre dai dati informazioni e conoscenza utili nei processi decisionali d'impresa.
Le tecniche di data mining sono abbastanza efficienti per lo studio dei dati. Questo aumento dei dati è stato sostenuto dall’aumento della tecnologia e dall’accesso a nuovi dati che questo ha permesso.
La tecnologia si è anche occupata di elaborare delle tecniche volte all’analisi di questa grossa mole di dati: il data mining. Capacità di ricercare conoscenze e informazioni nascoste in grandi moli di dati.
Ci si occupa dello studio di quei dati per i quali il modello di rappresentazione non è chiaro allo sviluppatore. Il data mining si occupa di cercare informazioni nascoste nei dati, aiuta il decisore a costruire un modello sulle informazioni presenti nei dati e non immediatamente estrapolabili.
Le analisi di data mining possono produrre anche un risultato negativo, egualmente informativo.
Strumenti analitici emergenti
- Real time analytics: sviluppare capacità di data mining in tempo reale (soprattutto nelle banche per profilare la clientela che sta richiedendo il finanziamento in tempo reale).
- Edge analytics: motori di data mining all’interno di alcuni dispositivi che permettono di comprendere il comportamento di un soggetto che utilizza il dispositivo stesso.
Definizione
Esplorazione e analisi di un insieme di dati di grandi dimensioni, per individuare eventuali regolarità (pattern) ed estrarre informazioni e conoscenze utili nei processi decisionali. Il data mining è finalizzato ad identificare la regolarità. La conoscenza sviluppata all’interno dei dati rappresenta un fenomeno che si sviluppa all’interno dei dati con una certa regolarità e che permette la sua modellizzazione.
Pattern e regolarità
In generale, un pattern è una rappresentazione sintetica e ricca di semantica di un insieme di dati. Normalmente, rappresenta un fenomeno ricorrente nei dati, ma può anche riferirsi a un fenomeno eccezionale.
Una regolarità per essere tale deve rispondere a certe condizioni:
- Valida sui dati con un certo grado di confidenza,
- Comprensibile dal punto di vista sintattico e semantico, affinché l’utente lo possa interpretare: il ritorno di queste informazioni deve essere agibile, utilizzabile,
- Precedentemente conosciuto e potenzialmente utile, affinché l’utente possa intraprendere azioni di conseguenza.
Esempio regolarità su slides. Due problemi: a fronte della conoscenza che ho scoperto nel campione, posso estendere all’intero universo il risultato? Il campione è significativo?
All’interno dei dati troviamo quindi le regolarità, che devono avere le loro tre caratteristiche. Dobbiamo poi trovare un modello che rappresenti in maniera selettiva la realtà. Il linguaggio con cui rappresentare il fenomeno si basa su certe regole.
Bisogna poi ulteriormente distinguere tra gli algoritmi utilizzati e il metodo utilizzato per applicare gli algoritmi.
Processo di data mining
Con il termine data mining ci si riferisce all’intero processo, che si articola nella raccolta e analisi dei dati, nello sviluppo di modelli di apprendimento a partire dai dati, nell’assunzione di decisioni e conseguente esecuzione di azioni basate su conoscenze acquisite. Si intende il processo e anche i diversi algoritmi utilizzati per fare le analisi.
Con il termine modelli di apprendimento ci si riferisce, invece, al solo insieme dei metodi matematici che sono al centro di ogni analisi di data mining e che vengono impiegati per estrarre conoscenza dai dati.
Con il termine data mining si intende un contesto organizzativo, un ‘insieme di attività al cui interno avviene l’utilizzo di un algoritmo.
Confidenza: grado di sicurezza con cui faccio uno studio sui dati.
Le analisi di data mining si basano su un concetto di apprendimento induttivo: non si ha idea se all’interno dei dati vi è il fenomeno che si sta cercando e non si ha neanche idea del metodo da utilizzare. Il metodo è induttivo allora perché apprende dai dati: è orientato a ricavare regole generali a partire da una sequenza di osservazioni riferite al passato e accumulate nel repository aziendale.
Quindi ricerca della conoscenza e sua verifica a partire dai dati. Una volta trovata la regolarità questa viene rappresentata sotto forma di regola. Vi sono le condizioni antecedenti poste sugli attributi dei soggetti su cui si fanno le analisi (individui di una popolazione).
Le analisi di data mining vengono svolte sempre su un campione di popolazione, se l’esito trovato sul campione è caratterizzato da buoni indicatori di qualità, allora il risultato può essere esteso sull’intera popolazione di riferimento, eventualmente a scopo predittivo.
Tipologie di metodi di apprendimento
Esistono due diverse tipologie di metodi di apprendimento:
- Metodi di natura informatica aventi prevalente carattere empirico,
- Metodi di natura statistica caratterizzati da un’impronta più rigorosa sul piano matematico.
Attività di data mining
Le attività di data mining possono essere distinte in base a due orientamenti:
- Descrittivo: Ricercare un fenomeno, ad esempio la segmentazione ovvero comprendere se sulla base delle caratteristiche di una popolazione è possibile individuare delle regolarità all’interno. Trovare dei gruppi tra loro più simili rispetto al resto della popolazione. Lo scopo è quindi essenzialmente quello di identificare regolarità presenti nei dati e descriverle attraverso modalità che risultino comprensibili agli esperti del contesto applicativo.
- Predittivo: è volto a prevedere il valore che una variabile casuale assumerà in futuro, ovvero a stimare la probabilità di accadimento di eventi futuri. È spesso conseguente ad un’attività di descrizione, laddove la comprensione del fenomeno venga utilizzata per prevederne l’accadimento o il comportamento futuro. In sostanza la differenza tra descrizione e predizione è più che altro riferita all’utilizzo che si intende fare della comprensione di un fenomeno.
Esempi di domande tipiche di data mining
- Quali sono le caratteristiche dei clienti più profittevoli?
- Quali sono i prodotti che facilitano la vendita di noccioline?
- Quali caratteristiche deve avere un cliente per essere interessato all’offerta di un certo prodotto di investimento?
- Quali caratteristiche ha un cliente propenso a chiudere il rapporto con la banca?
- Cosa caratterizza una transazione fraudolenta con carta?
- Come posso segmentare la clientela?
- Quali sono i testi a cui potrebbe essere interessato chi ha acquistato un certo libro?
Cosa non è data mining
Tutte le cose a cui si può abbozzare una risposta anche senza essere esperti nell’analisi dei dati:
- Analizzare l’andamento delle vendite per trimestre, prodotto, area geografica.
- Analizzare la profittabilità della clientela o dei punti vendita.
- Identificare i clienti che hanno acquistato più prodotti di una certa tipologia.
- Analizzare la composizione del portafoglio medio della clientela ‘affluent’ per valore e tipologia di prodotto di investimento.
Dati di ingresso per l'analisi di data mining
I dati di ingresso per l’analisi di data mining assumono la forma di una tabella a due dimensioni (dataset). Le righe si chiamano (singoli individui di una popolazione): osservazioni o istanze. Le colonne sono gli attributi descrittivi di ogni osservazione. Si chiamano attributi predittori (in quanto ci consentono di identificare i fenomeni che stiamo ricercando).
I valori possono essere numerici (un’etichetta o un numero): assumono un numero finito o infinito e si prestano a operazioni aritmetiche o categorici: assumono un numero finito e solitamente non molto elevato di valori distinti, ad esempio residenza o stato civile.
Attributi variabili
Un’altra cosa importante per gli attributi sono gli attributi variabili che assumono solo due valori: variabili dicotomiche. Sono attributi utilizzati come attributi target nell’attività di classificazione. Ad esempio un cliente che è propenso o non è propenso all’abbandono: gli si applica un’etichetta: 0 o 1.
Nell’ambito delle variabili dicotomiche è bene saper distinguere tra attributi simmetrici rispetto alla variabile o asimmetrici rispetto alla variabile. Attributo asimmetrico: ci interessa solo l’attributo 1: ovvero chi abbandona (cliente). Quindi l’attributo asimmetrico è quando all’interno di un attributo dicotomico uno dei due valori interessa molto di più rispetto all’altro.
In presenza di attributi asimmetrici hanno invece rilevanza tutte le istanze indipendentemente dal valore assunto. Nelle analisi di classificazione comunque esiste un attributo che assume valore maggiore rispetto ad altri attributi. Questo valore di attributo è una colonna che assume un numero limitato di valori.
Analisi di tipo supervisionato
Le analisi di data mining quindi operano su dei dataset, alcuni di questi sono caratterizzati da un attributo: attributo predittore che è l’attributo che guida l’analisi, rispetto al quale si sviluppa l’analisi. Nelle analisi di classificazione lo scopo è quello di capire perché questo attributo target assume un determinato valore sulla base degli attributi predittori.
Le analisi di data mining che utilizzano dataset nei quali è presente un attributo target si chiamano analisi di tipo supervisionato. Si chiama così perché fa da supervisore: è questo attributo che serve a stabilire la correttezza della regola. È questo attributo che ci dice se la regola è attendibile o se si sta sbagliando.
Un metodo di apprendimento si dice quindi supervisionato quando le osservazioni utilizzate per costruire il modello comprendono attributi sulla caratteristica indirizzata dal modello. Tali attributi si dicono target.
Un metodo di apprendimento si dice non supervisionato quando le osservazioni utilizzate per costruire il modello non comprendono dati sulla caratteristica indirizzata dal modello.
Tassonomia dei metodi
È possibile classificare i metodi di data mining come segue:
Metodi di apprendimento supervisionato
- Classificazione (predittivo)
- Stima (predittivo)
- Serie storiche (predittivo)
- Caratterizzazione e discriminazione (descrittivo)
Metodi di apprendimento non supervisionato
- Clustering (descrittivo)
- Regole associative (descrittivo)
- Descrizione e visualizzazione (descrittivo)
Classificazione
In un tipico problema di classificazione è disponibile un insieme di osservazioni, riferite al passato, di cui è nota la classe di appartenenza (attributo target). Ogni osservazione è descritta da un certo numero di attributi esplicativi (attributi predittori) di valore noto.
Il metodo di classificazione utilizza tali osservazioni, per identificare un modello (insieme di regole) in grado di spiegare la classe di appartenenza di ogni osservazione sulla base dei valori assunti dagli attributi predittori (regole da utilizzare per prevedere la classe di appartenenza di osservazioni future). L’attributo target è sempre categorico.
Stima
Sono analoghi ai problemi di classificazione ma l’attributo target è sempre numerico e assume valori continui. Sulla base degli attributi esplicativi disponibili (attributi predittori), ci si prefigge di predire il valore della variabile target per ciascuna osservazione, normalmente attraverso un’analisi di regressione. In certe condizioni, un problema di classificazione può essere ricondotto ad un problema di stima.
Serie storiche
Quando il valore dell’attributo target è soggetto a un’evoluzione temporale e risulta quindi associato a istanti successivi lungo l’asse dei tempi, si dice che la sequenza di valori della variabile target costituisce una serie storica. I modelli di serie storiche studiano fenomeni caratterizzati da una dinamica temporale e si propongono di predire il valore della variabile target per uno o più periodi futuri.
Caratterizzazione e discriminazione
In presenza di un attributo target categorico, prima di procedere allo sviluppo di modelli di classificazione può essere utile condurre un’analisi esplorativa finalizzata a:
- Operare una caratterizzazione, confrontando la distribuzione dei valori degli attributi per le osservazioni appartenenti ad una medesima classe (es. età dei clienti persi);
- Operare una discriminazione, confrontando la distribuzione dei valori degli attributi delle osservazioni di una classe con quella delle osservazioni di una classe diversa (es. età dei clienti rispetto a età dei clienti persi).
Le informazioni così ottenute possono essere fondamentali per guidare la selezione degli attributi.
Clustering
Con il termine cluster si identifica un gruppo omogeneo all’interno di una popolazione, in relazione al valore assunto da determinati attributi. Le tecniche di clustering mirano pertanto a segmentare un insieme di osservazioni (popolazione) in un certo numero di gruppi contenenti osservazioni tra loro affini. A differenza della classificazione, nel clustering non esistono classi predefinite ma le osservazioni vengono raggruppate in base alla loro reciproca affinità.
Rappresenta, in molti casi, una fase preliminare o successiva ad altre tipologie di analisi di data mining.
Regole associative
Si propongono di identificare associazioni interessanti e ricorrenti tra gruppi di osservazioni di un dataset. Ad esempio, vengono utilizzati per identificare quali prodotti vengono acquistati congiuntamente nel corso della medesima transazione e con quale frequenza (market basket analysis) oppure quali pagine di un sito web vengono associate e con quale frequenza nell’ambito di una navigazione all’interno del sito (web mining).
Descrizione e visualizzazione
Talvolta, l’attività di data mining si propone di fornire una rappresentazione semplice e sintetica delle informazioni presenti in un insieme di dati di grandi dimensioni. Una descrizione efficace e sintetica delle informazioni è molto utile in quanto può offrire suggerimenti per una spiegazione delle relazioni tra i dati e costituire il punto di partenza per la comprensione dei fenomeni a cui i dati si riferiscono. Si utilizzano le tecniche della statistica classica (descrittiva).
Processo di data mining
L’immagine mostra come le fasi del ciclo di vita non sono strettamente sequenziali; tornare su attività già svolte è quasi sempre necessario. Un progetto di data mining prevede 6 fasi:
- Comprensione del dominio applicativo: capire gli obiettivi e le esigenze del destinatario dell’attività di data mining e definire un piano di progetto.
- Comprensione dei dati: il primo aspetto è identificare i dati e come ottenerli all’interno del data warehouse (se c’è in azienda). Capire i dati che servono. Viene inoltre svolta un’analisi di qualità e nonché un’analisi che permetta di capire le caratteristiche salienti dei dati.
- Preparazione dei dati: 1. Produco un dataset di alta qualità, 2. Semplificazione del numero di attributi e limitazione tramite campionamento del numero di istanze e campioni.
- Creazione del modello: esistono varie possibilità in base alle quali costruire il modello più accurato.
- Valutazione del modello e dei risultati: in modo che il modello sia sufficientemente robusto da rispondere adeguatamente agli obiettivi dell’utente. Verifico il modello ad esempio su due gruppi: su uno faccio delle azioni di ritention e sull’altro non faccio niente e verifico la bontà effettiva del modello per vedere quanti clienti abbandonano effettivamente.
- Rilascio all’utente.
Il processo è un processo ricorsivo con una forte componente empirica, la componente umana quindi è abbastanza importante.
Il software di data mining
Vi possono essere vari problemi con la funzione di data mining: in particolare sul data set iniziale devono essere svolte tutta una serie di operazioni di pulizia dei dati. La parte di estrazione e comprensione dei dati pesa per più della metà di un processo di data mining.
Arffviewer: visualizzatore di dati Weka. Strumento che consente di avere una visualizzazione dei dati sotto forma di tabella riga e colonne. Noi ci occuperemo principalmente di explorer.
Experimenter permette di mettere a confronto due algoritmi applicati ai dati.
Knowledgeflow: permette di costruire applicazioni di uso aziendale a partire da Weka. L’altro vantaggio di Weka: la modalità di ragionare che si apprende con Weka è la stessa che sarà utilizzabile in azienda con altri sistemi, ad esempio SAS.
Explorer: permette di svolgere attività di: apertura, caricamento di un dataset; ispezione di un dataset; presenza di strumenti che permettono di sistemare un dataset.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Laboratorio Informatico per le Decisioni Aziendali, Data mining, primo parziale
-
Informatica - laboratorio informatico
-
Appunti di Econometria - Laboratorio Informatico Stata
-
Laboratorio biomolecolare