Features Selection's algorithms

111
Algoritmi di feature selection Simone Rutigliano Corso di Laurea in Informatica Magistrale 2 aprile 2015

Transcript of Features Selection's algorithms

Algoritmi di feature selection

Simone Rutigliano

Corso di Laurea in Informatica Magistrale

2 aprile 2015

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 1 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 2 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Relief

Valuta gli attributi sulla base di quanto siano in grado didiscriminare le istanze vicine

Data una istanza, cerca:

nearest hit: l’istanza piu vicina della stessa classenearest miss: l’istanza piu vicina di classe diversa

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 3 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Caratteristiche

Qualita:

le feature possono essere anche dipendenti tra lorocomplessita O(n) in tempo dove n indica il numero di featuretolleranza al rumorerobusta alle interazioni tra featureapplicabile sia a dati binari che a dati continui

Limiti:

Non discrimina le feature ridondantiUn basso numero di istanze di training puo alterare i risultatiLimitato a problemi di classificazione binariaNon tratta dati incompleti

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 4 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Caratteristiche

Qualita:

le feature possono essere anche dipendenti tra lorocomplessita O(n) in tempo dove n indica il numero di featuretolleranza al rumorerobusta alle interazioni tra featureapplicabile sia a dati binari che a dati continui

Limiti:

Non discrimina le feature ridondantiUn basso numero di istanze di training puo alterare i risultatiLimitato a problemi di classificazione binariaNon tratta dati incompleti

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 4 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

ReliefF - Idea di base

Trova i primi k piu vicini di ogni classe ottenendo il vettoreprobabilistico dei pesi di ogni classe

Estensione di ReliefFornisce stime probabilistiche piu affidabiliPermette di trattare dati incompletiGestisce dataset multi-classe

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 5 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

ReliefF - Idea di base

Trova i primi k piu vicini di ogni classe ottenendo il vettoreprobabilistico dei pesi di ogni classe

Estensione di ReliefFornisce stime probabilistiche piu affidabiliPermette di trattare dati incompletiGestisce dataset multi-classe

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 5 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Calcolo

Dato un campione di p istanze estratte dal training set, il valore diogni istanza sara:

SCr (fi ) =1

2

p∑t=1

d(ft,i − fNM(xt ),i )− d(ft,i − fNH(xt ),i )

dove:

d : funzione distanza

ft,i : feature i dell’istanza t

NM(xt) : istanze vicine a xt di classe differente

NH(xt) : istanze vicine a xt di della stessa classe

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 6 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Calcolo

Il valore calcolato rappresenta la qualita della feature

Un buon attributo deve avere:I valori simili per istanze appartenenti alla stessa classe

ft,i − fNH(xt ),i ≈ 0

I valori differenti per istanze appartenenti a classi differenti

|ft,i − fNM(xt ),i | � 0

Approccio probabilistico della funzione distanza

Reliefx = P(valori differenti di X | classe differente)−P(valori differenti di X | stessa classe)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 7 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Missing value

Le probabilita condizionate saranno approssimate in base allafrequenza relativa definita dal training set

Definita la funzione distanza dist(Attribute, Instance1, Instance2)

se una istanza (e.g. I 1) ha missing value:

dist(A, I 1, I 2) = 1− P(value(A, I 2)|class(I 1))

se entrambe hanno missing value:

dist(A, I 1, I 2) = 1−#values(A)∑

V

(P(V |class(I 1)) x P(V |class(I 2)))

dove V rappresenta tutti i possibili valori dell’attributo A

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 8 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

ReliefCalcoli

Missing valueMulticlass

Dataset multi-classe

cerca il vicino di classe differente (near missing M(C )) perogni classe diversa da quella considerata (R)

verra calcolata la media delle probabilita di ogni classedifferente∑

C 6=class(R)

[P(C)

1−P(class(R)) x dist(A,R,M(C ))]

n

dove n rappresenta la cardinalita di C

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 9 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 10 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

mRMR - Idea di base

Consiste nel calcolo della

minima ridondanza tra le features

massima rilevanza delle features con la classe target

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 11 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Mutual Information - Definizione

La mutua informazione rappresenta i bit di informazione cheuna delle variabili fornisce riguardo l’altra

Date due variabili casuali X e Y, la mutua informazione edefinita come

I (X ; Y ) = H(X )− H(X |Y ) = H(Y )− H(Y |X )

dove le entropie sono calcolate

H(X ) = −∑i∈X

P(xi ) · log(P(xi ))

H(X ,Y ) = −∑i∈X

∑j∈Y

