SlideShare uma empresa Scribd logo
1 de 80
Baixar para ler offline
Tesi di Laurea Magistrale
in
Accesso all’Informazione ed Elaborazione del Linguaggio Naturale
Selezione automatica di attributi estratti
dalla Linked Open Data cloud in
un recommender system basato su grafi
Simone Rutigliano
Corso di Laurea Magistrale in Informatica
29 Aprile 2015
Relatore:
Chiar.mo Prof. Giovanni Semeraro
Correlatore:
Dr. Cataldo Musto
Recommender System
Simone Rutigliano 29 Aprile 2015 1
Recommender System - graph-based representation
Nodi
Utenti
Item
Archi
Preferenza dell’utente
verso quell’item
Simone Rutigliano 29 Aprile 2015 2
Come raccomandare gli item?
Algoritmo utilizzato per determinare l’importanza di un nodo in un
grafo `e PageRank
Sviluppato da Larry Page e Sergey Brin nel 1998 presso la
Stanford University
Algoritmo di ricerca di Google
“The heart of our software is PageRank TM. . . it provides the
basis for all of our web search tools.”
Lo score restituito dal PageRank per ogni item pu`o essere
utilizzato per ordinare gli item dal pi`u rilevante al meno
rilevante
Simone Rutigliano 29 Aprile 2015 3
PageRank
Valuta l’importanza di un documento sulla base del numero e
della qualit`a di connessioni che quel documento avr`a all’interno del
grafo di appartenza
Simone Rutigliano 29 Aprile 2015 4
PageRank con Priorit`a
Il pageRank classico assegna una equa probabilit`a ad ogni
arco del grafo
Variante con Priorit`a definita in [Hav03] introduce un bias a
favore di alcuni nodi
enfatizza maggiormente le preferenze dell’utente
Simone Rutigliano 29 Aprile 2015 5
Applicazione del PageRank in un RS
`E possibile utilizzare il PageRank come algoritmo di
raccomandazione in un Recommender System graph-based
Simone Rutigliano 29 Aprile 2015 6
Applicazione del PageRank in un RS
Simone Rutigliano 29 Aprile 2015 7
Applicazione del PageRank in un RS
Simone Rutigliano 29 Aprile 2015 8
Applicazione del PageRank in un RS
Simone Rutigliano 29 Aprile 2015 9
Estensione del RS
`E possibile arricchire il grafo aggiungendo nuove informazioni
relative agli item?
Simone Rutigliano 29 Aprile 2015 10
Linked Open Data cloud
Metodologia per pubblicare, condividere e collegare
dati strutturati sul web
Simone Rutigliano 29 Aprile 2015 11
Linked Open Data cloud
Collezione (Cloud) di dataset:
Interconnessi fra loro (Linked)
Fruibili liberamente e gratuitamente (Open)
Descritti attraverso RDF
Simone Rutigliano 29 Aprile 2015 12
DBpedia
Centro della Linked
Open Data cloud
Conversione di
Wikipedia in RDF
Simone Rutigliano 29 Aprile 2015 13
Partendo da Wikipedia. . .
Simone Rutigliano 29 Aprile 2015 14
. . . otteniamo DBpedia
Simone Rutigliano 29 Aprile 2015 15
Integrare LOD nel Recommender System. . .
Partendo dal grafo User-Item
Simone Rutigliano 29 Aprile 2015 16
. . . Integrare LOD nel Recommender System. . .
Espandendo il film Inglorious Basterds attraverso la Linked Open
Data
Simone Rutigliano 29 Aprile 2015 17
. . . Integrare LOD nel Recommender System. . .
Espandendo il film Django attraverso la Linked Open Data
Simone Rutigliano 29 Aprile 2015 18
. . . Integrare LOD nel Recommender System. . .
Espandendo anche gli altri film presenti nel grafo avremo
Simone Rutigliano 29 Aprile 2015 19
. . . PageRank nel nuovo grafo
Riapplicando il PageRank si potrebbe avere un nuovo ranking
Simone Rutigliano 29 Aprile 2015 20
PageRank + LOD: pro e contro
PRO
nuove connessioni nel grafo
CONTRO
maggiore costo computazionale
per l’esecuzione del PageRank
alcune propriet`a non sono
rilevanti
Simone Rutigliano 29 Aprile 2015 21
PageRank + LOD: pro e contro
PRO
nuove connessioni nel grafo
CONTRO
maggiore costo computazionale
per l’esecuzione del PageRank
alcune propriet`a non sono
rilevanti
Simone Rutigliano 29 Aprile 2015 21
PageRank + LOD: pro e contro
PRO
nuove connessioni nel grafo
CONTRO
maggiore costo computazionale
per l’esecuzione del PageRank
alcune propriet`a non sono
rilevanti
Simone Rutigliano 29 Aprile 2015 21
Tecniche di feature selection
SOLUZIONE: Applicare tecniche di feature selection!
Simone Rutigliano 29 Aprile 2015 22
Research question
1 L’uso delle propriet`a della LOD
migliorano le performance del
recommender?
2 Si possono trarre vantaggi
dall’utilizzo di tecniche di FS sulla
LOD?
3 Esiste una connessione tra la scelta
della tecnica di FS e il
comportamento dell’algoritmo?
4 Come si comporta la nostra
metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 23
Research question
1 L’uso delle propriet`a della LOD
migliorano le performance del
recommender?
2 Si possono trarre vantaggi
dall’utilizzo di tecniche di FS sulla
LOD?
3 Esiste una connessione tra la scelta
della tecnica di FS e il
comportamento dell’algoritmo?
4 Come si comporta la nostra
metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 23
Research question
1 L’uso delle propriet`a della LOD
migliorano le performance del
recommender?
2 Si possono trarre vantaggi
dall’utilizzo di tecniche di FS sulla
LOD?
3 Esiste una connessione tra la scelta
della tecnica di FS e il
comportamento dell’algoritmo?
4 Come si comporta la nostra
metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 23
Research question
1 L’uso delle propriet`a della LOD
migliorano le performance del
recommender?
2 Si possono trarre vantaggi
dall’utilizzo di tecniche di FS sulla
LOD?
3 Esiste una connessione tra la scelta
della tecnica di FS e il
comportamento dell’algoritmo?
4 Come si comporta la nostra
metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 23
Protocollo Sperimentale - Datasets
Movielens dataset
Rating di film estratto dal sito di MovieLens dal GroupLens
Research (http://movielens.org)
Users: 943
Films: 1.682
Binary ratings: 100.000
Sparsity: 93,69%
Positive Rating: 55,17%
Avg. Rating per user: 84,83
Avg. Rating per item: 48,48
Simone Rutigliano 29 Aprile 2015 24
Protocollo Sperimentale - Datasets
Books dataset
Rating di libri usato per la Challenge di ESWC 2014
Users: 6.181
Books: 6.733
Binary ratings: 72.372
Sparsity: 99,83%
Positive Rating: 45,85%
Avg. Rating per user: 11,70
Avg. Rating per item: 10,74
Molto sparso
Sbilanciato verso rating negativi
Simone Rutigliano 29 Aprile 2015 25
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Protocollo Sperimentale - Setup
Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori
Tecnica
PageRank con
priorit`a
Split
Movielens: 5 fold
Books: training e
test fisso
Rappresentazioni
Graph
Graph + LOD
Graph + LOD + FS
Propriet`a totali
60 per Movielens
70 per Books
Tecniche di FS
PageRank
χ2
Info Gain
Gain Ratio
mRMR
PCA
SVM
Features
selezionate
10
30
50
Metriche
F1
Diversity (ILD)
Simone Rutigliano 29 Aprile 2015 26
Experiment 1
L’uso delle propriet`a della LOD migliorano le performance del
recommender?
Movielens Books
Graph Graph + LOD Graph Graph + LOD
F1@5 0,5389 0,5424 0,5502 0,5504
F1@10 0,6023 0,6083 0,6431 0,6421
F1@15 0,5941 0,5963
F1@20 0,5662 0,5686
Time(min) 72 880 +1122% 104 2.433 +2239%
Nodes 2.466 53.734 +2078% 12.649 211.661 +1573%
Edges 44.300 178.646 +303% 33.189 534.841 +1511%
Tutte differenze statisticamente significative
(Wilcoxon p-value < 0.01)
Simone Rutigliano 29 Aprile 2015 27
Experiment 2 - Movielens
Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD?
N Feature PageRank mRMR χ2 SVM GainRatio InfoGain PCA
F1@5
10 0,5418 0,5397 0,5414 0,5382 0,5372 0,5397 0,5406
30 0,5429 0,5429 0,5419 0,5413 0,5398 0,5396 0,5413
50 0,5412 0,5421 0,5420 0,5421 0,5406 0,5412 0,5431
F1@10
10 0,6069 0,6039 0,6056 0,6043 0,6033 0,6039 0,6045
30 0,6084 0,6072 0,6070 0,6074 0,6059 0,6055 0,6081
50 0,6070 0,6077 0,6079 0,6081 0,6078 0,6072 0,6088
F1@15
10 0,5964 0,5950 0,5955 0,5943 0,5938 0,5950 0,5948
30 0,5967 0,5962 0,5967 0,5964 0,5960 0,5955 0,5967
50 0,5955 0,5962 0,5972 0,5966 0,5968 0,5962 0,5970
F1@20
10 0,5684 0,5668 0,5672 0,5669 0,5666 0,5668 0,5667
30 0,5684 0,5679 0,5679 0,5679 0,5675 0,5675 0,5689
50 0,5682 0,5685 0,5686 0,5683 0,5687 0,5685 0,5689
Ad esclusione del PageRank, tutte le altre tecniche hanno il
loro picco su 50 features
Tutte differenze statisticamente significative
(Friedman p-value < 0.01)
Simone Rutigliano 29 Aprile 2015 28
Experiment 2 - Movielens
Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD?
Simone Rutigliano 29 Aprile 2015 29
Experiment 2 - Movielens Riepilogo
Paragonando i risultati migliori con le baseline
Graph Graph + LOD Graph + LOD + PCA
F1@5 0,5389 0,5424 0,5431
F1@10 0,6023 0,6083 0,6088
F1@15 0,5941 0,5963 0,5970
F1@20 0,5662 0,5686 0,5689
Time(min) 72 880 585 -33%
Nodes 2.466 53.734 48.327 -10%
Edges 44.300 178.646 167.319 -6%
Simone Rutigliano 29 Aprile 2015 30
Experiment 2 - Books
Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD?
N Feature PageRank mRMR χ2 SVM GainRatio InfoGain PCA
F1@5
10 0,5515 0,5493 0,5512 0,5507 0,5524 0,5540 0,5513
30 0,5518 0,5519 0,5517 0,5519 0,5524 0,5519 0,5510
50 0,5517 0,5511 0,5505 0,5512 0,5503 0,5511 0,5513
F1@10
10 0,6431 0,6435 0,6423 0,6434 0,6435 0,6445 0,6433
30 0,6422 0,6427 0,6420 0,6430 0,6431 0,6427 0,6432
50 0,6418 0,6419 0,6419 0,6426 0,6425 0,6419 0,6428
I risultati migliori con 10 e 30 feature
Tutte differenze statisticamente significative
(Friedman p-value < 0.01)
Simone Rutigliano 29 Aprile 2015 31
Experiment 2 - Books
Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD?
InfoGain risulta essere la tecnica pi`u performante
Simone Rutigliano 29 Aprile 2015 32
Experiment 2 - Books Riepilogo
Paragonando i risultati migliori con le baseline
Graph Graph + LOD Graph + LOD + InfoGain
F1@5 0,5502 0,5504 0,5540
F1@10 0,6431 0,6421 0,6445
Time(min) 104 2.433 1.341 -45%
Nodes 12.649 211.661 88.669 -58%
Edges 33.189 534.841 142.334 -73%
Simone Rutigliano 29 Aprile 2015 33
Experiment 3 - Movielens
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 34
Experiment 3 - Movielens
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 35
Experiment 3 - Movielens
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 36
Experiment 3 - Books
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 37
Experiment 3 - Books
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 38
Experiment 3 - Books
Esiste una connessione tra la scelta della tecnica di FS e il
comportamento dell’algoritmo?
Simone Rutigliano 29 Aprile 2015 39
Experiment 4 - Movielens
Come si comporta la nostra metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 40
Experiment 4 - Movielens
Come si comporta la nostra metodologia rispetto allo stato
dell’arte?
Simone Rutigliano 29 Aprile 2015 41
Experiment 4 - Books
Simone Rutigliano 29 Aprile 2015 42
Experiment 4 - Books
Simone Rutigliano 29 Aprile 2015 43
Conclusioni
L’uso delle propriet`a della LOD migliora le
performance del recommender
Si possono trarre vantaggi dall’utilizzo di
tecniche di FS sulla LOD sia in termini di F1 che
in tempo di esecuzione
Alcune tecniche di FS sono in grado di migliorare
un particolare aspetto anzich´e altri
Rispetto allo stato dell’arte il sistema realizzato
riesce a produrre risultati migliori
Simone Rutigliano 29 Aprile 2015 44
Conclusioni
L’uso delle propriet`a della LOD migliora le
performance del recommender
Si possono trarre vantaggi dall’utilizzo di
tecniche di FS sulla LOD sia in termini di F1 che
in tempo di esecuzione
Alcune tecniche di FS sono in grado di migliorare
un particolare aspetto anzich´e altri
Rispetto allo stato dell’arte il sistema realizzato
riesce a produrre risultati migliori
Simone Rutigliano 29 Aprile 2015 44
Conclusioni
L’uso delle propriet`a della LOD migliora le
performance del recommender
Si possono trarre vantaggi dall’utilizzo di
tecniche di FS sulla LOD sia in termini di F1 che
in tempo di esecuzione
Alcune tecniche di FS sono in grado di migliorare
un particolare aspetto anzich´e altri
Rispetto allo stato dell’arte il sistema realizzato
riesce a produrre risultati migliori
Simone Rutigliano 29 Aprile 2015 44
Conclusioni
L’uso delle propriet`a della LOD migliora le
performance del recommender
Si possono trarre vantaggi dall’utilizzo di
tecniche di FS sulla LOD sia in termini di F1 che
in tempo di esecuzione
Alcune tecniche di FS sono in grado di migliorare
un particolare aspetto anzich´e altri
Rispetto allo stato dell’arte il sistema realizzato
riesce a produrre risultati migliori
Simone Rutigliano 29 Aprile 2015 44
Sviluppi futuri
Testare altre tecniche di Feature Selection
Combinare le tecniche di FS in base ai risultati ottenuti
Unire o intersecare le tecniche migliori
Trovare il numero esatto di feature da utilizzare in ogni
tecnica di FS
Simone Rutigliano 29 Aprile 2015 45
Sviluppi futuri
Testare altre tecniche di Feature Selection
Combinare le tecniche di FS in base ai risultati ottenuti
Unire o intersecare le tecniche migliori
Trovare il numero esatto di feature da utilizzare in ogni
tecnica di FS
Simone Rutigliano 29 Aprile 2015 45
Sviluppi futuri
Testare altre tecniche di Feature Selection
Combinare le tecniche di FS in base ai risultati ottenuti
Unire o intersecare le tecniche migliori
Trovare il numero esatto di feature da utilizzare in ogni
tecnica di FS
Simone Rutigliano 29 Aprile 2015 45
Simone Rutigliano 29 Aprile 2015 46
References I
Taher H. Haveliwala.
Topic-sensitive pagerank: A context-sensitive ranking algorithm for web
search.
IEEE Trans. on Knowl. and Data Eng., 15(4):784–796, July 2003.
Simone Rutigliano 29 Aprile 2015 47
Funzionamento del PageRank
Consideriamo un grafo composto da sei documenti cosi connessi
1 2
3
56
4
Simone Rutigliano 29 Aprile 2015 48
Funzionamento del PageRank
Creazione della matrice di Google per righe P del grafo
1 2
3
56
4
P =











0 1
2
1
2 0 0 0
0 0 0 0 0 0
1
3
1
3 0 0 1
3 0
0 0 0 0 1
2
1
2
0 0 0 1
2 0 1
2
0 0 0 1 0 0











Simone Rutigliano 29 Aprile 2015 49
Funzionamento del PageRank
Creazione della matrice di Google per righe P del grafo
1 2
3
56
4
P =











0 1
2
1
2 0 0 0
0 0 0 0 0 0
1
3
1
3 0 0 1
3 0
0 0 0 0 1
2
1
2
0 0 0 1
2 0 1
2
0 0 0 1 0 0











Simone Rutigliano 29 Aprile 2015 50
Funzionamento del PageRank
Creazione della matrice di Google per righe P del grafo
1 2
3
56
4
P =











0 1
2
1
2 0 0 0
0 0 0 0 0 0
1
3
1
3 0 0 1
3 0
0 0 0 0 1
2
1
2
0 0 0 1
2 0 1
2
0 0 0 1 0 0











Simone Rutigliano 29 Aprile 2015 51
. . . Funzionamento PageRank - Stocasticit`a . . .
Considerato che il nodo 2 `e un nodo dangling1 sar`a necessario
trasformare il grafo e rendere stocastica la matrice corrispondente
1 2
3
56
4
¯P =











