weka data mining system - unibo.it · 2008-12-02 · 3 weka: introduzione software di machine...

Post on 22-May-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Alma Mater Studiorum – Università di Bologna

WEKA Data Mining System

Sistemi Informativi a supporto delle Decisioni LS - Prof. Marco Patella

Presentazione di: Fabio Bertozzi, Giacomo Carli

2

WEKA: the bird Gallirallus australis (Sparrman, 1786)

• Uccello nativo della Nuova Zelanda

• Altezza: 50 cm• Peso: 1 Kg• Onnivoro• In via di estinzione• Maschio e femmina si

occupano della prole• Secondo una leggenda

neozelandase rubano oggetti luccicanti e sacchi di zucchero

3

WEKA: Introduzione

Software di machine learning e data miningUniversità di Waikato (Nuova Zelanda)Scritto in JavaLicenza GNU

Main features:Interfaccia graficaSet di tool per data pre-processing, Possibilità di utilizzare numerosi algoritmi di clustering, per alberi decisionali DT, di ricerca di regole associative ARIndici di valutazione sulla “bontà” dell’algoritmo

4

1

2 3

WEKA: apertura del software

5

Database in input@relation bank

@attribute age numeric@attribute sex {FEMALE,MALE} @attribute region {INNER_CITY,TOWN,RURAL,SUBURBAN} @attribute income numeric@attribute married {NO,YES} @attribute children {0,1,2,3} @attribute car {NO,YES} @attribute save_act {NO,YES} @attribute current_act {NO,YES} @attribute mortgage {NO,YES} @attribute pep {YES,NO}

@data40,MALE,TOWN,30085.1,YES,3,YES,NO,YES,YES,NO 51,FEMALE,INNER_CITY,16575.4,YES,0,YES,YES,YES,NO,NO23,FEMALE,TOWN,20375.4,YES,3,NO,NO,YES,NO,NO57,FEMALE,RURAL,50576.3,YES,0,NO,YES,NO,NO,NO57,FEMALE,TOWN,37869.6,YES,2,NO,YES,YES,NO,YES 22,MALE,RURAL,8877.07,NO,0,NO,NO,YES,NO,YES 58,MALE,TOWN,24946.6,YES,0,YES,YES,YES,NO,NO37,FEMALE,SUBURBAN,25304.3,YES,2,YES,NO,NO,NO,NO

Scelte:• Formato file semplice e

intelleggibile• Struttura piatta del database

Necessità dipreprocessing dei dati

Nome della relazione

Lista degli attributi e loro tipologia

Area dati con enumerazione delle tuple

Ricerca di una soluzioneche permetta

di utilizzare fonti differenti

Attributo numerico

Attributo nominale

6

Explorer: pre-processing dei dati

discretizzazionenormalizzazione

Selezione, trasformazione e combinazione degli attributi

Funzioni

Presentazione dei dati all’utente

Conteggio tupleDistribuzione dei valori degli attributiAnalisi cross-attributo

Formati aperti

ARFF

CSVC4.5binaryletti da un URLdatabase SQL usando JDBC

Pre-Processing: i tool di

preprocessingdi Weka sono

chiamati “Filters”

Rappresentazionigrafiche

7

8

9

10

11

Algoritmi tradizionali

Explorer: i “classifiers”Classifiers

modelli per predireattributi numerici

e nominali

J48 è l’implementazione di Weka dell’algoritmo C4.5, creato da Ross Quinlan dell’Università di Sydney. L’algoritmo genera un decision tree.

• Metodo di selezione degli attributi in base all’IG• Possibilità di utilizzare un Training Set con

dati mancanti• Possibilità di utilizzare attributi con valori

numerici continui

Non c’è necessità di discretizzare

Metodo: User Classifier

Ogni passo di split dell’albero è svoltodall’utente che seleziona un cluster tramiteuna rappresentazione bidimensionale deidati

Limiti:

• Buona conoscenza del dominio• Struttura semplice dei dati,• Cluster facilimente riconoscibili

Esempio: Decision Trees

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

Explorer: clustering dataWEKA può eseguire numerosi algoritmi di clustering:

k-Means, Clustering basato sulla densità…