P(xi , yj ) · log(P(xi , yj ))

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 12 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Considerazioni

Indipendenza: I (X ; Y ) = 0

Simmetria: I (X ; Y ) = H(X )−H(X |Y ) = H(Y )−H(Y |X ) = I (Y ; X )

Riflessivita: I (X ; X ) = H(X )

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 13 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Minima Ridondanza - Definizione

Consiste nel selezionare le features in modo tale che siano traloro piu dissimilari

Il subset che si otterra sara il piu rappresentativo possibiledell’intero dataset

Formalmente consiste nel

Calcolare una funzione Red calcolata sul set di feature S

Trovare il subset che minimizza la funzione calcolata

min Red(S)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 14 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Calcolo per variabili discrete

Red(S) =1

|S |2∑

xi ,xj∈S

I (xi ; xj )

dove

|S | e il numero di features presenti nel subset S

xi e xj rappresentano rispettivamente la i-esima e j-esimafeature del subset S

I (xi ; xj ) rappresenta la mutua informazione tra le due feature

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 15 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Calcolo per variabili continue

Red(S) =1

|S |2∑

xi ,xj∈S

|c(xi ; xj )|

dove

|S | e il numero di features presenti nel subset S

xi e xj rappresentano rispettivamente la i-esima e j-esimafeature del subset S

|c(xi ; xj )| indica il valore assoluto del coefficiente dicorrelazione di Pearson tra le feature xi e xj

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 16 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Massima Rilevanza - Definizione

Ricercare le feature che riescano ad approssimare la funzione

max Dep(S , c) Dep = I ({x1, . . . , xm}; c)

con il valor medio di tutti i valori della mutua informazione trale singole feature xi e la classe c

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 17 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Calcolo per variabili discrete

In caso di variabili discrete l’obiettivo sara massimizzare la funzioneDep calcolata nel seguente modo

Dep(S , c) =1

|S |∑xi∈S

I (xi ; c)

dove

S indica il set contenente tutte le features

xi indica la i-sima feature da considerare

c indica la classe target

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 18 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Calcolo per variabili continue. . .

Per le variabili continue bisogna usare la F-statistic come misuraper calcolare la rilevanza tra le features xi e la classe target c

F (xi , c) =

∑K

nk (xk−x)

K−1

σ2

dove:

σ2 =

∑k

(nk−1)σ2k

n−K

K indica le classi denotate da c

x e il valor medio di xi di tutti i campioni

xk e il valor medio di xi di tutti i campioni di classe k

nk e σk indicano dimensione e varianza della k−classe

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 19 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

. . . calcolo per variabili continue

In caso di variabili continue l’obiettivo sara massimizzare lafunzione Dep calcolata nel seguente modo

Dep(S , c) =1

|S |∑xi∈S

F (xi ; c)

dove

F indica la funzione F − test calcolata sulle feature inrelazione alla classe target

S indica il set contenente tutte le features

xi indica la i-sima feature da considerare

c indica la classe target

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 20 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Calcolo mRMR

Variabili discrete

MID - Mutual Information DifferenceMIQ - Mutual Information Quotient

Variabili continue

FCD - F-test Correlation DifferenceFCQ - F-test Correlation Quotient

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 21 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Discrete - MID

Consiste nel trovare le features che massimizzino la differenza tradipendenze e ridondanze di queste features dalla classe targetattraverso il calcolo della mutua informazione

max(Dep(S , c)− Red(S))

dove ricordiamo che

Dep(S , c) = 1|S |∑

xi∈S

I (xi ; c)

Red(S) = 1|S |2

∑xi ,xj∈S

I (xi ; xj )

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 22 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Discrete - MIQ

Consiste nel trovare le features che massimizzino il rapporto tradipendenze e ridondanze di queste features dalla classe targetattraverso il calcolo della mutua informazione

maxDep(S , c)

Red(S)

dove ricordiamo che

Dep(S , c) = 1|S |∑

xi∈S

I (xi ; c)

Red(S) = 1|S |2

∑xi ,xj∈S

I (xi ; xj )

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 23 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Continuous - FCD

Consiste nel trovare le features che massimizzino la differenza tradipendenze e ridondanze di queste features dalla classe targetattraverso il calcolo del F-test

