Estratto del documento

DATA MINING

DATA SCIENCE = HACKING SKILLS + MATH/STATISTICAL KNOWLEDGE + SUBSTANTIVE EXPERTISE + Machine

learning + Danger zone + Traditonal research

Cos’è il Data Mining?

Problema dell’esplosione dei dati:

L’uso dell’archiviazione informatica unita alla tecnologia dei database porta ad avere collezioni di informazione di

dimensioni impressionanti.

La quantità dei dati memorizzata su supporti informatici è in continuo aumento

• Pagine Web, sistemi di e-commerce

• Dati relativi ad acquisti/scontrini fiscali

• Transazioni bancarie e relative a carte di credito

• Internet of Things

L’hardware diventa ogni giorno più potente e meno costoso

Velocity : speed at which data are generated and analyzed

Variety : Different types and forms of data, including large amounts of unstructured data

Value : potential of big data for socio-economic development

Veracity : level of quality, accuracy and uncertainty of data and data sources

Volume : Vast amounts of data generated through large-scale datafication and digitalization of information

La pressione competitiva è in continua crescita. L’informazione è un bene prezioso per superare la concorrenza.

We are drowning in data, but starving for knowledge! Avere molti dati è vantaggio, ma complica la loro gestione.

Per utilizzarli occorrono strumenti sempre più sofisticati.

DATA MINING (knowledge discovery in databases)

Estrazione di informazioni non ovvie, precedentemente non note e potenzialmente utili contenute in grandi

quantità̀ di dati. PATTERN!!

Un pattern è una rappresentazione sintetica e ricca di semantica di un insieme di dati; esprime in genere un modello

ricorrente nei dati, ma può anche esprimere un modello eccezionale.

Un pattern deve essere:

• Valido sui dati con un certo grado di confidenza

• Comprensibile dal punto di vista sintattico e semantico, affinché l’utente lo possa interpretare

• Precedentemente sconosciuto e potenzialmente utile, affinché utente possa intraprendere azioni di conseguenza

Presentare conoscenza anziché soltanto dati è essenziale in una serie di situazioni:

• Analisi di Database (Estrazione di regole, Associazioni)

• Analisi di Mercato (Customer profiling, Marketing)

• Analisi di Rischio (Finance planning, Investimenti)

• Individuazione di Frodi (Carte di credito, Sofisticazioni alimentari)

• Supporto alle Decisioni (Resource management, Allocazione)

• Analisi Mediche (Diagnosi, Gestione donatori)

• Text mining (news-group, email, documents) nel Web

• Analisi di Politiche Economiche o Sociali (Rule learning)

• Analisi di Eventi Rari...

- English and writing recognition

- Fingerprints recognition

- Stock market behavioral recognition

- Autonomous navigation

- Cancer detection

Il Data mining è il cuore del processo di Knowledge Discovery in Databases (KDD)

Knowledge : know-how, undestranding, experience, insight, intuition, and contextualized information

Information : contextualized, categorized, calculated and condensed data

Data : facts and figures which relay something specific, but which are not orgnized in any way

→ → →

Databases Data Wareahouse Task-relevant Data Pattern

Pattern Knowledge

Fasi del processo di Knowledge Discovery in Databases (KDD)

1. definizione e comprensione del dominio applicativo: individuare le effettive problematiche di business e gli

obiettivi da realizzare;

2. creazione di un target data set: selezione di un sottoinsieme di variabili e di dati o di un campione dei dati;

3. data cleaning e pre-processing: operazioni per attenuare il rumore nei dati, o degli outlier, selezione delle

informazioni necessarie per generare il modello; decisioni sul trattamento dei campi mancanti o incompleti, dei

dati rari (con un’eventuale sovra-campionatura) sulla definizione della storicità e sull’aggiornamento dei dati;

aggiunta di variabili derivate e indicatori che hanno valori ricavabili da dati già esistenti.

4. data reduction e projection: definizione della modalità di rappresentazione dei dati secondo gli obiettivi posti,

utilizzo di metodi per ridurre il numero delle variabili;

5. scelta del ruolo dei sistemi di data mining per l'analisi: utilizzo dei sistemi di data mining per classificazione,

regressione, clusterizzazione, etc.

6. scelta del o degli algoritmi di data mining: selezione dei metodi per la ricerca di pattern, decidendo quali modelli

