360 likes | 488 Views
Corso di Laurea Specialistica in Ingegneria Gestionale Sistemi Informativi per le decisioni a.a. 2008-2009 Waikato Environment for Knowledge Analysis Data preprocessing e regole associative Cicolella Claudio, Minetti Elena, Triscari Dario. Argomenti. Weka Formato .arff Preprocess
E N D
Corso di Laurea Specialistica in Ingegneria Gestionale Sistemi Informativi per le decisioni a.a. 2008-2009 Waikato Environment for Knowledge Analysis Data preprocessing e regole associative Cicolella Claudio, Minetti Elena, Triscari Dario
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Weka Preprocess: permette di caricare e modificare i dati su cui eseguire le varie elaborazioni Asssociate: permette l’elaborazione e valutazione di regole di associazione Weka: preprocess e associate
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Formato .arff • ARFF (Attribute Relationship File Format) Sezione Header Sezione Data
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Filtri Supervisionati: esiste un attributo speciale, il class attribute, che viene usato per guidare le operazioni di filtraggio Non supervisionati: tratta tutti gli attributi allo stesso modo
Filtri Attribute: operano su un singolo o più attributi selezionati Istanze: operano a livello di tuple prendendo in considerazione la totalità degli attributi
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Filtri non supervisionati : Discretize • Questo tipo di filtro serve per convertire gli attributi numerici in etichette stringa. attributeIndices:permette di selezionare l’attributo o gli attributi da discretizzare bins: permette di scegliere il numero di bin findNumBins: ottimizza il numero di bin di uguale larghezza utilizzando il metodo leave-one-out; non è applicabile con useEqualFrequency desiredWeightOfInstancesPerInterval: larghezza dell’intervallo nella divisione in bin di uguale profondità invertSelection:se settato“true”il filtro verrà applicato a tutti i campi tranne a quello/i selezionato/i nel box attributeindices ignoreClass: se settato “true”ignora la classificazione prima di applicare il filtro makeBinary: se settato “true”rende gli attributi finali in formato binario useEqualFrequency: se settato “true”verranno formati bin di uguale frequenza invece che di uguale larghezza
Filtri non supervisionati : Remove • Questo tipo di filtro serve per eliminare dal dataset un attributo con tutti i relativi valori. attributeIndices:permette di selezionare l’attributo da rimuovere invertSelection:se settato“true”il filtro verrà applicato a tutti i campi tranne a quello/i selezionato/i nel box attributeindices
Filtri non supervisionati : ReplaceMissingValue • Questo tipo di filtro serve per sostituire i valori mancanti all’interno del dataset con la moda nel caso di dati categorici e con la media nel caso di dati numerici . ignoreClass: se settato “true”ignora la classificazione prima di applicare il filtro
Filtri non supervisionati : Normalize • Questo tipo di filtro agisce sui range di variazione degli attributi uniformandoli a [0,1] (default) o ad altri intervalli. ignoreClass: se settato “true”ignora la classificazione prima di applicare il filtro scale: fattore di scala translation: fattore di scala
Filtri non supervisionati : Standardize • Questo tipo di filtro applica un altro tipo di normalizzazione ottenendo che gli attributi numerici siano distribuiti con valor medio nullo e deviazione standard unitaria. ignoreClass: se settato “true”ignora la classificazione prima di applicare il filtro μ= valor medio statistico σ= deviazione standard
Filtri non supervisionati : Resample • Questo tipo di filtro attua una riduzione verticale producendo un sottoinsieme casuale delle istanze del data set sia sostituendo i valori originale che mantenendo quelli già presenti. invertSelection: permette di invertire la selezione di istanze (solo se sampling senza replacement) NoReplacement : permette di disabilitare la sostituzione dei valori originali randomSeed: permette di scegliere il “seme” alla base della generazione dei numeri casuali sampleSizePercent: permette di scegliere la percentuale del data set originale fornita in output
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Filtri supervisionati : Discretize • Questo tipo di filtro serve per convertire gli attributi numerici in etichette stringa. attributeIndices:permette di selezionare l’attributo o gli attributi da discretizzare invertSelection:se settato“true”il filtro verrà applicato a tutti i campi tranne a quello/i selezionato/i nel box attributeindices makeBinary: se settato “true”rende gli attributi finali in formato binario
Filtri supervisionati : AttributeSelection • Questo tipo di filtro permette l’accesso alle funzioni di selezione di attributi così come nella sezione Select attributes. evaluator:permette di selezionare il parametro su cui effettuare la valutazione search:metodo attraverso cui effettuare la valutazione numToselect:permette di sceglierenumero di attributi da selezionare startSet:permette di selezionare un elenco di attributi da ignorare threshold:valore soglia del valutatore
Filtri supervisionati : Resample • Questo tipo di filtro produce un sottoinsieme di valori casuali del data set originale con o senza replacement. In aggiunta rispetto alla versione non supervisionata, tenta di mantenere la distribuzione dell’attributo classe o di correggerne il bias. biasToUniformClass: permette di settare un valore che varia da 0 (non variando la distribuzione) a 1 (rendendo la distribuzione uniforme) invertSelection: permette di invertire la selezione di istanze (solo se sampling senza replacement) NoReplacement : permette di disabilitare la sostituzione dei valori originali randomSeed: permette di scegliere il “seme” alla base della generazione dei numeri casuali sampleSizePercent: permette di scegliere la percentuale del data set originale fornita in output
Argomenti • Weka • Formato .arff • Preprocess • Non supervisionati • Attributi: • Discretize • Remove • ReplaceMissingValues • Normalize • Standardize • Istanze: • Resample • Supervisionati • Attributi: • Discretize • AttributeSelection • Istanze: • Resample • Associate • Apriori
Associate Weka: preprocess e associate
Algoritmi per regole associative • Alcuni esempi: • Apriori: algoritmo Apriori per le regole associative • PredictiveApriori: algoritmo Apriori che trova regole di associazione ordinate per accuratezza nella predizione; questo parametro è ricavato da una combinazione di confidenza e supporto • Tertius: algoritmo a conferma guidata durante la scoperta di • regole di associazione
Regole associative: Apriori Come funziona Apriori in Weka ? Apriori in Weka comincia con il supporto minimo all'estremo superiore e diminuisce il supporto di Delta ad ogni iterazione. Si arresta quando è stato generato il numero richiesto di regole, oppure è stato raggiunto l'estremo inferiore per il supporto minimo.
Regole associative: Apriori classIndex: indice del class attribute; se settato a -1 l’ultimo attributo è preso come class attribute car: settato “true” vengono generate regole associative dove il class attribute è conseguente delta: permette di settare il valore delta lowerBoundMinSupport: lower bound per il supporto metricType: permette di scegliere la metrica secondo cui ordinare e selezionare i risultati
Apriori: metricType • Data la regolaL => R: • confidence = Pr(L,R) / Pr(L) • lift = Pr(L,R) / Pr(L)*Pr(R) • leverage = Pr(L,R) - Pr(L)*Pr(R) • conviction = Pr(L)*Pr(not R) / Pr(L,R)
Regole associative: Apriori minMetric: considera solo le regole che superano questo valore numRules: permette di selezionare il numero di regole che si vuole vengano generate outputItemSets: se settato “true”vengono mostrati gli itemset frequenti removeAllMissingCols: rimuove dal dataset le colonne con tutti i valori mancanti. upperBoundMinSupport: upper bound per il supporto minimo verbose: se abilitato esegue l’algoritmo in modalità verbose