Che materia stai cercando?

Anteprima

ESTRATTO DOCUMENTO

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.

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 la

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.

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 super visore: è 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:

I metodi di apprendimento supervisionato sono:

- Classificazione, (predittivo)

- Stima, (predittivo)

- Serie storiche, (predittivo)

- Caratterizzazione e discriminazione (descrittivo).

I metodi di apprendimento non supervisionato sono:

- Clustering (descrittivo)

- Regole associative (descrittivo)

- Descrizione e visualizzazione (descrittivo).

1. 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.

2. 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.

3. 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.

4. 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.

5. 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.

6. 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).

7. 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 datawarehouse (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 data set; ispezione di un

dataset; presenza di strumenti che permettono di sistemare un dataset.

Edit: consente di visualizzare il dataset in forma tabellare.

Se vi sono cella in grigetto ci si accorge subito che mancano dei dati.

Sulla sinistra ci sono informazioni sul dataset: il data set viene chiamato relation.

Sotto vi sono gli attributi di cui è composto il dataset.

Se si clicca su un attributo sulla destra escono le caratteristiche di questo attributo, si può

effettuare la cosiddetta caratterizzazione dell’attributo.

Dice come sono poi distribuiti gli attributi per classi. Ovvero permette di vedere come sono

distribuiti gli attributi per classi (grafico in rosso blu).

L’ispezione grafica permette anche di individuare una eventuale correlazione tra due attributi.

Tutte le volte che si individuano due attributi che sono tra loro fortemente correlati, vuol dire che ci

danno la stessa informazione.

Se ciò accade allora va eliminato uno dei due attributi: in modo da diminuire il rumore nel dataset.

Vi è poi la funzione filter: non sono altro che delle funzioni weka che permettono di essere

applicate sugli attributi e sulle distanze: sono funzioni che permettono di manipolare gli attributi.

Se non riesco a riempire dei buchi vuoti nei dati, allora per poter utilizzare quel dataset, l’unica

cosa possibile è sostituire quel dataset: sostituisco il valore numerico con la media dei valori o il

valore categorico con la moda.

Il tasto save permette di salvare le modifiche.

Generate: funzione che permette di creare dei dataset.

Per caricare un dataset da excel a Weka come si fa?

Innanzitutto vedere che non ci sono sporcizie nelle colonne e righe adiacenti. (selezionarle tutte e

fare elimina).

Poi salvare il file: salva con nome e salvare con il formato testo (con valori delimitati con

tabulazioni).

Da Weka allora caricare il file: tipo file tutti i file e aprire il file.

Fledseparator: \t (in base a cosa dice quando ci passi sopra).

Poi con Save si salva in formato arf.

COMPRENSIONE DEI DATI.

Analisi esplorativa : attività propedeutica alla preparazione dei dati: osservo i dati. L’analisi

esplorativa ha lo scopo di evidenziare, mediante l’applicazione di metodi grafici e il calcolo di

indicatori statistici sintetici, le principali caratteristiche di ciascun attributo presente in un dataset e

di individuare l’intensità della relazione che lega gli attributi tra loro.

Il processo di analisi esplorativa si compone normalmente di tre fasi:

- analisi univariata, che studia le proprietà di ogni singolo attributo del dataset;

- analisi bivariata, che prende in considerazioni coppie di attributi e misura l’intensità del

legame che intercorre tra essi;

- analisi multivariata, rivolta allo studio dei legami che sussistono tra un sottoinsieme di

attributi.

Analisi univariata.

Ispezione grafica: visualizzare la distribuzione dei valori di un attributo eventualmente identificando

i valori anomali (diagrammi di dispersione).

Analisi mediante indicatori sintetici: identificare la zona centrale per i valori osservati di un attributo

numerico. Attraverso la media aritmetica, la mediana o la moda.

L’altro obiettivo è quello di descrivere il grado di variabilità dei valori osservati di un attributo

numerico rispetto ai valori centrali. Utilizzo degli indici di dispersione.

Distribuzione normale: calcolo la varianza al fine di determinare i valori che mi possono uscire

dalla normale media.

Analisi bivariata: Dopo aver studiato le caratteristiche di ciascun attributo presente in un dataset

con le metodologie appena descritte, può essere opportuno analizzare le relazioni tra coppie di

attributi.

Lo strumento utilizzato è il coefficiente di correlazione r di Pearson.

Il coefficiente r è compreso nell’intervallo [-1, 1] ed ha il seguente significato:

r > 0 - Concordanza tra attributi (retta orientata verso l’alto, con approssimazione alla retta tanto

maggiore quanto più r si avvicina a 1);

r < 0 - Discordanza tra attributi (retta orientata verso il basso, con approssimazione alla retta tanto

maggiore quanto più r si avvicina a -1);

r = 0 - Tra gli attributi non si manifesta alcun legame di natura lineare (le coppie di dati possono

disporsi modo del tutto casuale oppure evidenziare un legame di natura non lineare).

Un caso particolare di analisi bivariata si presenta con i dataset per attività di tipo supervisionato

(in particolare la classificazione), quando si vuole studiare la relazione esistente tra gli attributi

predittori e l’attributo di classe (che in questo caso è sempre categorico).

Nello specifico, interessa evidenziare la capacità informativa (predittiva) di ogni attributo in

relazione

all’attributo di classe. Una delle metriche utilizzate allo scopo (che verrà approfondita nella sezione

sulla classificazione) è quella del guadagno informativo, a sua volta basata sul concetto di entropia

di un dataset.

Concetto di entropia: dato un certo data set fatto da cinque istanze: tre colonne (attributi predittori

e attributo di classe).

Il problema è capire quanto gli attributi A e B consentono di prevedere la classe di appartenenza.

Quindi dataset di tipo supervisionato, posso allora prevedere con ragionevole convenienza dati gli

attributi predittori la classe di appartenenza?

Il problema è allora comprendere quanto ciascuno degli attributi predittori è informativo rispetto alla

classe di appartenenza.

Se tutte le osservazioni per l’attributo A, stessero in una classe, e osservazioni diverse in un’altra

classe allora sarebbe pienamente informativo.

Dobbiamo allora creare uno strumento matematico che dia informazioni rispetto a come sono

ripartite le classi rispetto all’attributo.

Questo aspetto si chiama entropia.

Per capire meglio, Per entropia (H) di un dataset si intende il grado di ordine delle osservazioni

rispetto alla classe di appartenenza: se tutte le osservazioni appartengono alla stessa classe

l’ordine è massimo (entropia = 0), se le osservazioni sono ripartite equamente tra le classi il

disordine è massimo (entropia = 1). Negli altri casi, l’entropia assumerà un valore compresa tra 0 e

1.

Per determinare la forza del legame tra un attributo predittore e l’attributo di classe, si suddivide il

dataset in tanti sottoinsiemi quanti sono i valori dell’attributo predittore e si calcola la somma delle

entropie di tali sottoinsiemi.

Per guadagno informativo (G) si intende la differenza tra l’entropia del dataset originario e la

somma delle entropie dei sottoinsiemi così ottenuti. A valori più alti del guadagno informativo

corrispondono attributi con maggior capacità predittiva nei confronti dell’attributo di classe.

PREPARAZIONE DEI DATI.

Le analisi di data mining producono risultati accurati ed efficaci solo se i dati in ingresso

presentano un elevato grado di attendibilità.

I dati che vengono raccolti nei repository aziendali possono presentare anomalie che devono

essere identificate e corrette.

I dati possono essere caratterizzati da:

- incompletezza,

- rumore,

- inconsistenza.

Dati incompleti.

Alcune osservazioni possono presentare valori mancanti in corrispondenza di uno o più attributi.

In presenza di dati incompleti si possono adottare diversi accorgimenti correttivi:

- Eliminazione: Si può decidere di ignorare tutte le osservazioni per i quali uno o più

attributi sono mancanti (difficile da applicare quando la distribuzione dei valori mancanti

varia in modo irregolare per i diversi attributi). Esiste tuttavia un limite a questa

operazione, nel senso che non posso eliminare la maggior parte degli attributi predittori

o delle istanze.

Bisogna allora utilizzare dei criteri: un misto tra migliorazione e significatività del dataset.

- Ispezione: Si può ricorrere ad un’ispezione dei valori mancanti da parte degli esperti di

dominio per avere suggerimenti sui possibili valori sostitutivi (soggetta ad arbitrio e

onerosa in presenza di dataset voluminosi).

- Identificazione: Si può utilizzare un valore convenzionale per identificare i valori

mancanti e

segnalarli opportunamente ai modelli e agli algoritmi.

- Sostituzione: E’ possibile sostituire dati mancanti mediante criteri diversi; ad esempio,

utilizzando la media dell’attributo calcolata per le altre osservazioni (vale solo per

attributi numerici e può essere poco accurato).

Dati soggetti a rumore.

I dati possono contenere errori o valori anomali che si collocano al di fuori della norma (outlier).

Occorre, in primo luogo, identificare gli outlier, quindi procedere alla loro regolarizzazione oppure

alla

eliminazione delle osservazioni che li contengono.

Primo metodo – Si basa sul concetto di dispersione statistica. In pratica, si calcolano la media e la

varianza campionarie dell’attributo numerico analizzato. Quindi, supponendo che l’attributo segua

una distribuzione non troppo dissimile dalla normale, i valori che si trovano all’esterno di un

intervallo opportuno, centrato intorno al valore medio, sono classificati come outlier.

Una volta identificati gli outlier si procede alla loro eventuale correzione con valori ritenuti più

attendibili o

alla cancellazione delle osservazioni che li contengono.

Il secondo metodo prevede è più empirico: clusterizzazione faccio i gruppi e vedo chi sta al di fuori

del gruppo. Suddivido la popolazione in gruppi di punti che hanno fra loro affinità, i dati che stanno

al di fuori sono allora outlier. Si basa sull’impiego di metodi di clustering. Una volta costruiti i cluster

(raggruppamenti

di osservazioni aventi distanza reciproca minore, in relazione ai valori di dati attributi, rispetto alla

distanza

dalle osservazioni di altri gruppi), le osservazioni non comprese in alcun gruppo sono classificate

come

outlier. Il vantaggio di questo secondo metodo consiste nella possibilità di analizzare

simultaneamente più attributi.

Dati inconsistenti: dati che tra loro non corrispondono nella modalità di rappresentazione.

TRASFORMAZIONE DEI DATI.

Operazioni di scalatura per far rientrare dati in un intervallo. La maggior parte dei modelli di

apprendimento trae beneficio da una preventiva standardizzazione dei dati, indicata anche come

normalizzazione.

RIDUZIONE DEI DATI.

In un contesto con data set molto ampi risulta difficile effettuare un’analisi, in presenza di grandi

dataset è infatti opportuno procedere a un’ulteriore fase di riduzione dei dati, in modo da rendere

più efficienti gli algoritmi di apprendimento, senza compromettere la qualità dei risultati ottenuti.

La tecnica di riduzione dei dati opera per rendere il data set più opportuno in termini di efficienza,

accuratezza e semplicità.

- Problema di risorse del PC: un grande data set crea problemi dal punto di vista di

tempo e risorse richieste.

- Vi è un problema dal punto di vista però umano.

La riduzione dei dati (semplificazione del dataset) si sviluppa su tre logiche:

Riduco gli attributi che danno le stesse informazioni. (ricerca di correlazioni forti tra attributi

predittori), Riduzione delle osservazioni (cardinalità del dataset) mediante campionamento (deve

essere significativo dal punto di vista statistico). Approccio utilizzato nel data mining perché

processare l’intero dataset è spesso troppo costoso o richiede troppo tempo.

La riduzione dei dati si sviluppa secondo tre logiche:

- Riduzione degli attributi (dimensionalità del dataset) mediante selezione, che mira a

eliminare dal dataset un sottoinsieme di variabili ritenute non rilevanti per le analisi di

data mining.

- Riduzione degli attributi (dimensionalità del dataset) mediante proiezione, che si

propone di

sostituire un sottoinsieme di attributi numerici originari con un numero inferiore di nuovi

attributi ottenuti come loro combinazione lineare.

- Riduzione dei valori degli attributi mediante discretizzazione o aggregazione, che si

propone di ottenere una diminuzione nel numero di valori distinti assunti da uno o più

attributi.

La diminuzione di istanze può comunque portare ad una rarefazione del significato del dataset. Il

tutto sta nel trovare un campione significativo della popolazione.

Nei dataset di tipo supervisionato esiste una relazione più importante: la relazione tra l’attributo

predittore e la classe.

Per trovare queste relazioni bisogna rifarsi al concetto di entropia. Entropia: misura quanto un

dataset è ordinato rispetto alla classe di appartenenza guardando di volta in volta ogni attributo

predittore.

Abbiamo quindi parlato della prima fase: comprensione e preparazione dei dati.

Classificazione.

Algoritmi di classificazione che stanno nella famiglia degli alberi decisionali.

Un albero decisionale o, nel contesto specifico delle problematiche di classificazione, albero di

classificazione è una struttura semplice in cui i nodi non terminali rappresentano i test sugli attributi

predittori (o attributi di input) i rami rappresentano il risultato dei test (valori degli attributi predittori)

e i

nodi terminali (o foglie) rappresentano le decisioni risultanti (ossia la classe di appartenenza). È

una delle tecniche di classificazione più utilizzate, che permette di rappresentare con una struttura

ad albero un insieme di regole di classificazione.

Esempio di albero:

Da un albero decisionale è possibile derivare (semplicemente percorrendolo dal nodo radice fino ai

nodi foglia) un insieme di regole (dette regole produttive), aventi la forma: IF condizione

antecedente THEN condizione conseguente.

La condizione antecedente è una congiunzione di predicati sugli attributi predittori, la condizione

conseguente è un’etichetta di classe.

Analisi di tipo supervisionato di osservazioni derivanti dal passato.

Analisi di tipi interpretativo con fini predittivi per il futuro. Provo a vedere se esistono delle regole

predittive che partendo dai sintomi mi permettano di stabilire la diagnosi.

Analisi di tipo supervisionato in quanto l’algoritmo si appoggia nel modello all’attributo target.

L’attributo target fa da supervisore alla costruzione del modello.

Albero decisionale: struttura semplice e quindi facilmente fruibile.

Si parte da un nodo centrale chiamato radice, dal quale partono i rami con le possibili risposte a

quel attributo.

Il nodo finale si chiama foglia e non è altro che la risposta che deriva dall’aver percorso quel

determinato ramo.

La rappresentazione grafica di un albero è sempre la stessa.

Quindi i problemi sono: formalizzare un algoritmo, cercare di capire quale attributo predittore

scegliere per primo e quali altri attributi predittori scegliere se con il primo non si descrivono tutti.

Si parte quindi dall’attributo e si va a percorre il ramo.

Si creano così un set di regole, questo set di regole si chiama sistema di classificazione.

Noi ci concentreremo sempre sulle regole derivanti dall’albero.

Il modello di classificazione è fatto di tutte le regole derivanti dall’albero.

Normalmente il numero di regole è diverso dai valori che può avere l’attributo di classe. Le regole

normalmente sono di più dei valori.

Regola fondamentale: metrica di qualità: confidenza di una regola: una regola è composta da un

antecedente e da un conseguente, la confidenza è data dalla percentuale di osservazioni che

soddisfano oltre alla condizione antecedente anche quella conseguente.

Calcolo il numero di osservazioni che soddisfano l’antecedente e lo metto al denominatore.

Al numeratore vanno il numero delle condizioni conseguenti soddisfatte.

Vi sono più algoritmi di classificazione, esiste la possibilità di definire una tassonomia di modelli di

classificazione.

I modelli si basano su una logica di successiva separazione del dataset in sistemi sempre più

piccoli, dove tendenzialmente le osservazioni appartengono tutte alla stessa classe di

appartenenza.

Modelli euristici. Utilizzano procedure basate su schemi semplici e intuitivi, per lo più di natura

empirica. Tra questi, rientrano gli alberi decisionali e le decision rules.

I modelli di separazione spaziale sono invece un po’ diversi: all’interno dello spazio degli attributi,

cercano di identificare se all’interno degli spazi tutti gli attributi hanno lo stesso valore di classe.

Descrivo i due gruppi che appartengono a spazi diversi tramite l’equazione della retta che separa i

due spazi.

Un altro modello è il nearest neighbor, che ragiona però non in termini di spazio ma in termini di

distanza.

I modelli di regressione non ci interessano.

Ci interessano maggiormente i modelli probabilistici: modelli che si basano sulla teoria della

probabilità, rigorosi dal punto di vista matematico/statistico.

CLASSIFICAZIONE.

Alberi di classificazione.

Prendo un insieme di osservazioni riferite al passato sui quali è noto l’attributo di classe. Su queste

costruisco il modello.

Se il risultato di qualità del modello è cattiva, allora considero il modello come non applicabile.

Nell’ipotesi in cui invece le statistiche prevedano un modello invece di buona qualità, allora lo testo

su un altro dataset di osservazioni sulle quali conosco il set di appartenenza.

Fase di training e successivamente fase di test.

CLASSIFICAZIONE . (come funzione e come saper leggere un risultato di un algoritmo di

classificazione).

Gli alberi di classificazione (appartenenti alla più ampia categoria degli alberi decisionali)

costituiscono il modo più semplice di classificare delle osservazioni in un numero finito di classi.

Essi vengono costruiti suddividendo ripetutamente le osservazioni in sottoinsiemi il più possibile

omogenei rispetto all’attributo target (che ricordiamo essere categorico).

La suddivisione produce una gerarchia ad albero, dove i sottoinsiemi di osservazioni vengono

chiamati nodi e quelli terminali foglie.

Gli alberi si basano su un concetto di progressiva suddivisione di un data set in sottogruppi più

piccoli che siano omogenei rispetto al loro contenuto.

Bisogna allora trovare un attributo che consente sulla base dei suoi lavori tanti sottoinsiemi nei

quali vi siano solo attributi che appartengono alla stessa classe.

Bisogna allora trovare attributi in cui nei sottoinsiemi vi siano dati appartenenti il più possibile alla

stessa classe.

Lo scopo è ottenere una statistica, una metrica dal punto di vista matematico che permetta di

descrivere la classe.

In particolare, i nodi sono etichettati con il nome degli attributi, i rami sono etichettati con i possibili

valori

dell’attributo soprastante, mentre le foglie dell’albero sono etichettate con i differenti valori

dell’attributo target (valori che descrivono le classi di appartenenza).

Un’osservazione è classificata seguendo un percorso lungo l’albero che porti dalla radice ad una

foglia.

I percorsi rappresentano le regole di classificazione.

L’algoritmo che noi utilizzeremo è l’algoritmo C4.5. in Weka l’algoritmo si chiama j48.

Questo algoritmo prende un insieme di osservazioni di partenza, la prima fase si chiama training

(addestramento del modello: l’algoritmo impara a conoscere un modello all’interno dei dati).

Se T è un dataset, la prima fase di funzionamento dell’algoritmo prevede la selezione di un

attributo che differenza meglio le osservazioni che stanno all’interno di T.

Significa quindi trovare l’attributo con la più alta capacità informativa (che suddivide il data set in

sottoinsiemi) rispetto a tutti gli altri rispetto all’attributo di classe.

Si crea un nodo dell’albero: nodo radice, che corrisponde all’attributo selezionato. A partire da tale

nodo si creano dei rami.

Per ogni sottoinsieme creato nel passo 3, si va a vedere se tutte le osservazioni stanno tutte nella

stessa classe (dell’attributo di classe) e allora è un nodo terminale: nodo foglia.

Se non stanno tutte nella stessa classe, andiamo avanti con un'altra separazione tramite un nuovo

attributo che meglio rappresenta l’insieme dal punto di vista informativo, fino a che tutti i

sottoinsiemi non saranno nodi foglia o fino a che non siano finiti gli attributi.

Questa è la logica empirica applicata per l’apprendimento del modello, come funziona l’algoritmo

C4.5.

Per poterlo utilizzare in ambito informatico, si deve formalizzare l’algoritmo in modo matematico.

CRITERI PER LA COSTRUZIONE DEGLI ALBERI.

In realtà, la ripartizione omogenea delle osservazioni si verifica raramente ed è il motivo per cui il

processo di ripartizione del dataset in sottoinsiemi è ricorsivo e porta alla costruzione di alberi

costituiti da un numero elevato di nodi (abbiamo bisogno di più attributi per descrivere la regolarità

presente nei dati).

Ma se la scelta degli attributi è così importante nella costruzione del modello, sulla base di quali

criteri può

essere effettuata?

Nell’algoritmo preso in considerazione, si utilizzano i concetti di entropia e guadagno informativo.

- Come si fa la selezione dell’attributo con la più alta capacità informativa?

Si utilizza il concetto di differenza di entropia.

Nel caso di due classi, se indichiamo con P+ la percentuale di osservazioni classificate con + e

con P- la percentuale di osservazioni classificate con -, si definisce entropia di S:

H(S) = - (P+)log(2P+) - (P-)log(2P-)

L’andamento di entropia va da 0 a 1 a seconda che tutte le classi siano o no omogenee.

Quindi l’entropia è una grandezza che ci dice:

- 1: massimo disordine informativo, probabilità di sbagliare inserendo una nuova

osservazione di sbagliare la classe.

- 0 tutte le osservazioni stanno nella propria classe.

Leggendoci il valore dell’entropia, sappiamo quale grado di disordine ha il dataset: più H(S) si

avvicina a 0 più il dataset è omogeneo rispetto all’attributo target.

Più in generale, se le osservazioni del training set sono classificate in c classi, l’entropia è definita

come:

Il valore dell’entropia lo legge l’algoritmo per scegliere l’attributo maggiormente informativo.

Esempio se avessi un data set con un attributo dato da: 5 A e 7 B.

Entropia: (5/12) log2(5/12) – (7/12) log2(7/12) = 0.87.

Lo scopo quindi sarà selezionare l’attributo predittore che consente di separare il dataset in

sottoinsiemi per ognuno dei quali l’entropia tende ad essere il più bassa possibile.

L’entropia del dataset può valere un qualsiasi numero da zero ad uno.

Se esiste un’unica classe maggioritaria per tutte le osservazioni, allora la regola sarebbe la classe

è quella.

Tuttavia siamo sempre in un dataset dove l’entropia non è zero e non è mai uno.

Esempio precedente: supponiamo di suddividere l’età in due sottoinsiemi, calcoliamo le entropie

dei due nuovi dataset ottenuti, poi sommiamo le due entropie in quanto bisogna valutare l’entropia

del complesso dei sottoinsiemi ottenuti con la ripartizione del dataset.

Ipotizziamo che l’entropia finale sia 0.6 rispetto a quella inziale che era 0.8.

0.2 è il guadagno informativo ottenuto rispetto all’entropia del dataset originario.

La stessa cosa posso farla con il tipo di autoveicolo e otteniamo come composizione delle entropie

dei sottoinsiemi 0.5.

Il guadagno informativo è maggiore in questo caso. L’attributo che più fa diminuire il disordine del

dataset originario è il tipo di autoveicolo che dovrà essere scelto come non della radice dell’albero.

2 esempi fogli Excel sul materiale: calcolo entropia e guadagno informativo.

Generalizzando la regola possiamo quindi dire che: partendo da una situazione di disordine

caratterizzata da entropia H(S), una partizione delle osservazioni del training set effettuata rispetto

ad un certo attributo A porterebbe ad un nuovo valore di entropia H(S, A), tale per cui H(S, A) £

H(S).

In tale ambito rientra il concetto di guadagno informativo (information gain), definito come:

G = H(S) – H(S,A)

Tale quantità è tanto maggiore quanto più elevata è la diminuzione di entropia ottenuta dopo aver

partizionato le osservazioni del training set con l’attributo A.

Il guadagno informativo ha valori molto elevati in corrispondenza di attributi che sono fortemente

informativi e che quindi aiutano a identificare con buona probabilità la classe di appartenenza delle

osservazioni.

Dunque, un buon criterio di scelta dei nodi consiste nello scegliere di volta in volta l’attributo che

garantisce una maggiore diminuzione di entropia o che, analogamente, massimizza il guadagno

informativo.

CRITERI DI VALUTAZIONE DI UN MODELLO DI CLASSIFICAZIONE.

Ora parleremo del come fare a sapere se il modello generato è utilizzabile oppure no.

Il decisore dovrà selezionare un modello rispetto ad un altro modello oltre che per le statistiche

migliori anche per il fatto del costo dell’errore ed effetti derivanti dall’applicazione del modello.

Un modello può avere più errori statistici ma avere un impatto migliore a livello di riflessi

economici.

1. Confidenza: percentuale di osservazioni che soddisfano sia antecedente che posteriore.

1 su 3 errato: confidenza allora sarà 0.66666.

Quindi un primo criterio di valutazione, che si riferisce ad ogni singola regola, è l’indice

di confidenza.

2. Un secondo indice di qualità è la qualità assoluta del modello, della classificazione. Il più

semplice è la proporzione complessivamente ben classificata delle osservazioni. O la

percentuale di errori che il modello effettua complessivamente:

- Percentuale di osservazioni correttamente classificate rispetto al totale delle

osservazioni: indice di accuratezza della classificazione.

- Percentuale di classificazioni non correttamente classificate rispetto al totale

delle osservazioni: indice di misclassificazione.

3. K di Cohen: viene utilizzato per valutare l’accuratezza complessiva del modello di

classificazione:

- 1 classificatore perfetto,

- Sotto 0,4 classificatore inaccettabile.

Per il calcolo di questo indice risulta necessario introdurre la matrice di confusione.

Questo indice dice sostanzialmente la stessa cosa dei primi due, è quindi necessario

sceglierne uno dei due.

È preferibile utilizzare l’indice K in quanto tiene conto anche del bilanciamento degli errori

tra le diverse classi di appartenenza.

4. L’ultima informazione di sintesi importante è sapere come il classificatore si comporta sulle

singole classi di appartenenza. Ovvero comprendere la qualità delle singole classi.

Questa informazione si chiama precisione di ogni singola classe. Questo numero varia da 0

a 1 e tanto è più vicino ad 1 e tanto è più precisa: tutte le osservazioni che stanno in quella

classe dovevano stare in quella classe.

Un’altra informazione complementare è: all’interno di una classe vi stanno solo informazioni

che appartengono a quella classe? Rimane però la domanda se all’interno di quella classe


ACQUISTATO

8 volte

PAGINE

27

PESO

401.23 KB

AUTORE

Lucaf_94

PUBBLICATO

+1 anno fa


DETTAGLI
Esame: Data mining
Corso di laurea: Corso di laurea magistrale in economia e legislazione d'impresa (MILANO)
SSD:

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Lucaf_94 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à Cattolica del Sacro Cuore - Milano Unicatt o del prof Mamino Massimo.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!