( Laboratorio di ) Sistemi Informatici Avanzati
description
Transcript of ( Laboratorio di ) Sistemi Informatici Avanzati
![Page 1: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/1.jpg)
(Laboratorio di )Sistemi Informatici Avanzati
Giuseppe Manco
![Page 2: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/2.jpg)
SEARCH
![Page 3: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/3.jpg)
Approcci alle reti di grandi dimensioni
Heavy-tails e power laws (su scale di grandi imensioni):
• forte eterogeneità locale, mancanza di struttura
• base per i modelli preferential attachment
Local clustering/structure (su scale di piccole dimensioni):
• situazioni locali hanno una struttura “geometrica”
• punto di partenza per modelli small world che partono con una “geometria” globale e aggiungono link random per ottenere un diametro piccolo e preservare la geometria a livello locale
![Page 4: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/4.jpg)
Le problematiche di interesse
• Quali sono le statistiche di base (degree distributions, clustering coefficients, diametro, etc.)?
• Ci sono raggruppamenti/partizioni naturali?
• Come evolvono/rispondono alle perturbazioni le reti?
• Come avvengono I processi dinmaici - search, diffusion, etc. – nelle reti?
• Come fare classificazione, regressione, ranking, etc.?
![Page 5: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/5.jpg)
Osservazioni sulle reti reali
• Diametro– Costante
• Coefficiente di clustering– Costante
• Degree distribution– Power-law
![Page 6: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/6.jpg)
Applicazioni: Search
• Small world– È possibile navigare la rete
• Preferential attachment– Ci sono alcuni grossi hubs
• Come sfruttare tali informazioni?
![Page 7: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/7.jpg)
Singular Value Decomposition
• Tecnica di decomposizione matriciale• Basata sull’analisi spettrale• Tante applicazioni
![Page 8: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/8.jpg)
La Singular Value Decomposition (SVD)
• Data una matrice A, m x n, essa può essere decomposta come prodotto di tre matrici:
• p: rango di A
• U, V: matrici ortogonali (UTU=Im, VTV=In) contenenti rispettivamente i vettori singolari destri e sinistri di A
• ∑: matrice diagonale contenente i valori singolari di A, in ordine non-crescente σ1≥σ2≥... ≥σp ≥0
![Page 9: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/9.jpg)
Interpretazione a Layer della SVD
m x n
Amxn
= u1vT1 + u1vT
1 +...σ1 σ2
Importanza decrescente
![Page 10: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/10.jpg)
Vettori Singolari, Intuizione
I cerchi blu rappresentano m punti nello spazio euclideo.La SVD della matrice mx2 sarà costituita da:- Primo vettore singolare (destro):direzione della varianza max- Secondo vettore singolare (destro):direzione della max varianza dopo aver rimosso la proiezione dei dati lungo il primo vettore singolare
![Page 11: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/11.jpg)
Vettori Singolari, Intuizione
• σ1: misura quanta varianza dei dati è “catturata/spiegata” dal primo vettore singolare
• σ2: misura quanta varianza dei dati è “catturata/spiegata” dal secondo vettore singolare
![Page 12: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/12.jpg)
Low Rank Approximation
• Si tronca la SVD ai primi k termini:
• k= rango della decomposizione
• Uk, Vk: matrici ortogonali contenenti rispettivamente i primi k vettori singolari destri e sinistri di A
• ∑k: matrice diagonale contenente i primi valori k singolari di A
![Page 13: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/13.jpg)
Proprietà
• Anche per matrici con dati positivi, la SVD è mista in segno
+ +/- +/-
+
• U e V sono dense
• Unicità: nonostante ci siano diversi algoritmi, questi producono la stessa SVD (A troncata)
• Proprietà: mantenere i primi k valori singolari di A fornisce la migliore rank-k approximation di A rispetto alla Frobenius norm
![Page 14: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/14.jpg)
Low Rank Approximation• Usa Ak al posto di A
Amxn
UmmUkm∑mxn
∑kk
VT
nxn
VT
kxnnxn
≈
![Page 15: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/15.jpg)
Sommario della Truncated SVD• Pro:
– Usare Ak al posto di A implica un aumento delle performance generale degli algoritmi di mining
– la riduzione del rumore isola le componenti essenziali della matrice dati
– Best rank-k approximation– Ak è unica e ottima secondo la Frobenious norm
• Contro:– Storage (Uk e Vk sono dense)– L’interpretazione di U e V è difficile perchè hanno segno
misto– Un buon punto di troncamento k è difficile da determinare
![Page 16: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/16.jpg)
Applicazioni della SVD all’analisi dei dati
• Dimensionality reduction: la truncated SVD fornisce una rappresentazione compressa di dati ad alta dimensionalità (con molti attributi).
• La compressione SVD minimizza la perdita di informazione, misurata secondo la Frobenious norm
• Se i dati originali contengono rumore, la riduzione di dimensionalità può essere considerata come una tecnica di attenuazione del rumore
• Se fissiamo k=2 o k=3, allora è possibile plottare le righe di U. La rappresentazione grafica rende possibile un’interpretazione visuale della struttura del dataset
![Page 17: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/17.jpg)
SVD e Latent Semantic Indexing
![Page 18: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/18.jpg)
SVD e Latent Semantic Indexing
![Page 19: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/19.jpg)
SVD e Latent Semantic Indexing
Affinità documento-concetto
![Page 20: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/20.jpg)
SVD e Latent Semantic Indexing
Importanza del concetto
![Page 21: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/21.jpg)
SVD e Latent Semantic Indexing
Affinità termine-concetto
![Page 22: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/22.jpg)
Riduzione di dimensionalità
![Page 23: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/23.jpg)
Riduzione di dimensionalità
Varianza lungo l’asse v1
![Page 24: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/24.jpg)
Riduzione di dimensionalità
• Eliminiamo elementi a bassa varianza
![Page 25: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/25.jpg)
Riduzione di dimensionalità
• Eliminiamo gli elementi a bassa varianza
![Page 26: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/26.jpg)
Riduzione di dimensionalità
• Eliminiamo gli elementi a bassa varianza
![Page 27: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/27.jpg)
Riduzione di dimensionalità
• Eliminiamo gli elementi a bassa varianza
![Page 28: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/28.jpg)
Applicazioni della SVD all’analisi dei dati
• Clustering: nello spazio della trasformazione SVD troncata, la relazioni tra i punti sono più evidenti e il processo di clustering ne trae diretto vantaggio
• Applicazioni al clustering:
• Clustering sul nuovo spazio
• Utilizzo diretto delle proprietà dell’SVD
• Spectral clustering: i punti che giacciono nel cono intorno al primo asse (prodotto con il primo asse <1/2) sono raggruppati in un cluster
• Quelli con la stessa proprietà rispetto al secondo asse vengono raggruppati nel secondo cluster e così via
![Page 29: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/29.jpg)
Raggruppamenti, blocchi
![Page 30: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/30.jpg)
Raggruppamenti, blocchi
![Page 31: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/31.jpg)
Raggruppamenti, blocchi
![Page 32: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/32.jpg)
Applicazioni della SVD all’analisi dei dati• Ranking:
• Ogni riga di U può essere rappresentata come un punto nello spazio k-dimensionale. Supponiamo di tracciare una freccia dall’origine verso ciascuno dei punti
• L’angolo (coseno) tra i due vettori denota la correlazione tra i punti
• Oggetti altamente correlati o altamente non correlati con altri punti tendono a piazzarsi intorno all’origine
• Punti collocati lontano dall’origine corrispondono ad oggetti che esibiscono una correlazione inusuale con altri oggetti
• Punti collocati vicino all’origine sono meno “interessanti”
• Il rank degli oggetti può essere effettuato tenendo conto della distanza dall’origine
![Page 33: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/33.jpg)
Proprietà (A)
![Page 34: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/34.jpg)
Proprietà (B)
• Similarità documento-documento
• Similarità termine-termine
![Page 35: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/35.jpg)
Proprietà (B)
• Inoltre:
• v1 autovettore relativo a σ1 (l’autovalore più grande)
![Page 36: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/36.jpg)
Proprietà (C)
• Per qualsiasi vettore v– Conseguenza: procedura iterativa per il calcolo
degli autovettori
![Page 37: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/37.jpg)
Proprietà (C)
• Ammette soluzione
![Page 38: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/38.jpg)
Proprietà (C)
• conseguentemente
![Page 39: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/39.jpg)
PCA e MDSPrincipal Components Analysis (PCA) • Dati{Xi}i=1,…,n con Xi vettori reali,
trova il sottospazio k-dimensionale P e il mapping Yi=PXi
t.c.. Variance(Y) è massima (o Error(Y) è minimo)• SVD sulla matrice di covarianza C =XXT
Multidimensional Scaling (MDS)• Dati {Xi}i=1,…,n con Xi vettori reali,
trova il sottospazio k-dimensionale P e il mapping Yi=PXi
t.c. Dist(Yi-Yj) = Dist(Xi-Xj) (ovvero distanze preservate)
•SVD sulla matrice matrix G = XT X
![Page 40: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/40.jpg)
LSI/SVD e power laws
• Gli autovalori più grandi della matrice di adiacenza di un grafo scale-free sono distribuiti con una power-law.
![Page 41: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/41.jpg)
Caso di Studio: Social Network Analysis
• Obiettivo: identificare proprietà e relazioni tra i membri di al Qaeda
• Il dataset fornito da Marc Sageman contiene informazioni su 366 membri dell’associazione terorristica all’inizio del 2004
• Attributi:
![Page 42: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/42.jpg)
al Qaeda Dataset
• Grafo delle relazioni: 366 nodi e 2171 archi. • Il grado massimo del grafo è 44, mentre
quello medio è 6.44. • Il diametro è 11• Bavelas-Leavitt Centrality: rapporto tra la
somma dei cammini geodesici aventi come sorgente/destinazione il nodo considerato e la somma dei cammini geodesici dell’intero dataset
![Page 43: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/43.jpg)
al Qaeda Dataset:
![Page 44: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/44.jpg)
al Qaeda Dataset: Link Analysis
• Analisi della matrice di adiacenza 366 x 366– Contatti e relazioni tra i membri
Plot of the low rank (3) SVD of al Qaeda members using only relationship attribute
• 4 cluster
• Hambali ha un ruolo di connessione
• bin Laden non è l’elemento estremo del cluster che identifica la leadership
AlgeriansSouth East Asian
Leaders and core Arabs
![Page 45: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/45.jpg)
![Page 46: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/46.jpg)
SVD e centralità
Misura l’importanza di un nodo• degree centrality – numero di link di un nodo
• betweenness centrality –numero di cammini che lo contengono
• closeness centrality - potenziale di comunicazione indipendente
• eigenvector centrality – connessioni a nodi con high-degree, iterativamente
![Page 47: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/47.jpg)
Eigenvector centrality
• Riformulato, risulta essere
![Page 48: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/48.jpg)
IL WEB
![Page 49: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/49.jpg)
Struttura del Web
Source: David Easley, Jon Kleinberg Networks, Crowds, and Markets, Cambridge University Press (2010)
![Page 50: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/50.jpg)
Struttura del web
Source: David Easley, Jon Kleinberg Networks, Crowds, and Markets, Cambridge University Press (2010)
![Page 51: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/51.jpg)
Bow-Tie
Source:A. Broder, et at.. Graph structure in the Web. In Proc. WWW, pages 309–320, 2000.
![Page 52: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/52.jpg)
Il problema della Ricerca
• Inserisci un termine nella pagina di google– Analizza i risultati
• Il primo elemento è quello che ti aspettavi?• Come ha fatto google a calcolare il risultato?
![Page 53: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/53.jpg)
Search
• Un problema difficile– Information retrieval: ricerca in grosse repositories, sulla
base di keywords– Keywords limitate e inespressive, e:
• sinonimia (modi multipli per dire la stessa cosa: casa, abitazione) • Polisemia (significati multipli per lo stesso termine: Jaguar, Apple)
– Differenti modalità di authoring• Esperti, novizi, etc.
– Estrema dinamicità del web– Shift
• Scarcity -> abundance
![Page 54: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/54.jpg)
Hubs, Authorities
• Un problema di links– Perché wikipedia è in cima agli elementi suggeriti?
![Page 55: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/55.jpg)
Hubs, authorities
• Molte pagine contengono il termine “reti sociali”– Perché wikipedia è più rilevante?
• Indicheresti wikipedia come riferimento?
![Page 56: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/56.jpg)
Hubs, authorities
• Votazione
Source: David Easley, Jon Kleinberg Networks, Crowds, and Markets, Cambridge University Press (2010)
![Page 57: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/57.jpg)
Hubs, authorities
• Compilazione di liste– Ogni pagina “rappresenta” quelle che la puntano
![Page 58: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/58.jpg)
Hubs, authorities
• Miglioramento iterativo• Normalizzazione• Authorities
– Le pagine che rappresentano gli end-points• Hubs
– Le pagine che rappresentano molte altre pagine (e il cui voto conseguentemente conta tanto)
![Page 59: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/59.jpg)
Hubs, authorities
• Hubs
• Authorities
![Page 60: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/60.jpg)
Authority value
• Dato un nodo i:
• Generalizzando su ogni nodo:
![Page 61: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/61.jpg)
Hub value
• Dato un nodo i:
• Generalizzando su ogni nodo:
![Page 62: ( Laboratorio di ) Sistemi Informatici Avanzati](https://reader036.fdocuments.net/reader036/viewer/2022062501/56816707550346895ddb6e5d/html5/thumbnails/62.jpg)
Algoritmo HITS
• In conclusione, stiamo cercando due vettori h e a tali che