o parametri possono essere più appropriati, integrazione dei metodi di data mining scelti con l'intero

processo di scoperta della conoscenza;

7. data mining: ricerca di modelli di interesse per l'utente, con raffinamenti successivi, presentati secondo definite

modalità di rappresentazione (classificazione, alberi di decisione, regressione, cluster analysis )

8. interpretazione dei modelli identificati: analisi e verifica dei risultati con possibile retroazione ai punti precedenti

per ulteriori iterazioni al fine di migliorare l’efficacia dei modelli trovati;

9. consolidamento della conoscenza scoperta: integrazione della conoscenza e valutazione delle performance del

sistema, mettendo a confronto i risultati con l’effettivo andamento nella realtà dei fatti e produzione della

documentazione agli utenti finali o a terze parti interessate.

DATA MINING

• Classificazione: apprendimento di una funzione per mappare oggetti in un insieme predefinito di classi.

• Regressione: apprendimento di una funzione per mappare un oggetto in un valore reale.

• Clustering: identificazione di una collezione di gruppi di oggetti simili.

• Apprendimento di Dipendenze e Associazioni: identificazione di dipendenze significative tra gli attributi dei dati.

• Apprendimento di Regole e Sommarizzazione: individuazione di una descrizione compatta di un insieme o

sottoinsieme di dati.

ESEMPI

Classificazione: Fraud Detection

• Training set: un insieme di punti sperimentali (dati) usati per la fase di apprendimento del metodo di Data

Mining. La variabile dipendente è nota. (TRAINING DATA)

• Test set: questo dataset è utilizzato solo per l’assessment finale del metodo di classificazione o regressione. Le

osservazioni contenute in questo dataset non sono mai stati usati durante la fase di training. (TEST DATA)

Regressione: Previsione Vendite Clustering: Market Segmentation

Associazione: Basket analysis

Esempi di tecniche di Data Mining

Sono state proposte molte e diverse tecniche, aventi ognuna specifiche caratteristiche e vantaggi.

• Alberi di Decisione: C4.5, CART, IC3.

• Reti neurali (ANN): Perceptron, a singolo strato, multi-strato, Backpropagation, Radial-Basis Function, networks.

• Metodi Bayesiani: Bayesian Learning, Bayesian belief network, Bayesian Classifiers.

• Support Vector Machines (SVM)

• Association/Pattern Discovery: Regole di associazione e dipendenze, pattern sequenziali.

In generale, una tecnica di data mining ha il compito di costruire un modello a partire da dati storici.

Un metodo si dice supervisionato quando i dati di “addestramento” comprendono un insieme di esempi sulla

caratteristica di interesse

Esempio - Classificazione

Un metodo si dice invece non supervisionato quando i dati di addestramento non comprendono dati sulla

caratteristica di interesse

Esempio – Clustering

Uso del Data Mining Il processo di Data Mining

IL PROCESSO DI DATA MINING

Le sei fasi del ciclo di vita non sono strettamente sequenziali. Tornare su attività già svolte è spesso necessario.

1) Business understanding: capire gli obiettivi del progetto dal punto di vista dell’utente, tradurre il problema

dell’utente in un problema di data mining e definire un primo piano di progetto

2) Data understanding: raccolta preliminare dei dati finalizzata a identificare problemi di qualità e a svolgere analisi

preliminari che permettano di identificarne le caratteristiche salienti

attività̀

3) Data preparation: comprende tutte le necessarie a creare il dataset finale: selezione di attributi e record,

trasformazione e pulizia dei dati

4) Modeling: diverse tecniche di data mining sono applicate al dataset anche con parametri diversi al fine di

individuare quella che permette di costruire il modello più accurato

5) Evaluation: il modello/i ottenuti dalla fase precedente sono analizzati al fine di verificare che siano

sufficientemente precisi e robusti da rispondere adeguatamente agli obiettivi dell’utente

6) Deployment: il modello costruito e la conoscenza acquisita devono essere messi a disposizione degli utenti.

Questa fase può quindi semplicemente comportare la creazione di un report oppure può richiedere di

implementare un sistema di data mining controllabile direttamente dall’utente

a) Exploratory Data Analysis (EDA): analisi esplorativa dei dati per comprendere la loro natura e le loro

caratteristiche.

b) Valutazione di misure di sintes i quantitative, rappresentazioni dei dati o, ad esempio, identificazione di