0 1
2
1
2 0 0 0
1
6
1
6
1
6
1
6
1
6
1
6
1
3
1
3 0 0 1
3 0
0 0 0 0 1
2
1
2
0 0 0 1
2 0 1
2
0 0 0 1 0 0











s 1
Privo di link uscenti
Simone Rutigliano 29 Aprile 2015 52
. . . Funzionamento PageRank - irriducibilit`a. . .
Il grafo dovr`a subire un’ulteriore trasformazione rendendo la
matrice di Google per righe irriducibile
1 2
3
56
4
¯P =











0 1
2
1
2 0 0 0
1
6
1
6
1
6
1
6
1
6
1
6
1
3
1
3 0 0 1
3 0
0 0 0 0 1
2
1
2
0 0 0 1
2 0 1
2
0 0 0 1 0 0











s
Simone Rutigliano 29 Aprile 2015 53
. . . Funzionamento PageRank - irriducibilit`a. . .
Per rendere irriducibile la matrice i valori verranno ricalcolati
secondo la formula:
¯¯P = 0.85 ∗ ¯P +
0.15 ∗ 11
6
1 2
3
56
4
¯¯P =











0.025 0.45 0.45 0.03 0.03 0.03
0.17 0.17 0.17 0.17 0.17 0.17
0.31 0.31 0.03 0.03 0.31 0.03
0.03 0.03 0.03 0.03 0.45 0.45
0.03 0.03 0.03 0.45 0.03 0.45
0 0.03 0.03 1 0.03 0.03











s
Simone Rutigliano 29 Aprile 2015 54
. . . Funzionamento PageRank
Attraverso il metodo delle potenze si andranno a calcolare gli
autovalori della matrice ottenendo i valori del PageRank
1 2
3
56
4
π =











0.372
0.054
0.042
0.375
0.206
0.286











s
Il ranking dei documenti sar`a quindi: 4 - 1 - 6 - 5 - 2 - 1
Simone Rutigliano 29 Aprile 2015 55
PageRank
Utilizza la stessa tecnica utilizzata nella raccomandazione per
effettuare anche la feature selection
Cerca le feature pi`u importanti in base a quante volte sono
presenti nella Linked Open Data
Simone Rutigliano 29 Aprile 2015 56
Chi Squared
Verifica se esiste una correlazione tra le feature e l’attributo di
classe usando la statistica χ2
Il test statistico sar`a:
χ2
=
C
i=1
(Oi − Ei )2
Ei
con gradi di libert`a pari a C − 1
dove
C = numero di categorie
Oi = frequenze osservate per la categoria i
Ei = frequenze attese per la categoria i
Simone Rutigliano 29 Aprile 2015 57
Information Gain
Valuta gli attributi sulla base del guadagno di informazione che
apporta al dataset
Guadagno ottenuto riducendo l’incertezza iniziale
IG(S, 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 29 Aprile 2015 58
Gain Ratio
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 relazione
all’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 29 Aprile 2015 59
mRMR
Consiste nel trovare il subset di feature che riescono
contemporaneamente a garantire:
minima ridondanza tra le features
features tra loro pi`u dissimilari possibili
massima rilevanza delle features con la classe target
features pi`u discriminanti per la classe target
Simone Rutigliano 29 Aprile 2015 60
Principal Component Analysis (PCA)
Riduce la dimensionalit`a del dataset combinando le variabili in
gioco
Mantiene lo stesso apporto informativo del dataset originale
Le nuove variabili, chiamate Principal Components (PC), sono
non correlate, e sono ordinate in base all’informazione che
essa contiene
Simone Rutigliano 29 Aprile 2015 61
Principal Component Analysis (PCA)
Trova l’asse che meglio rappresenta la pi`u grande variazione
(First principal component) e proietta tutti i punti su
quest’asse
Definisce la nuova dimensionalit`a sulla base degli autovettori
della matrice di covarianza associata
Simone Rutigliano 29 Aprile 2015 62
Support Vector Machine (SVM)
SVM massimizza il margine di separazione tra gli iperpiani
La funzione di decisione viene creata sulla base del subset di
esempi (support vectors)
Simone Rutigliano 29 Aprile 2015 63