Visualizzazione dei cluster ottenuti con comparazione suvari attributi

Possibilità di eseguire misure di bontà sui risultati deglialgoritmi

30

Algoritmo Expectation MaximizationVariante “raffinata” di K-means

31

32

33

Attributi selezionati

34

35

36

Età

Red

dito

37

Explorer: ricerca di regole associativeWEKA contiene un’implementazione

dell’algoritmo Apriorinella scheda “Associate”:

Lavora su dati discreti

Identifica le relazioni tra attributi e gruppi di

attributi

Ricerca le regole che eccedono il supporto minimo

e hanno confidenza superiore al valore

prestabilito

38

39

40

41

42

43

Explorer: attribute selectionStrumento utile per ricercare quali sono gli attributi(o subset di attributi) maggiormente predittivi

Il metodo di selezione è articolato in due parti: Search method:

best-first, forward selection, random, exhaustive, genetic algorithm, ranking

Evaluation method: CorrelazioneInformation gainTest chi-quadro…

WEKA consente combinazioni (abbastanza) libere dei metodi

Esempio semplice:Ordina gli attributi in base all’IG• Search method: ranking• Evaluation Method:

Information Gain

44

45

46

47

48

Explorer: data visualizationSemplice funzione che permette di analizzare in maniera visiva i dati

WEKA visualizza singoli attributi in un grafico 1-D e coppie di attributi2-D

Limite: mancanza di visualizzazione 3-D che viene risoltaintroducendo in un grafico 2-D diversi colori

Parametri di visualizzazione:

I valori delle classi sono rappresentati con diversi colori

L’opzione “Jitter” permettere di visualizzare i punti nascosti per gliattributi nominali

Funzioni di zoom, dimensionamento dei grafici e dei puntirappresentati

49

50

51

52

53

54

55

56

WEKA: ExperimenterL’Experimenter permette di comparare diversi modelli diapprendimento

Adatto per problemi di regressione e classificazione

I risultati possono essere trasveriti in un database

Metodi di valutazione:

Cross-validazione

Curva di apprendimento

I metodi di valutazione possono essere reiterati per diverse configurazioni dei parametri dei modelli di apprendimento

57

58

59

60

61

62

63

64

65

66

Analisi dei risultatiExport dei risultati in:

ARFF fileCSV file (Comma Separated Values)JDBC database

Importato in Excel

Analisi statistica dei dati

% di istanze classificate correttamente

modelli di apprendimento

data

seta

naliz

zati

Notazioni:v: risultato statisticamente migliore rispetto allo

schema base *: risultato statisticamente peggiore rispetto allo

schema base

Vettore (xx/yy/zz):indica su quanti dataset lo schema è stato migliore/equivalente/peggiore rispetto allo schema base

Scheda Analyse di WEKA :Matrice di analisi sui diversi run

67

Analisi dei risultati: Cross Validazione1. Il dataset è diviso in k subset. 2. Ogni subset è diviso in training set e test set3. For i:=1 to k

1. Definisci una funzione che predice i dati2. testa la funzione sui K-1 dataset precedenti come test set3. Calcolo del Mean Absolute Error

4. Computa l’errore medio su tutti i k subset

Vantaggio: utilizzando tanti subset, il metodo è poco influenzato da come sono suddivisi i dati. All’aumentare di K si ottiene una maggiore precisione della previsione

Svantaggio: l’algoritmo deve iterare k volte per svolgere una valutazione

Funzione con rumore

Funzione senza rumore

Algoritmo

68

69

70

71

WEKA: Knowledge FlowInterfaccia grafica innovativa che rappresenta un flussoinformativoBasato sulla piattaforma Java BeansDB sorgenti, classifiers, etc. sono beans e possono essereconnessi graficamenteI Layout ottenuti possono essere salvatiCambiando le impostazioni del datasource, si può eseguire lo stesso flusso su diversi datasetEsempio di un tipico flusso di dati:

data source filter classifier evaluator

72

73

74

75

76

77

78

…dopo alcuni passaggi…

79

80

81

Classe prevista

Classe di appartenenza

82

WEKA: the bird

Grazie per l’attenzione!

top related