variabili indipendenti con forte correlazione.

c) Individuazione del primo draft di come le variabili indipendenti verranno utilizzate nel modello sulla base delle

precedenti iterazioni

d) Sulla base dei modelli scelti e dell’insieme dei parametri che possono essere modificati inizia una fase iterativa

per individuare il miglior setting per ogni modello.

e) Definiti i modelli, quest’ultimi vengono valutati sui dati a disposizioni e dedicati a questi fase. Specifiche misure

vengono utilizzate per valutare le performance dei modelli.

f) Analisi quantitative, come ad esempio analisi dei residui, possono essere utilizzate per valutare ulteriormente i

modelli.

g) Successi vamente all’analisi dei risultati e all’individuazione dei limite dei modelli, una fase di affinamento dei

modelli può iniziare per migliorare ulteriormente le performance.

h) A questo punto i migliori modelli possono essere selezionati per le fasi successive.

i) I modelli selezionati possono essere valutati su quello che viene definito “test set”.

j) Il modello finale viene quindi utilizzato per prevedere istanze del problema mai incontrate.

ALCUNE INFORMAZIONI SU R

R is data analysis software: data scientists, statisticians, analysts and others who need to make sense of data use

R for statistical analysis, data visualization, and predictive modeling.

R is an environment for statistical analysis: Available in the R language are functions for virtually every data

manipulation, statistical model, or chart that the data analyst could ever need

R is a programming language: you do data analysis in R by writing scripts and functions in the R programming

language. R is a complete, interactive, objectoriented language: designed by statisticians, for statisticians.

R is an open-source software project. Not only does this mean that you can download and use R for free, but the

source code is also open for inspection and modification to anyone who wants to see how the methods and

algorithms work under the covers.

R is a community. The project leadership include more than 20 leading statisticians and computer scientists from

around the world. In addition, there are more then 2 million users worldwide.

PRO

• gratuito, multi-piattaforma,

• implementa la stragrande maggioranza degli algoritmi e delle procedure,

• statistiche attualmente disponibili,

• facilmente interfacciabile con quasi tutto,

• gestito dagli sviluppatori,

• comunità on-line ampia e viva,

• è un linguaggio di programmazione, quindi è molto flessibile.

CONTRO

• poco user-friendly,

• curva di apprendimento inizialmente ostica,

• è più linguaggio di programmazione che un tipico software di statistica.

• R può essere considerato come una implementazione di S (ambiente/ linguaggio per l’analisi dei dati), che è una

linguaggio sviluppato presso i BELL Laboratories della AT&T nel 1976

• All’inizio degli anni ‘90 R. Gentleman e R. Ihaka (University of Auckland, NZ) iniziano lo sviluppo di R

• Nel 1997 è nato l'R Development Core Team, gruppo formato da statistici di tutto il mondo che si occupano

dello sviluppo e della distribuzione del programma

• Vi è un nucleo centrale che contiene l’interprete di R e alcune funzionalità di base

• Tutte le altre funzionalità sono rese disponibili attraverso pacchetti (packages)

• Alcuni pacchetti (circa 25) sono presenti nella distribuzione base, come ad esempio: base, utils, stats, datasets,

graphics,grDevices,methods,boot,cluster,codetools,foreign,KernSmooth, lattice, mgcv, nlme, rpart, survival, MASS

• ci sono 2000 pacchetti, disponibili da utilizzatori di R (Contributed Packages), che riguardano "tutto il resto"

Rstudio, che è un ambiente di sviluppo (IDE) gratuito ed open source, che può essere utilizzato sul proprio

desktop (Windows, Mac, or Linux) o via web, utilizzando RStudio Server.

R “produce” due tipi di file:

.R, l’equivalente di un file di testo o di un file .m (contiene, ad esempio, le function)

.Rdata, raccoglie gli oggetti (ovvero la variabili, le matrici, i vettori che abbiamo creato). E’ l’equivalente di un .mat

• R è un linguaggio object-oriented

• Un oggetto è una “entità che R crea e manipola: variabili, matrici, stringhe di caratteri, funzioni...”

ESERCIZI

1. Operazioni aritmetiche ed algebriche

• Creare un vettore y che contenga gli elementi 7, 14, 21, 28, 35, 42. Estrarre il terzo elemento del vettore x e

stamparlo a video.

• Per ciascun valore di y, calcolare il logaritmo e la radice quadrata. Allocare entrambi i vettori rispettivamente in