Mais conteúdo relacionado

Semelhante a Presentation Master Degree

SERP step by step: viaggio nell’evoluzione dei motori di ricerca
SERP step by step: viaggio nell’evoluzione dei motori di ricercaSERP step by step: viaggio nell’evoluzione dei motori di ricerca
SERP step by step: viaggio nell’evoluzione dei motori di ricercaSemrush Italia
 
Real-time discovery e sentiment analysis su Twitter: Blogmeter Now
Real-time discovery e sentiment analysis su Twitter: Blogmeter NowReal-time discovery e sentiment analysis su Twitter: Blogmeter Now
Real-time discovery e sentiment analysis su Twitter: Blogmeter NowMe-Source S.r.l./Blogmeter
 
AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)Davide Mauri
 
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...Tecniche di raccomandazione automatica per la sottomissione di articoli scien...
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...GiulioPic
 
Final presentation of Project Management course (Gestione Progetti Software) ...
Final presentation of Project Management course (Gestione Progetti Software) ...Final presentation of Project Management course (Gestione Progetti Software) ...
Final presentation of Project Management course (Gestione Progetti Software) ...Alexander Minichino
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Commit University
 
Sviluppare motore raccomandazione Festival ICT
Sviluppare motore raccomandazione Festival ICTSviluppare motore raccomandazione Festival ICT
Sviluppare motore raccomandazione Festival ICTRoberto Marmo
 
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)Alessandro Zonin
 
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...Codemotion
 