max((Dep(S , c)− Red(S))

dove ricordiamo che

Dep(S , c) = 1|S |∑

xi∈S

F (xi ; c)

Red(S) = 1|S |2

∑xi ,xj∈S

|c(xi ; xj )|

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 24 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Continuous - FCQ

Consiste nel trovare le features che massimizzino il rapporto tradipendenze e ridondanze di queste features dalla classe targetattraverso il calcolo del F-test

maxDep(S , c)

Red(S)

dove ricordiamo che

Dep(S , c) = 1|S |∑

xi∈S

F (xi ; c)

Red(S) = 1|S |2

∑xi ,xj∈S

|c(xi ; xj )|

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 25 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Mutual InformationMinima RidondanzaMassima Rilevanza

FormuleBenefici

Benefici

Con lo stesso numero di features, mRMR garantisce maggiorerappresentativita al dataset offrendo una migliore proprieta digeneralizzazione

Allo stesso modo, possiamo usare un set di feature mRMR piupiccolo per ricoprire in maniera piu efficace lo stesso spazioricoperto da feature set convenzionale piu grande

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 26 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 27 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

CFSubset - Idea alla base

Cerca in maniera esaustiva il subset ottimale che sia in grado di

massimizzare la predizione della classe

minimizzare la ridondanza tra le feature

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 28 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

CFSubset - Calcolo

La funzione di merito associata sara

MS =k · rcf√

k + k · (k − 1) · rff

Dove :

rcf : correlazione media tra la classe c e la feature f ∈ S

attributi discreti : Correlazione basata sulla entropiaattributi continui : Correlazione di Pearson

rff : intercorrelazione media feature-feature

k : numero di feature f ∈ S

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 29 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

Correlazione di Pearson

Misura il peso della correlazione lineare tra due variabili

In particolare indica:

Forza della relazione (forte, debole o nulla) → da 0 a 1

Direzione della relazione → positiva(+) o negativa(-)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 30 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

Correlazione di Pearson

Assumptions:

Variabili sono quantitative o ordinali

Seguono una distribuzione normale

Relazione lineare

ρX ,Y =

∑i (xi − x)(yi − y)√∑

j (xj − x)2 ·∑

k (yk − y)2

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 31 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

In dettaglio ...

Nel caso in cui le due feature siano gia entrambe continue, lacorrelazione verra calcolata con:

rXY =

∑(x , y)

n · σxσy

dove:

X e Y sono due variabili continue espresse in termini dideviazioni standard

n rappresenta il numero di osservazioni

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 32 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

... in dettaglio ...

Se uno dei due attributi e discreto e l’altro continuo, lacorrelazione di Pearson calcolata sara:

rXY =k∑

i=1

p(X = xi ) · rXbi Y

dove Xbi =

{1 se X = xi

0 altrimenti

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 33 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

... in dettaglio

Se invece, entrambi gli attributi risultano essere discreti, essiverranno dapprima discretizzati ed in seguito verra calcolata lacorrelazione nel seguente modo:

rXY =k∑

i=1

m∑j=1

p(X = xi ,Y = yj ) · rXbi Ybj

dove :

Xbi =

{1 se X = xi

0 altrimentiYbj =

{1 se Y = yj

0 altrimenti

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 34 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Correlazioni

Correlazione basata su entropia

Per attributi di carattere discreto verra utilizzato il concetto dientropia dell’attributo

SU = 2 ·[

H(X ) + H(Y )− H(X ,Y )

H(Y ) + H(X )

]dove:

SU rappresenta la misura di incertezza simmetrica

H(X ) : entropia della feature X

H(X ,Y ) : entropia congiunta di X e Y (ogni possibilecombinazioni di valori sia di X che di Y)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 35 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 36 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

PCA

Riduce la dimensionalita del dataset combinando le variabili ingiocoMantiene lo stesso apporto informativo del dataset originaleLe nuove variabili, chiamate Principal Components (PC), sononon correlate, e sono ordinate in base all’informazione cheessa contiene

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 37 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

PCA - Idea di base

Trova l’asse che meglio rappresenta la piu grande variazione(First principal component) e proietta tutti i punti suquest’asse

Definisce la nuova dimensionalita sulla base degli autovettoridella matrice di covarianza associata

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 38 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

PCA - Algoritmo

1 X ← Creare la matrice istanze/attributi N x d , dove ogni rigarappresenta l’istanza xn

2 Sottrarre il valor medio x da ogni vettore riga xn ∈ X

3 Σ← matrice di covarianza di X

4 Trovare gli autovalori e gli autovettori di Σ : a1j , a2j , · · · , adj

5 I primi p autovettori con autovalori piu alti formeranno la PCG ← [a1j , a2j , · · · , apj ] con p < d

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 39 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

Proprieta ottimale della PCA

La matrice G e costituita dai primi p autovettori della matrice dicovarianza S soddisfano il problema di minimo:

minG∈<d x p

‖X − G (GᵀX )‖2F tale che GᵀG = Ip

Proiezione PCA minimizza l’errore di ricostruzione delle proiezionilineari della dimensione p

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 40 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

Rappresentazione grafica

Restituisce laproiezionemigliore

Minimizzal’errorequadraticomedio

Le principalcomponentsono tra loroortogonali

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 41 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

Principal Component

First Principal component (PC1)

direzione lungo la quale c’e la maggiore varianza

Second Principal component (PC2)

direzione con la varianza massima trascurata dai dati

ortogonale con PC1Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 42 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

Quante componenti considerare?

Si considera la distribuzione degli autovaloriSi mantengono un numero tale di autovettori in grado dicoprire l’80-90% della varianza del dataset

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 43 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Analisi

PCA non lineare usando Kernel

PCA tradizionale applica una trasformazione lineare

Potrebbe non essere efficace su dati non lineari

Soluzione: applica una trasformazione non lineare a spazidimensionali molto alti

φ : x → φ(x)

Computazionalmente efficiente: applica il kernel trick

riscrittura in termini di prodotto interno

K (xi , xj ) = φ(xi ) · φ(xj )

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 44 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 45 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

χ2 - Idea di base

Verifica se esiste una correlazione tra le feature e l’attributo diclasse usando la statistica χ2

Il test statistico sara:

χ2 =C∑

i=1

(Oi − Ei )2

Eicon gradi di liberta = C − 1

dove

C = numero di categorie

Oi = frequenze osservate per la categoria i

Ei = frequenze attese per la categoria i

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 46 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Area di rigetto

Verranno definite le ipotesi statistiche

H0 : la feature e dipendente dalla classe target

H1 : la feature e indipendente dalla classe target

Si rigetta H0 se χ2 > χ2α

(con C − 1 gradi di liberta)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 47 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

χ2 nella feature selection

1. Crea la matrice di contingenza (F x C)

2. Esegue la statistica χ2 tra le occorrenze del termine e quelledella classe

Calcola i gradi di liberta (df = (#rows-1)(#cols-1))

Ricerca nella χ2 table del valore χ2α da usare per il confronto

3. Se χ2 > χ2α l’ipotesi H0 verra rigettata

χ2 alto, dipendenza tra la feature e l’attributo di classe alta

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 48 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

χ2 test statistic

Il test statistico sara:

χ2(D, t, c) =∑

et∈{0,1}

∑ec∈{0,1}

(Net ec − Eet ec )2

Eet ec

Dove:

ec =

{1 se il documento e di classe c

0 altrimenti

et =

{1 se il termine t e incluso nel documento

0 altrimenti

N rappresenta la frequenza osservata in DE rappresenta la frequenza attesa (i.e. E11 e la frequenzaattesa di t e c che co-occorrono nel documento assumendoche il termine sia indipendente dalla classe)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 49 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Tabella di contingenza

In una tabella di contingenza:

Le celle contengono il numero di casi che presentanocongiuntamente le due variabili (frequenze di cella)

I totali di riga/colonna sono chiamati frequenze marginali

Le righe/colonne intermedie sono distribuzioni condizionate

XY y1 y2 · · · yk totale

x1 f1,1 f1,2 · · · f1,k f1,.

x2 f2,1 f2,2 · · · f2,k f2,....

......

. . ....

...xh fh,1 fh,2 · · · fh,k fh,.

totale f.,1 f.,2 · · · f.,k 1

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 50 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Esempio

Verificare se esiste correlazione tra:

Hand preference vs. Gender

Hand Preference: Left vs. Right

Gender: Male vs. Female

Le ipotesi da verificare saranno:

H0: Non esiste correlazione tra Hand Preference e Gender

H1: La Hand Preference e dipendente dal Gender

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 51 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Esempio ...

Risultati campionati nella tabella di contingenza:

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 52 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

... esempio ...

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 53 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

... esempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 54 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 55 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Information Gain - Idea di base

Valuta gli attributi sulla base del guadagno di informazioneche apporta al dataset

Guadagno ottenuto riducendo l’incertezza iniziale

IG (Attr) = Entropy(S)−∑

v∈Values(Attr)

|Sv ||S |· Entropy(Sv )

dove:

S : dataset di training

Attr : rappresenta l’attributo da analizzare

v : valori degli attributi Attr

Sv : subset di istanze con attributo Attr valorizzato con v

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 56 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Entropia

Prendendo in cosiderazione:

S dataset di training

C1 . . .Ck etichette di classe

RF (Ci ,S) frequenze relative dei s ∈ S di classe Ci

L’entropia E di S sara calcolata come:

E (S) = −k∑

i=1

RF (Ci ,S) log(RF (Ci ,S))

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 57 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Entropia

Misura il quantitativo di incertezza presente in S

High entropy significa che S segue una distribuzione uniforme

RF (C1,S) = · · · = RF (Ck , S)

low entropy significa che S proviene da una distribuzione nonuniforme dove alcuni eventi sono molto piu probabili degli altri

RF (Ci , S)� RF (Cj ,S) ∀i 6= j

zero entropy significa che S conterra eventi certiannullandone l’incertezza

RF (Ci , S) = 1 RF (Cj , S) = 0 ∀j 6= i

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 58 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Classificazione binaria

In un problema di classificazione binaria (C1 positivo, C2 negativo)dove:

p rappresenta la proporzione di esempi positivi in Sn rappresenta la proporzione di esempi negativi in S

L’entropia di S e computata come:

E (S) = −p · log2p − n · log2n

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 59 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

Esempio ...

Day Outlook Temp Humidity Wind PlayTennis

D1 Sunny Hot High Weak NoD2 Sunny Hot High Strong NoD3 Overcast Hot High Weak YesD4 Rain Mild High Weak YesD5 Rain Cool Normal Weak YesD6 Rain Cool Normal Strong NoD7 Overcast Cool Normal Weak YesD8 Sunny Mild High Weak NoD9 Sunny Cold Normal Weak Yes

D10 Rain Mild Normal Strong YesD11 Sunny Mild Normal Strong YesD12 Overcast Mild High Strong YesD13 Overcast Hot Normal Weak YesD14 Rain Mild High Strong No

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 60 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

... esempio ...

Descrizione del dataset:

istanze di training : 14istanze classificate come Yes : 9istanze classificate come No : 5

Entropia del dataset:

E (S) = − 9

14· log2

(9

14

)− 5

14· log2

(5

14

)= 0.940

Descrizione dell’attributo outlook:

sunny overcast rainyes 2 4 3no 3 0 2

tot 5 4 5

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 61 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

... esempio ...

Le entropie dei valori di outlook saranno:

E (sunny) = −2

5· log2

(2

5

)− 3

5· log2

(3

5

)= 0.971

E (overcast) = −4

4· log2

(4

4

)− 0

4· log2

(0

4

)= 0

E (rain) = −2

5· log2

(2

5

)− 3

5· log2

(3

5

)= 0.971

L’entropia totale di outlook sara:

E (outlook) =5

14· 0.971 +

4

14· 0 +

5

14· 0.971 = 0.694

L’information gain ottenuta dall’attributo outlook sara:

IG (outlook) = 0.940− 0.694 = 0.246

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 62 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Entropia Esempio

... esempio

Eseguendo lo stesso test anche sugli altri attributi otterremo:

IG (temperature) = 0.029

IG (humidity) = 0.151

IG (windy) = 0.048

Quindi il ranking ottenuto sulla base dell’information gainapportato dagli attributi sara:

1 outlook

2 humidity

3 windy

4 temperature

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 63 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 64 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

PageRank

Implementazione del Wrapper Model:

Utilizzare lo stesso algoritmo sia per la feature selection siaper la fase di raccomandazione

Subset ottimizzato per la raccomandazione

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 65 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Idea di base

Pesatura dei link in base all’importanza del sito da cui proviene

L’importanza di un link da una qualunque sorgente dovrebbeessere attenuato dal numero dei siti che la sorgente vota

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 66 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Definizione

Indicata con P una generica pagina, il suo punteggio sara

r(P) =∑

Q∈BP

r(Q)

|Q|

doveBP = { insieme di tutte le pagine puntanti a P}|Q| = numero degli outlink di Q

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 67 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Calcolo punteggio PageRank . . .

Se abbiamo n pagine P1,P2, . . . ,Pn ed assegniamo a ciascunapagina un arbitrario punteggio iniziale r0(Pi ) = 1

n

Il punteggio r(P) puo essere calcolato mediante la seguenteiterazione:

rj (Pi ) =∑

Q∈BPi

rj−1(Q)

|Q|j = 1, 2, 3, . . .

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 68 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . calcolo punteggio PageRank . . .

Ponendo: πᵀj = (rj (P1), rj (P2), . . . , rj (Pn))

Definiamo la matrice di Google per righe P tale che:

pij =

{ 1Pi

se Pi si connette con la pagina Pj

0 altrimenti

La precedente iterazione si puo riscrivere come:

πᵀj = πᵀj−1P

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 69 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . calcolo punteggio PageRank

Se il limite esiste, il vettore PageRank e definito

πᵀ = limj→∞

πᵀj

la i-sima componente del vettore PageRank e ilpunteggio(pagerank) della pagina Pi

Per assicurare la convergenza del processo iterativo la matriceP deve essere modificata

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 70 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Esempio di graph web

1 2

3

54

6

Matrice Google per righe P

P =

0 12

12 0 0 0

12 0 1

2 0 0 0

0 12 0 1

2 0 0

0 0 0 0 12

12

0 0 12

12 0 0

0 0 0 0 0 1

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 71 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Matrice Google per righe

La matrice di Google per righe P e

non-negativasomma degli elementi sulle righe pari a zero1 o uno

Se la matrice P ha tutte le righe con somma pari a uno allorasi parla di matrice stocastica:

autovalore dominante uguale a 1iterazione PageRank converge all’autovettore sinistronormalizzato πᵀ = πᵀP t.c. πᵀ1 = 1

1nodi danglingSimone Rutigliano Algoritmi di feature selection 2 aprile 2015 72 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Esempio nodo dangling

1 2

3

54

6

P =

0 12

12 0 0 0

12 0 1

2 0 0 0

0 12 0 1

2 0 0

0 0 0 0 12

12

0 0 12

12 0 0

0 0 0 0 0 0

sIl nodo 6 e un nodo dangling in quanto non ha outlink

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 73 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Trasformazione Matrice di Google per righe . . .

Stocastica

Sostituire ad ogni riga nulla il vettore 1ᵀ

n

La nuova matrice stocastica si indica con P

Irriducibile

Aggiungere una matrice di perturbazione E = 11ᵀ

n

La nuova matrice sara uguale a

¯P = dP + (1− d)E d ∈ [0, 1]

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 74 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Trasformazione Matrice di Google per righe

La matrice di Google attualmente utilizzata e ottenutaconsiderando la matrice di perturbazione E = 1vᵀ dove vᵀ e unvettore di personalizzazione dell’utente

¯P = dP + (1− d)1vᵀ d ∈ [0, 1]

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 75 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Damping factor d

Fattore il cui valore e stabilito da Google

Nella documentazione originale fornita dal Searcher il dampingfactor e pari a 0,85 (puo subire aggiustamenti a discrezione diGoogle)

Attraverso il damping factor, Google puo determinare il valorepercentuale di PageRank che transita da una pagina all’altra estabilire un valore minimo di PageRank attribuito ad ognunadelle pagine presenti nei suoi archivi

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 76 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Esempio . . .

Consideriamo l’insieme di rilevanza composto da sei pagine webaventi la seguente struttura ad hyperlink

1 2

3

56

4

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 77 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio . . .

La matrice di Google per righe corrispondente al grafo sara laseguente

P =

0 12

12 0 0 0

0 0 0 0 0 013

13 0 0 1

3 0

0 0 0 0 12

12

0 0 0 12 0 1

2

0 0 0 1 0 0

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 78 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio . . .

Considerato che il nodo 2 e un nodo dangling allora sara necessariotrasformarla in matrice stocastica

1 2

3

56

4

P =

0 12

12 0 0 0

16

16

16

16

16

16

13

13 0 0 1

3 0

0 0 0 0 12

12

0 0 0 12 0 1

2

0 0 0 1 0 0

s

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 79 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio . . .

La matrice stocastica ottenuta e una matrice riducibile

P =

0 12

12 0 0 0

16

16

16

16

16

16

13

13 0 0 1

3 0

0 0 0 0 12

12

0 0 0 12 0 1

2

0 0 0 1 0 0

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 80 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio . . .

Per ottenere una matrice irriducibile settiamo il parametrod = 0.85 da applicare alla formula 2

¯P = 0.85 ∗ P +0.15 ∗ 11ᵀ

6

2 ¯P = dP + (1−d)11ᵀ

nSimone Rutigliano Algoritmi di feature selection 2 aprile 2015 81 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio . . .

6 5

4

2

3

22

2

1

1

11

1 0.85 · 0 + 0.15 · 16

2 0.85 · 12 + 0.15 · 1

6

3 0.85 · 1 + 0.15 · 16

0.85 ∗

. . .

......

.... . . 0 1

212

. . . 12 0 1

2

. . . 1 0 0

+ 0.15 ∗

. . .

......

.... . . 1

616

16

. . . 16

16

16

. . . 16

16

16

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 82 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio

Il vettore di PageRank associato alla precedente matrice sara

πᵀ = (0.3721 0.05396 0.0415 0.375 0.206 0.286)

PageRank indipendente dalla query

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 83 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

Esempio di raccomandazione . . .

Data una query contenente i termini t1 e t2

Inverted term-document associato sara

t1 −→ doc1, doc4, doc6t2 −→ doc1, doc3...

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 84 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

DefinizioneCalcolo

Esempio

. . . Esempio di raccomandazione

Calcoliamo l’insieme di rilevanza per la query q = (t1, t2)

Insieme di rilevanza {1 3 4 6}

I PageRank dei 4 documenti possono essere confrontati perindividuare quale dei documenti e il piu rilevante

ordinare le componenti del vettore pagerank associate aidocumenti selezionati in modo decrescente

π4 π6 π3 π1

doc4 −→ documento piu rilevanteseguono doc6, doc3, doc1

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 85 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 86 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Classificatore lineare

Definito un dataset etichettato in maniera binaria

Etichette di classe:

istanze negative -1

#istanze positive +1

Trovare una retta che sia in grado di classificare i dati in manieracorretta

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 87 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Classificatore lineare

Entrambe le soluzioni risultano corrette

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 88 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Classificatore lineare

In realta le soluzioni che possono soddisfare il problema possoessere potenzialmente infinite

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 89 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Support Vector Machine (SVM) - Idea di base

Un SVM lineare e un classificatore che riesce a trovare la rettaclassificante con il piu ampio margine possibile

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 90 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Definizioni

Un vettore W in uno spazio d-dimensionalerappresenta una lista di d numeri, e.g.W = (−1, 2)ᵀ

Vettore e un segmento orientato nello spazio

La norma del vettore ‖W ‖ rappresenta la sualunghezza

W ᵀX : proiezione dell’asseX su W

W ᵀX = 0→ punti che siintersecano con l’asse

W ᵀX = 1 : linea parallela aW ᵀX = 0 shiftata di 1

‖W ‖

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 91 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM - boundary e margini

Trovare il coefficiente angolare della retta (W ) e l’offset della retta(b) tale che:

tutti gli esempi positivi (X,Y=1) ricadano nella zona rossa

tutti gli esempi negativi (X,Y=-1) ricadano nella zona blu

il margine M sia massimizzato

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 92 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM come ottimizzazione di vincoli

Variabili:Vettore Woffset della retta bN punti (Xi ,Yi ) dove Yi = {−1, 1}

Funzione obiettivo:

max2

‖W ‖→ min ‖W ‖

Vincoli da considerare:

∀i se Yi =

{1 W ᵀXi + b ≥ 1

−1 W ᵀXi + b ≤ −1

unificabile in:Yi (W ᵀXi + b) ≥ 1

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 93 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM come Quadratic Program

Funzione obiettivo quadratica

Vincoli lineari

Questo problema e conosciuto come Quadratic Program(QP) per il quale esistono algoritmi che ricercano la soluzioneglobale piu efficiente

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 94 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Casi non separabili

Nel caso in cui ci dovessimo trovare in questa situazione

Esistono due possibili soluzioniSimone Rutigliano Algoritmi di feature selection 2 aprile 2015 95 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM con slack variable

Rilassare i vincoli

Per un dato boundary (W , b) si andranno a calcolare quantemisclassification sono state considerate

I vincoli diventeranno:

Yi (W ᵀXi + b) ≥ 1− εi

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 96 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM con slack variable

Il nuovo obiettivo diventa quindi:

Minimizzare gli errori di misclassification e le istanze presentiall’interno dei margini

minw

{‖ w ‖2 +C

∑i

εi

}

C indica il trade-off tra la larghezza dei margini e lemisclassification

In questo caso verra aggiunto un ulteriore vincolo

∀i εi ≥ 0

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 97 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

SVM con kernel trick

Il prodotto scalare viene tramutato in una funzione kernel nonlineare φ

L’algoritmo crea l’iperpiano che massimizza i margini nelnuovo spazio delle feature trasformato

φ

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 98 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Ricapitolando

SVM massimizza il margine di separazione tra gli iperpianiLa funzione di decisione viene creata sulla base del subset diesempi (support vectors)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 99 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Outline

1. ReliefFReliefCalcoliMissing valueMulticlass

2. mRMRMutual

InformationMinima

Ridondanza

MassimaRilevanza

FormuleBenefici

3. CFSubsetCorrelazioni

4. PCAAnalisi

5. Chi-SquaredEsempio

6. Info GainEntropiaEsempio

7. PageRankDefinizioneCalcoloEsempio

8. SVM

9. Gain RatioEsempio

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 100 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Gain Ratio - Idea di base

Estensione dell’information gain classico

Mira a penalizzare gli attributi con un numero elevato di valori

Normalizza l’InfoGain usando l’entropia di S in relazioneall’attributo Attr (Split information)

SplitInformation(S ,Attr) = −∑

v∈Values(Attr)

|Sv ||S |

log

(|Sv ||S |

)

Definizione di GainRatio:

GainRatio(S ,Attr) =IG (S ,Attr)

SplitInformation(S ,Attr)

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 101 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Esempio ...

Riprendendo l’esempio definito in precedenza

Day Outlook Temp Humidity Wind PlayTennis

D1 Sunny Hot High Weak NoD2 Sunny Hot High Strong NoD3 Overcast Hot High Weak YesD4 Rain Mild High Weak YesD5 Rain Cool Normal Weak YesD6 Rain Cool Normal Strong NoD7 Overcast Cool Normal Weak YesD8 Sunny Mild High Weak NoD9 Sunny Cold Normal Weak Yes

D10 Rain Mild Normal Strong YesD11 Sunny Mild Normal Strong YesD12 Overcast Mild High Strong YesD13 Overcast Hot Normal Weak YesD14 Rain Mild High Strong No

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 102 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

... esempio ...

Descrizione del dataset:

istanze di training : 14

istanze classificate come Yes : 9

istanze classificate come No : 5

Descrizione dell’attributo outlook:

sunny overcast rainyes 2 4 3no 3 0 2

tot 5 4 5

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 103 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

... esempio ...

La Split information dell’attributo outlook sara:

SI (S , outlook) = SI (S , sunny)+SI (S , overcast)+SI (S , rain) = 1.577

dove:

SI (S , sunny): − 514 · log2

(5

14

)= 0, 5305

SI (S , overcast): − 414 · log2

(4

14

)= 0, 5160

SI (S , rain): − 514 · log2

(5

14

)= 0, 5305

Quindi la gain ratio dell’attributo outlook sara:

GainRatio(S , outlook) =IG (S , outlook)

SI (S , outlook)=

0.246

1.577= 0.156

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 104 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

... esempio

Usando l’approccio del Gain Ratio il nuovo ranking sara:

GainRatio(S , outlook) =IG (S , outlook)

SI (S , outlook)=

0.246

1.577= 0.156

GainRatio(S , humidity) =IG (S , humidity)

SI (S , humidity)=

0.151

1= 0.151

GainRatio(S ,wind) =IG (S ,wind)

SI (S ,wind)=

0.048

0.9= 0.053

GainRatio(S , temperature) =IG (S , temperature)

SI (S , temperature)=

0.029

1.788= 0.016

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 105 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

Esempio

Ricapitolando

Di seguito sono mostrati gli attributi con i rispettivi valori e ilnumero di istanze avvalorate in quel modo

outlook

sunny : 5

overcast : 4

rainy : 5

humidity

{high : 7

normal : 7

windy

{strong : 6

weak : 8temperature

hot : 4

mild : 6

cool : 3

cold : 1

InfoGain GainRatioOutlook .246 .156 Lhumidity .151 .151windy .048 .053 Ktemperature .029 .016 L

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 106 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

References I

Monica Bianchini, Marco Gori, and Franco Scarselli.

Inside pagerank.

ACM Trans. Internet Technol., 5(1):92–128, February 2005.

Isabelle Guyon, Jason Weston, Stephen Barnhill, and Vladimir Vapnik.

Gene selection for cancer classification using support vector machines.

Machine learning, 46(1-3):389–422, 2002.

M. A. Hall.

Correlation-based Feature Subset Selection for Machine Learning.

PhD thesis, University of Waikato, Hamilton, New Zealand, 1998.

Harold Hotelling.

Analysis of a complex of statistical variables into principal components.

Journal of educational psychology, 24(6):417, 1933.

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 107 / 108

ReliefFmRMR

CFSubsetPCA

Chi-Squared

Info GainPageRank

SVMGain Ratio

References II

Igor Kononenko, Edvard Simec, and Marko Robnik-Sikonja.

Overcoming the myopia of inductive learning algorithms with relieff.

Applied Intelligence, 7(1):39–55, 1997.

Hanchuan Peng, Fuhui Long, and Chris Ding.

Feature selection based on mutual information: criteria ofmax-dependency, max-relevance, and min-redundancy.

IEEE Transactions on Pattern Analysis and Machine Intelligence,27:1226–1238, 2005.

George Waddel Snedecor and William G. Cochran.

Statistical methods.

Iowa State University Press, 1989.

Simone Rutigliano Algoritmi di feature selection 2 aprile 2015 108 / 108