x.log e x.sqrt.

• Calcolare la media, la mediana, la varianza e la deviazione standard di x. Calcolarne poi il coefficiente di

variazione. Calcolare infine la correlazione con il vettore y = {-2, 4, 13, -5, 43, 27}

2. Analisi descrittive

• Leggere il file “calcio.RData” in R.

• Verificare le tipologie di variabili presenti nel dataset calcio.

• Controllare se esistono dei dati mancanti nel dataset.

• Presentare una tabella indicante il numero di partite in casa effettuate da ciascuna squadra. Presentare poi la

stessa tabella in termini relativi (frequenze relative). Quali squadre hanno giocato maggiormente in Serie A? Quali

di meno?

• Rappresentare la variable HomeTeam con un grafico appropriato.

• Calcolare i principali indici descrittivi per la variabile B365H. Rappresentarla poi tramite istogramma ed il

boxplot. Sono presenti outlier? Da cosa è possibile intuirlo?

• Effettuare quindi la medesima analisi sulla trasformazione logaritmica di B365H. Sono presenti outliers?

DATA PREPARATION

Dopo la raccolta dei dati di interesse, la loro preparazione è un passo fondamentale nel processo di Data Mining.

Nella preparazione del dataset finale vanno controllati differenti aspetti delle variabili disponibili, come:

• Presenza di valori estremi (extreme values);

• Range di variazione delle variabili;

• Massimo e minimo di ogni variabile;

• Individuazione dei dati mancanti (missing value).

Necessità di normalizzazione dei dati

Normalizzazione

= ( – ()) / (() – ()) = 1, … ,

con

Standardizzazione

( )

= = = 1, … ,

con

MISSING VALUES

Uno dei più gravi problemi che si possono presentare durante l’analisi è la mancanza di dati per alcune variabili

(missing values).

La serietà del problema dipende essenzialmente dalla:

struttura dei dati mancanti: la struttura dei dati mancanti deve essere casuale, altrimenti è difficile generalizzare i

risultati che si ottengono; assumere l’andamento casuale è molto rischioso, è infatti sempre necessario testarlo

ammontare dei dati mancanti: se in un campione abbastanza grande i dati mancanti sono pochi il problema è quasi

irrilevante ed esistono molte tecniche risolutive; al contrario se i dati mancanti sono molti e il campione è di piccole

dimensioni il problema è piuttosto rilevante e difficilmente risolvibile

Missing completely at random (MCAR)

Il processo che ha determinato la non rilevazione è completamente indipendente dal valore mancante e da qualsiasi

altra variabile disponibile

Missing at random (MAR)

Il processo che ha determinato la non rilevazione è completamente indipendente dal valore mancante ma può

dipendere da altre variabili disponibili.

Not missing at random (NMAR)

La probabilità che un valore sia mancante è collegata alla variabile stessa di cui si stanno raccogliendo i valori.

Missing completely at random (MCAR)

Il processo che ha determinato la non rilevazione è completamente indipendente dal valore mancante e da qualsiasi

altra variabile disponibile

La probabilità che un certo valore per una data variabile sia missing è indipendente da qualsiasi altro valore per

qualsiasi altra variabile, missing o osservata.

Ovvero i valori missing values sono distribuiti aleatoriamente

Esempi

Esperimento : Avviamo più prove sperimentali con un ordine casuale. Le

concludiamo dopo 30 minuti.

Sondaggi : Chiediamo un numero di domande sorteggiate casualmente.

Limitiamo al 30% del campione (casuale) un certo item

Data entry : Inseriamo gli item in disordine sorteggiandoli dal mucchio.

Fermiamo l’inserimento dati a intervalli aleatori.

Missing at random (MAR)

Il processo che ha determinato la non rilevazione è comp

Anteprima
Vedrai una selezione di 16 pagine su 71
Appunti Data Mining Pag. 1 Appunti Data Mining Pag. 2
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 6
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 11
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 16
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 21
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 26
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 31
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 36
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 41
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 46
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 51
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 56
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 61
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 66
Anteprima di 16 pagg. su 71.
Scarica il documento per vederlo tutto.
Appunti Data Mining Pag. 71
1 su 71
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher aina.belloni di informazioni apprese con la frequenza delle lezioni di data mining e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Milano - Bicocca o del prof Borrotti Matteo.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community