Software bill of materials: strumenti e analisi di progetti open source dell’...
Software bill of materials: strumenti e analisi di progetti open source dell’...Software bill of materials: strumenti e analisi di progetti open source dell’...
Software bill of materials: strumenti e analisi di progetti open source dell’...FedericoBoni3
 
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie Il Link Building Oggi: Valore dei Link, Strumenti e Strategie
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie Semrush
 
MuleSoft_Meetup__Official__8_.pdf
MuleSoft_Meetup__Official__8_.pdfMuleSoft_Meetup__Official__8_.pdf
MuleSoft_Meetup__Official__8_.pdfFlorence Consulting
 
#AdUmbria2015 - workshop openness: gli open data
#AdUmbria2015 - workshop openness: gli open data#AdUmbria2015 - workshop openness: gli open data
#AdUmbria2015 - workshop openness: gli open dataAgenda digitale Umbria
 
Digital 1nn0vation saturday pn 2019 - ML.NET
Digital 1nn0vation saturday pn 2019 - ML.NETDigital 1nn0vation saturday pn 2019 - ML.NET
Digital 1nn0vation saturday pn 2019 - ML.NETMarco Zamana
 
Metodologie e sperimentazione di confronto tra tool di data integration
Metodologie e sperimentazione di confronto tra tool di data integrationMetodologie e sperimentazione di confronto tra tool di data integration
Metodologie e sperimentazione di confronto tra tool di data integrationAlessandro Longo
 

Semelhante a Presentation Master Degree (20)

SERP step by step: viaggio nell’evoluzione dei motori di ricerca
SERP step by step: viaggio nell’evoluzione dei motori di ricercaSERP step by step: viaggio nell’evoluzione dei motori di ricerca
SERP step by step: viaggio nell’evoluzione dei motori di ricerca
 
Real-time discovery e sentiment analysis su Twitter: Blogmeter Now
Real-time discovery e sentiment analysis su Twitter: Blogmeter NowReal-time discovery e sentiment analysis su Twitter: Blogmeter Now
Real-time discovery e sentiment analysis su Twitter: Blogmeter Now
 
Presentazione ufficiale
Presentazione ufficialePresentazione ufficiale
Presentazione ufficiale
 
AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)
 
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...Tecniche di raccomandazione automatica per la sottomissione di articoli scien...
Tecniche di raccomandazione automatica per la sottomissione di articoli scien...
 
10 - Ricercare nel web II
10 - Ricercare nel web II10 - Ricercare nel web II
10 - Ricercare nel web II
 
Other Algorithms of features selection in LOD contest
Other Algorithms of features selection in LOD contestOther Algorithms of features selection in LOD contest
Other Algorithms of features selection in LOD contest
 
Final presentation of Project Management course (Gestione Progetti Software) ...
Final presentation of Project Management course (Gestione Progetti Software) ...Final presentation of Project Management course (Gestione Progetti Software) ...
Final presentation of Project Management course (Gestione Progetti Software) ...
 
PageRank
PageRankPageRank
PageRank
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
 
Sviluppare motore raccomandazione Festival ICT
Sviluppare motore raccomandazione Festival ICTSviluppare motore raccomandazione Festival ICT
Sviluppare motore raccomandazione Festival ICT
 
Applicazioni di Advanced Analytics
Applicazioni di Advanced AnalyticsApplicazioni di Advanced Analytics
Applicazioni di Advanced Analytics
 
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)
Introduzione a NVIVO per l'analisi qualitativa dei dati (CAQDAS)
 
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
 
Software bill of materials: strumenti e analisi di progetti open source dell’...
Software bill of materials: strumenti e analisi di progetti open source dell’...Software bill of materials: strumenti e analisi di progetti open source dell’...
Software bill of materials: strumenti e analisi di progetti open source dell’...
 
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie Il Link Building Oggi: Valore dei Link, Strumenti e Strategie
Il Link Building Oggi: Valore dei Link, Strumenti e Strategie
 
MuleSoft_Meetup__Official__8_.pdf
MuleSoft_Meetup__Official__8_.pdfMuleSoft_Meetup__Official__8_.pdf
MuleSoft_Meetup__Official__8_.pdf
 
#AdUmbria2015 - workshop openness: gli open data
#AdUmbria2015 - workshop openness: gli open data#AdUmbria2015 - workshop openness: gli open data
#AdUmbria2015 - workshop openness: gli open data
 
Digital 1nn0vation saturday pn 2019 - ML.NET
Digital 1nn0vation saturday pn 2019 - ML.NETDigital 1nn0vation saturday pn 2019 - ML.NET
Digital 1nn0vation saturday pn 2019 - ML.NET
 
Metodologie e sperimentazione di confronto tra tool di data integration
Metodologie e sperimentazione di confronto tra tool di data integrationMetodologie e sperimentazione di confronto tra tool di data integration
Metodologie e sperimentazione di confronto tra tool di data integration
 

Último

Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Associazione Digital Days
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Associazione Digital Days
 
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Associazione Digital Days
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Associazione Digital Days
 
ScrapeGraphAI: a new way to scrape context with AI
ScrapeGraphAI: a new way to scrape context with AIScrapeGraphAI: a new way to scrape context with AI
ScrapeGraphAI: a new way to scrape context with AIinfogdgmi
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Associazione Digital Days
 
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Associazione Digital Days
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Associazione Digital Days
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Associazione Digital Days
 

Último (9)

Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
 
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
 
ScrapeGraphAI: a new way to scrape context with AI
ScrapeGraphAI: a new way to scrape context with AIScrapeGraphAI: a new way to scrape context with AI
ScrapeGraphAI: a new way to scrape context with AI
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
 
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
 

Presentation Master Degree

  • 1. Tesi di Laurea Magistrale in Accesso all’Informazione ed Elaborazione del Linguaggio Naturale Selezione automatica di attributi estratti dalla Linked Open Data cloud in un recommender system basato su grafi Simone Rutigliano Corso di Laurea Magistrale in Informatica 29 Aprile 2015 Relatore: Chiar.mo Prof. Giovanni Semeraro Correlatore: Dr. Cataldo Musto
  • 3. Recommender System - graph-based representation Nodi Utenti Item Archi Preferenza dell’utente verso quell’item Simone Rutigliano 29 Aprile 2015 2
  • 4. Come raccomandare gli item? Algoritmo utilizzato per determinare l’importanza di un nodo in un grafo `e PageRank Sviluppato da Larry Page e Sergey Brin nel 1998 presso la Stanford University Algoritmo di ricerca di Google “The heart of our software is PageRank TM. . . it provides the basis for all of our web search tools.” Lo score restituito dal PageRank per ogni item pu`o essere utilizzato per ordinare gli item dal pi`u rilevante al meno rilevante Simone Rutigliano 29 Aprile 2015 3
  • 5. PageRank Valuta l’importanza di un documento sulla base del numero e della qualit`a di connessioni che quel documento avr`a all’interno del grafo di appartenza Simone Rutigliano 29 Aprile 2015 4
  • 6. PageRank con Priorit`a Il pageRank classico assegna una equa probabilit`a ad ogni arco del grafo Variante con Priorit`a definita in [Hav03] introduce un bias a favore di alcuni nodi enfatizza maggiormente le preferenze dell’utente Simone Rutigliano 29 Aprile 2015 5
  • 7. Applicazione del PageRank in un RS `E possibile utilizzare il PageRank come algoritmo di raccomandazione in un Recommender System graph-based Simone Rutigliano 29 Aprile 2015 6
  • 8. Applicazione del PageRank in un RS Simone Rutigliano 29 Aprile 2015 7
  • 9. Applicazione del PageRank in un RS Simone Rutigliano 29 Aprile 2015 8
  • 10. Applicazione del PageRank in un RS Simone Rutigliano 29 Aprile 2015 9
  • 11. Estensione del RS `E possibile arricchire il grafo aggiungendo nuove informazioni relative agli item? Simone Rutigliano 29 Aprile 2015 10
  • 12. Linked Open Data cloud Metodologia per pubblicare, condividere e collegare dati strutturati sul web Simone Rutigliano 29 Aprile 2015 11
  • 13. Linked Open Data cloud Collezione (Cloud) di dataset: Interconnessi fra loro (Linked) Fruibili liberamente e gratuitamente (Open) Descritti attraverso RDF Simone Rutigliano 29 Aprile 2015 12
  • 14. DBpedia Centro della Linked Open Data cloud Conversione di Wikipedia in RDF Simone Rutigliano 29 Aprile 2015 13
  • 15. Partendo da Wikipedia. . . Simone Rutigliano 29 Aprile 2015 14
  • 16. . . . otteniamo DBpedia Simone Rutigliano 29 Aprile 2015 15
  • 17. Integrare LOD nel Recommender System. . . Partendo dal grafo User-Item Simone Rutigliano 29 Aprile 2015 16
  • 18. . . . Integrare LOD nel Recommender System. . . Espandendo il film Inglorious Basterds attraverso la Linked Open Data Simone Rutigliano 29 Aprile 2015 17
  • 19. . . . Integrare LOD nel Recommender System. . . Espandendo il film Django attraverso la Linked Open Data Simone Rutigliano 29 Aprile 2015 18
  • 20. . . . Integrare LOD nel Recommender System. . . Espandendo anche gli altri film presenti nel grafo avremo Simone Rutigliano 29 Aprile 2015 19
  • 21. . . . PageRank nel nuovo grafo Riapplicando il PageRank si potrebbe avere un nuovo ranking Simone Rutigliano 29 Aprile 2015 20
  • 22. PageRank + LOD: pro e contro PRO nuove connessioni nel grafo CONTRO maggiore costo computazionale per l’esecuzione del PageRank alcune propriet`a non sono rilevanti Simone Rutigliano 29 Aprile 2015 21
  • 23. PageRank + LOD: pro e contro PRO nuove connessioni nel grafo CONTRO maggiore costo computazionale per l’esecuzione del PageRank alcune propriet`a non sono rilevanti Simone Rutigliano 29 Aprile 2015 21
  • 24. PageRank + LOD: pro e contro PRO nuove connessioni nel grafo CONTRO maggiore costo computazionale per l’esecuzione del PageRank alcune propriet`a non sono rilevanti Simone Rutigliano 29 Aprile 2015 21
  • 25. Tecniche di feature selection SOLUZIONE: Applicare tecniche di feature selection! Simone Rutigliano 29 Aprile 2015 22
  • 26. Research question 1 L’uso delle propriet`a della LOD migliorano le performance del recommender? 2 Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? 3 Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? 4 Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 23
  • 27. Research question 1 L’uso delle propriet`a della LOD migliorano le performance del recommender? 2 Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? 3 Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? 4 Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 23
  • 28. Research question 1 L’uso delle propriet`a della LOD migliorano le performance del recommender? 2 Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? 3 Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? 4 Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 23
  • 29. Research question 1 L’uso delle propriet`a della LOD migliorano le performance del recommender? 2 Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? 3 Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? 4 Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 23
  • 30. Protocollo Sperimentale - Datasets Movielens dataset Rating di film estratto dal sito di MovieLens dal GroupLens Research (http://movielens.org) Users: 943 Films: 1.682 Binary ratings: 100.000 Sparsity: 93,69% Positive Rating: 55,17% Avg. Rating per user: 84,83 Avg. Rating per item: 48,48 Simone Rutigliano 29 Aprile 2015 24
  • 31. Protocollo Sperimentale - Datasets Books dataset Rating di libri usato per la Challenge di ESWC 2014 Users: 6.181 Books: 6.733 Binary ratings: 72.372 Sparsity: 99,83% Positive Rating: 45,85% Avg. Rating per user: 11,70 Avg. Rating per item: 10,74 Molto sparso Sbilanciato verso rating negativi Simone Rutigliano 29 Aprile 2015 25
  • 32. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 33. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 34. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 35. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 36. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 37. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 38. Protocollo Sperimentale - Setup Ogni esperimento sar`a dato dalla combinazione dei seguenti fattori Tecnica PageRank con priorit`a Split Movielens: 5 fold Books: training e test fisso Rappresentazioni Graph Graph + LOD Graph + LOD + FS Propriet`a totali 60 per Movielens 70 per Books Tecniche di FS PageRank χ2 Info Gain Gain Ratio mRMR PCA SVM Features selezionate 10 30 50 Metriche F1 Diversity (ILD) Simone Rutigliano 29 Aprile 2015 26
  • 39. Experiment 1 L’uso delle propriet`a della LOD migliorano le performance del recommender? Movielens Books Graph Graph + LOD Graph Graph + LOD F1@5 0,5389 0,5424 0,5502 0,5504 F1@10 0,6023 0,6083 0,6431 0,6421 F1@15 0,5941 0,5963 F1@20 0,5662 0,5686 Time(min) 72 880 +1122% 104 2.433 +2239% Nodes 2.466 53.734 +2078% 12.649 211.661 +1573% Edges 44.300 178.646 +303% 33.189 534.841 +1511% Tutte differenze statisticamente significative (Wilcoxon p-value < 0.01) Simone Rutigliano 29 Aprile 2015 27
  • 40. Experiment 2 - Movielens Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? N Feature PageRank mRMR χ2 SVM GainRatio InfoGain PCA F1@5 10 0,5418 0,5397 0,5414 0,5382 0,5372 0,5397 0,5406 30 0,5429 0,5429 0,5419 0,5413 0,5398 0,5396 0,5413 50 0,5412 0,5421 0,5420 0,5421 0,5406 0,5412 0,5431 F1@10 10 0,6069 0,6039 0,6056 0,6043 0,6033 0,6039 0,6045 30 0,6084 0,6072 0,6070 0,6074 0,6059 0,6055 0,6081 50 0,6070 0,6077 0,6079 0,6081 0,6078 0,6072 0,6088 F1@15 10 0,5964 0,5950 0,5955 0,5943 0,5938 0,5950 0,5948 30 0,5967 0,5962 0,5967 0,5964 0,5960 0,5955 0,5967 50 0,5955 0,5962 0,5972 0,5966 0,5968 0,5962 0,5970 F1@20 10 0,5684 0,5668 0,5672 0,5669 0,5666 0,5668 0,5667 30 0,5684 0,5679 0,5679 0,5679 0,5675 0,5675 0,5689 50 0,5682 0,5685 0,5686 0,5683 0,5687 0,5685 0,5689 Ad esclusione del PageRank, tutte le altre tecniche hanno il loro picco su 50 features Tutte differenze statisticamente significative (Friedman p-value < 0.01) Simone Rutigliano 29 Aprile 2015 28
  • 41. Experiment 2 - Movielens Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? Simone Rutigliano 29 Aprile 2015 29
  • 42. Experiment 2 - Movielens Riepilogo Paragonando i risultati migliori con le baseline Graph Graph + LOD Graph + LOD + PCA F1@5 0,5389 0,5424 0,5431 F1@10 0,6023 0,6083 0,6088 F1@15 0,5941 0,5963 0,5970 F1@20 0,5662 0,5686 0,5689 Time(min) 72 880 585 -33% Nodes 2.466 53.734 48.327 -10% Edges 44.300 178.646 167.319 -6% Simone Rutigliano 29 Aprile 2015 30
  • 43. Experiment 2 - Books Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? N Feature PageRank mRMR χ2 SVM GainRatio InfoGain PCA F1@5 10 0,5515 0,5493 0,5512 0,5507 0,5524 0,5540 0,5513 30 0,5518 0,5519 0,5517 0,5519 0,5524 0,5519 0,5510 50 0,5517 0,5511 0,5505 0,5512 0,5503 0,5511 0,5513 F1@10 10 0,6431 0,6435 0,6423 0,6434 0,6435 0,6445 0,6433 30 0,6422 0,6427 0,6420 0,6430 0,6431 0,6427 0,6432 50 0,6418 0,6419 0,6419 0,6426 0,6425 0,6419 0,6428 I risultati migliori con 10 e 30 feature Tutte differenze statisticamente significative (Friedman p-value < 0.01) Simone Rutigliano 29 Aprile 2015 31
  • 44. Experiment 2 - Books Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD? InfoGain risulta essere la tecnica pi`u performante Simone Rutigliano 29 Aprile 2015 32
  • 45. Experiment 2 - Books Riepilogo Paragonando i risultati migliori con le baseline Graph Graph + LOD Graph + LOD + InfoGain F1@5 0,5502 0,5504 0,5540 F1@10 0,6431 0,6421 0,6445 Time(min) 104 2.433 1.341 -45% Nodes 12.649 211.661 88.669 -58% Edges 33.189 534.841 142.334 -73% Simone Rutigliano 29 Aprile 2015 33
  • 46. Experiment 3 - Movielens Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 34
  • 47. Experiment 3 - Movielens Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 35
  • 48. Experiment 3 - Movielens Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 36
  • 49. Experiment 3 - Books Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 37
  • 50. Experiment 3 - Books Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 38
  • 51. Experiment 3 - Books Esiste una connessione tra la scelta della tecnica di FS e il comportamento dell’algoritmo? Simone Rutigliano 29 Aprile 2015 39
  • 52. Experiment 4 - Movielens Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 40
  • 53. Experiment 4 - Movielens Come si comporta la nostra metodologia rispetto allo stato dell’arte? Simone Rutigliano 29 Aprile 2015 41
  • 54. Experiment 4 - Books Simone Rutigliano 29 Aprile 2015 42
  • 55. Experiment 4 - Books Simone Rutigliano 29 Aprile 2015 43
  • 56. Conclusioni L’uso delle propriet`a della LOD migliora le performance del recommender Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD sia in termini di F1 che in tempo di esecuzione Alcune tecniche di FS sono in grado di migliorare un particolare aspetto anzich´e altri Rispetto allo stato dell’arte il sistema realizzato riesce a produrre risultati migliori Simone Rutigliano 29 Aprile 2015 44
  • 57. Conclusioni L’uso delle propriet`a della LOD migliora le performance del recommender Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD sia in termini di F1 che in tempo di esecuzione Alcune tecniche di FS sono in grado di migliorare un particolare aspetto anzich´e altri Rispetto allo stato dell’arte il sistema realizzato riesce a produrre risultati migliori Simone Rutigliano 29 Aprile 2015 44
  • 58. Conclusioni L’uso delle propriet`a della LOD migliora le performance del recommender Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD sia in termini di F1 che in tempo di esecuzione Alcune tecniche di FS sono in grado di migliorare un particolare aspetto anzich´e altri Rispetto allo stato dell’arte il sistema realizzato riesce a produrre risultati migliori Simone Rutigliano 29 Aprile 2015 44
  • 59. Conclusioni L’uso delle propriet`a della LOD migliora le performance del recommender Si possono trarre vantaggi dall’utilizzo di tecniche di FS sulla LOD sia in termini di F1 che in tempo di esecuzione Alcune tecniche di FS sono in grado di migliorare un particolare aspetto anzich´e altri Rispetto allo stato dell’arte il sistema realizzato riesce a produrre risultati migliori Simone Rutigliano 29 Aprile 2015 44
  • 60. Sviluppi futuri Testare altre tecniche di Feature Selection Combinare le tecniche di FS in base ai risultati ottenuti Unire o intersecare le tecniche migliori Trovare il numero esatto di feature da utilizzare in ogni tecnica di FS Simone Rutigliano 29 Aprile 2015 45
  • 61. Sviluppi futuri Testare altre tecniche di Feature Selection Combinare le tecniche di FS in base ai risultati ottenuti Unire o intersecare le tecniche migliori Trovare il numero esatto di feature da utilizzare in ogni tecnica di FS Simone Rutigliano 29 Aprile 2015 45
  • 62. Sviluppi futuri Testare altre tecniche di Feature Selection Combinare le tecniche di FS in base ai risultati ottenuti Unire o intersecare le tecniche migliori Trovare il numero esatto di feature da utilizzare in ogni tecnica di FS Simone Rutigliano 29 Aprile 2015 45
  • 63. Simone Rutigliano 29 Aprile 2015 46
  • 64. References I Taher H. Haveliwala. Topic-sensitive pagerank: A context-sensitive ranking algorithm for web search. IEEE Trans. on Knowl. and Data Eng., 15(4):784–796, July 2003. Simone Rutigliano 29 Aprile 2015 47
  • 65. Funzionamento del PageRank Consideriamo un grafo composto da sei documenti cosi connessi 1 2 3 56 4 Simone Rutigliano 29 Aprile 2015 48
  • 66. Funzionamento del PageRank Creazione della matrice di Google per righe P del grafo 1 2 3 56 4 P =            0 1 2 1 2 0 0 0 0 0 0 0 0 0 1 3 1 3 0 0 1 3 0 0 0 0 0 1 2 1 2 0 0 0 1 2 0 1 2 0 0 0 1 0 0            Simone Rutigliano 29 Aprile 2015 49
  • 67. Funzionamento del PageRank Creazione della matrice di Google per righe P del grafo 1 2 3 56 4 P =            0 1 2 1 2 0 0 0 0 0 0 0 0 0 1 3 1 3 0 0 1 3 0 0 0 0 0 1 2 1 2 0 0 0 1 2 0 1 2 0 0 0 1 0 0            Simone Rutigliano 29 Aprile 2015 50
  • 68. Funzionamento del PageRank Creazione della matrice di Google per righe P del grafo 1 2 3 56 4 P =            0 1 2 1 2 0 0 0 0 0 0 0 0 0 1 3 1 3 0 0 1 3 0 0 0 0 0 1 2 1 2 0 0 0 1 2 0 1 2 0 0 0 1 0 0            Simone Rutigliano 29 Aprile 2015 51
  • 69. . . . Funzionamento PageRank - Stocasticit`a . . . Considerato che il nodo 2 `e un nodo dangling1 sar`a necessario trasformare il grafo e rendere stocastica la matrice corrispondente 1 2 3 56 4 ¯P =            0 1 2 1 2 0 0 0 1 6 1 6 1 6 1 6 1 6 1 6 1 3 1 3 0 0 1 3 0 0 0 0 0 1 2 1 2 0 0 0 1 2 0 1 2 0 0 0 1 0 0            s 1 Privo di link uscenti Simone Rutigliano 29 Aprile 2015 52
  • 70. . . . Funzionamento PageRank - irriducibilit`a. . . Il grafo dovr`a subire un’ulteriore trasformazione rendendo la matrice di Google per righe irriducibile 1 2 3 56 4 ¯P =            0 1 2 1 2 0 0 0 1 6 1 6 1 6 1 6 1 6 1 6 1 3 1 3 0 0 1 3 0 0 0 0 0 1 2 1 2 0 0 0 1 2 0 1 2 0 0 0 1 0 0            s Simone Rutigliano 29 Aprile 2015 53
  • 71. . . . Funzionamento PageRank - irriducibilit`a. . . Per rendere irriducibile la matrice i valori verranno ricalcolati secondo la formula: ¯¯P = 0.85 ∗ ¯P + 0.15 ∗ 11 6 1 2 3 56 4 ¯¯P =            0.025 0.45 0.45 0.03 0.03 0.03 0.17 0.17 0.17 0.17 0.17 0.17 0.31 0.31 0.03 0.03 0.31 0.03 0.03 0.03 0.03 0.03 0.45 0.45 0.03 0.03 0.03 0.45 0.03 0.45 0 0.03 0.03 1 0.03 0.03            s Simone Rutigliano 29 Aprile 2015 54
  • 72. . . . Funzionamento PageRank Attraverso il metodo delle potenze si andranno a calcolare gli autovalori della matrice ottenendo i valori del PageRank 1 2 3 56 4 π =            0.372 0.054 0.042 0.375 0.206 0.286            s Il ranking dei documenti sar`a quindi: 4 - 1 - 6 - 5 - 2 - 1 Simone Rutigliano 29 Aprile 2015 55
  • 73. PageRank Utilizza la stessa tecnica utilizzata nella raccomandazione per effettuare anche la feature selection Cerca le feature pi`u importanti in base a quante volte sono presenti nella Linked Open Data Simone Rutigliano 29 Aprile 2015 56
  • 74. Chi Squared Verifica se esiste una correlazione tra le feature e l’attributo di classe usando la statistica χ2 Il test statistico sar`a: χ2 = C i=1 (Oi − Ei )2 Ei con gradi di libert`a pari a C − 1 dove C = numero di categorie Oi = frequenze osservate per la categoria i Ei = frequenze attese per la categoria i Simone Rutigliano 29 Aprile 2015 57
  • 75. Information Gain Valuta gli attributi sulla base del guadagno di informazione che apporta al dataset Guadagno ottenuto riducendo l’incertezza iniziale IG(S, 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 29 Aprile 2015 58
  • 76. Gain Ratio 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 relazione all’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 29 Aprile 2015 59
  • 77. mRMR Consiste nel trovare il subset di feature che riescono contemporaneamente a garantire: minima ridondanza tra le features features tra loro pi`u dissimilari possibili massima rilevanza delle features con la classe target features pi`u discriminanti per la classe target Simone Rutigliano 29 Aprile 2015 60
  • 78. Principal Component Analysis (PCA) Riduce la dimensionalit`a del dataset combinando le variabili in gioco Mantiene lo stesso apporto informativo del dataset originale Le nuove variabili, chiamate Principal Components (PC), sono non correlate, e sono ordinate in base all’informazione che essa contiene Simone Rutigliano 29 Aprile 2015 61
  • 79. Principal Component Analysis (PCA) Trova l’asse che meglio rappresenta la pi`u grande variazione (First principal component) e proietta tutti i punti su quest’asse Definisce la nuova dimensionalit`a sulla base degli autovettori della matrice di covarianza associata Simone Rutigliano 29 Aprile 2015 62
  • 80. Support Vector Machine (SVM) SVM massimizza il margine di separazione tra gli iperpiani La funzione di decisione viene creata sulla base del subset di esempi (support vectors) Simone Rutigliano 29 Aprile 2015 63