47
(LABORATORIO DI ) SISTEMI INFORMATICI AVANZATI Giuseppe Manco

(Laboratorio di ) Sistemi Informatici Avanzati

  • Upload
    pegeen

  • View
    62

  • Download
    0

Embed Size (px)

DESCRIPTION

(Laboratorio di ) Sistemi Informatici Avanzati. Giuseppe Manco. Link Prediction. Outline. Overview Link Prediction Variants Deterministic Methods Probabilistic Methods Supervised Learning Approaches. Problem Definition. - PowerPoint PPT Presentation

Citation preview

Page 1: (Laboratorio di ) Sistemi Informatici Avanzati

(LABORATORIO DI )SISTEMI INFORMATICI AVANZATIGiuseppe Manco

Page 2: (Laboratorio di ) Sistemi Informatici Avanzati

LINK PREDICTION

Page 3: (Laboratorio di ) Sistemi Informatici Avanzati

OUTLINE Overview

Link Prediction Variants

Deterministic Methods

Probabilistic Methods

Supervised Learning Approaches

Page 4: (Laboratorio di ) Sistemi Informatici Avanzati

PROBLEM DEFINITION

Data una snapshot della social network al tempo t, cerchiamo di predire accuratamente quali archi verranno aggiunti alla rete durante l’intervallo di tempo da t fino ad un istante futuro t’

Page 5: (Laboratorio di ) Sistemi Informatici Avanzati

APPLICAZIONI Identificazione della struttura di una rete

criminale: I dati a disposizione sono incompleti Cerchiamo di ricostruire i collegamenti all’interno

della rete criminale

Page 6: (Laboratorio di ) Sistemi Informatici Avanzati

APPLICAZIONI Superare il problema della sparsità nei

recommender systems basati sul collaborative filtering Chi compra:

Comprerà anche:

Page 7: (Laboratorio di ) Sistemi Informatici Avanzati

APPLICAZIONI Accelerare il formarsi di link che altrimenti si

sarebbero formati in maniera spontanea ma molto più lentamente (serendipity). Rete della ricerca scientifica Rete di lavoro

Page 8: (Laboratorio di ) Sistemi Informatici Avanzati

APPLICAZIONI Analizzare la storia di navigazione degli

utenti di internet al fine di incrementare l’efficienza di navigazione Predictive server prefetching

Page 9: (Laboratorio di ) Sistemi Informatici Avanzati

APPLICAZIONI Monitorare e controllare virus che viaggiano

su reti di poste elettroniche

Page 10: (Laboratorio di ) Sistemi Informatici Avanzati

LINK COMPLETION Problema

I dati a disposizione di una rete sociale potrebbero essere incompleti

Un link potrebbe unire più di una coppia di nodi

Obiettivo Dato un nodo (o una serie di nodi) connesso

(connessi) tramite un link, determinare quali altri nodi fanno parte del link

Page 11: (Laboratorio di ) Sistemi Informatici Avanzati

LINK COMPLETION Esempio

Un cliente compra 5 libri online, e durante il trasferimento in rete dei nodi si perde l’informazione sul titolo di uno dei libri

Un algoritmo di Link Completion potrebbe inferire il nome del libro mancante basandosi sul profilo dell’utente e sugli altri libri acquistati

Page 12: (Laboratorio di ) Sistemi Informatici Avanzati

LINK COMPLETION Esempio

Maria, Marco ed una terza persona partecipano ad un meeting

A partire dalle precedenze co-occorrenze a meeting della base di utenti cui appartengono Maria e Marco, determinare il nome della terza persona

Page 13: (Laboratorio di ) Sistemi Informatici Avanzati

SOLUZIONE SEMPLICE Associamo ad ogni entità A un punteggio

score

Co-occorrenze: Score(A) = somma del numero di co-occorrenze

precedenti tra A e gli altri nodi del link

Popolarità Score(A) = numero di occorrenze di A in altri link

Page 14: (Laboratorio di ) Sistemi Informatici Avanzati

PROBLEMI NELLA LINK DISCOVERY Il numero di coppie da analizzare è

quadratico rispetto al numero di nodi del grafo

Reti sparse pochi casi osservati di interesse

Scoperta di link inattesi e/o anomali all’interno dei dati osservati (outliers)

Pochissimi comuni vicini o troppo distanti fra loro

Page 15: (Laboratorio di ) Sistemi Informatici Avanzati

LINK PREDICTION

Page 16: (Laboratorio di ) Sistemi Informatici Avanzati

TECNICHE DI LINK PREDICTION Tutte le tecniche che analizzeremo associano

uno score(x,y) a tutte le coppie di nodi (x,y) della rete, in base all’organizzazione del grafo in input

L’output è una lista di probabili archi che si formeranno in futuro, ordinati per score(x,y) decrescenti

Page 17: (Laboratorio di ) Sistemi Informatici Avanzati

SHORTEST PATH

Lo score(x,y) è la lunghezza del percorso minimo tra x e y score(x,y) = spl(x,y)

Page 18: (Laboratorio di ) Sistemi Informatici Avanzati

COMMON NEIGHBORS

Lo score(x,y) è la cardinalità dell’intersezione dei vicinati di x e y

Newman 2001: La probabilità che uno scienziato A collabori con un altro scienziato B, aumenta condizionalmente al numero di collaboratori che hanno in comune.

)()(),( yxyxscore

Page 19: (Laboratorio di ) Sistemi Informatici Avanzati

JACCARD SIMILARITY Bilanciamento della misura Common

Neighbors tramite le dimensioni dei vicinati

x e y condividono molti vicini perché probabilmente hanno vicinati estesi Si pesano solo i vicinati aderenti al link in analisi

Rispetto al Common Neighbors è una misura relativa e non assoluta

)()()()(

),(yxyx

yxscore

Page 20: (Laboratorio di ) Sistemi Informatici Avanzati

ADAMIC/ADAR Lo score(x,y) dipende da quante feature

condividono x e y

Nel caso in cui le feature siano altri nodi

yxbysharedfeaturez zfrequency

yxscore,: ))(log(

1),(

)()( ))(log(

1),(yxz z

yxscore

Page 21: (Laboratorio di ) Sistemi Informatici Avanzati

PREFERENTIAL ATTACHMENT

Nel preferential attachment lo score è definito:

Newman 2001: La probabilità che x sia coatore di y è correlata al prodotto del numero di collabaratori di x e y

)()(),( yxyxscore

Page 22: (Laboratorio di ) Sistemi Informatici Avanzati

KATZ CENTRALITY (1953) Secondo la Katz Centrality:

indica l’insieme dei percorsi di lunghezza pari ad l tra x e y Alla somma dei pesi dei percorsi nel caso di grafo

pesato

La centralità di Katz è una misura che somma i pesi di tutti i path tra due nodi bilanciadoli sulla lunghezza tramite un fattore esponenziale

1

,),(l

lyx

l pathsyxscore

lyxpaths ,

Page 23: (Laboratorio di ) Sistemi Informatici Avanzati

HITTING TIME

Dove

è il tempo atteso per un random walk da x a y

è la porzione di tempo in cui si staziona in x

xxyyyx

xyyx

yyx

yx

HHHH

HH

,,

,,

,

,

.4

.3

.2.1

yxH ,

x

Page 24: (Laboratorio di ) Sistemi Informatici Avanzati

ROOTED PAGERANK

Modello Hitting Time con passi random

Con probabilità a salta ad un nodo qualsiasi della rete

Con probabilità (a – 1) spostati verso un vicino del nodo attuale

Page 25: (Laboratorio di ) Sistemi Informatici Avanzati

SIMRANK Definizione ricorsiva di similarità

Due oggetti sono simili se sono connessi ad oggetti simili

Definizione nel caso dei link Due oggetti appartengono ad un link se sono

connessi ad oggetti che appartengono agli stessi link

Definita solo per grafi orientati γ è una costante compresa tra 0 e 1

altrimenti

yx

bascoreyxse

yxscore xa yb

)()(

),(1

),( )( )(

Page 26: (Laboratorio di ) Sistemi Informatici Avanzati

UNSEEN BIGRAMS Supponiamo di avere una funzione di

similarità tra nodi sim(x,y) Sia l’insieme dei δ nodi più simili ad x

secondo sim(x,y) Lo score(x,y) dipende da quanti nodi, simili

ad x, sono in relazione con y

xSyzweighted

xunweighted

zxsimyxscore

Syzzyxscore

)(),(),(

)(:),(

xS

Page 27: (Laboratorio di ) Sistemi Informatici Avanzati

CLUSTERING Calcola lo score(u,v) per ogni arco (u,v) della

rete Rimuovi il k% di archi con lo score più basso Calcola lo score(x,y) per ogni coppia di nodi

(x,y)

Page 28: (Laboratorio di ) Sistemi Informatici Avanzati

CLUSTERING Calcola lo score(u,v) per ogni arco (u,v) della

rete Rimuovi il k% di archi con lo score più basso Calcola lo score(x,y) per ogni coppia di nodi

(x,y)

Page 29: (Laboratorio di ) Sistemi Informatici Avanzati

CLUSTERING Calcola lo score(u,v) per ogni arco (u,v) della

rete Rimuovi il k% di archi con lo score più basso Calcola lo score(x,y) per ogni coppia di nodi

(x,y)

Page 30: (Laboratorio di ) Sistemi Informatici Avanzati

PERFORMANCE COMPARISON Liben-Nowell

et al., 2003

Page 31: (Laboratorio di ) Sistemi Informatici Avanzati

OBSERVATIONS

Le misure Adamic/Adar e Common Neighbors si comportano sorprendentemente bene anche se molto sono semplici

Le accuratezze di tutte le misure in generale sono basse c’è spazio per la definizione di nuove misure per il miglioramento dell’accuratezza

Page 32: (Laboratorio di ) Sistemi Informatici Avanzati

PROBABILISTIC MODELS Idea:

La rete sociale è governata da una distribuzione probabilistica i cui parametri Θ devono essere stimati

L’esistenza di un arco sconosciuto che lega due nodi x e y dipende quindi da:

)|),(Pr( yxedge

Page 33: (Laboratorio di ) Sistemi Informatici Avanzati

PROBABILISTIC MODELS I dati a disposizione sono:

Struttura della rete sociale

Nodi e archi

Informazioni contestuali

Tipizzazione di nodi ed archi

Contenuto informativo associato a nodi ed archi

Page 34: (Laboratorio di ) Sistemi Informatici Avanzati

PROBABILISTIC MODELS Vista la natura ibrida dei dati (contestuali +

strutturali) in letteratura sono stati proposti modelli relazionali

I principali framework per la modellazione relazionale probabilistica sono:

PRM: probabilistic relational models, basato sul modello relazionale

DAPER: directed acyclic probabilistic entity relationship, basato sul modello entità – relazione

Page 35: (Laboratorio di ) Sistemi Informatici Avanzati

PRM Il PRM cerca di astrarre i dati della rete

osservati in modelli compatti a grafo

Il modello PRM è composto da tre grafi:

Il Data Graph: la rete in input

Il Model Graph: la rappresentazione compatta delle caratteristiche dei dati

L’Inference Graph: grafo per l’attuazione del modello su nuovi dati di rete, diversi da quelli di training

Page 36: (Laboratorio di ) Sistemi Informatici Avanzati

PRM

Page 37: (Laboratorio di ) Sistemi Informatici Avanzati

PRM Il framework prevede diverse varianti ed

implementazioni. Le più note sono:

Relational Bayesian Networks (RBN)

Relational Markov Networks (RMN)

Relational Dependency Networks (RDN)

Page 38: (Laboratorio di ) Sistemi Informatici Avanzati

DAPER Il Framework DAPER è adatto per

rappresentare contesti Bayesiani

spinge alla rappresentazione esplicita dei parametri e degli iper – parametri del modello

Il modello può contenere sia parametri globali che locali:

La parametrizzazione delle prior permette la definizione di modelli molto flessibili

Page 39: (Laboratorio di ) Sistemi Informatici Avanzati

DAPER DAPER formula un framework probabilistico per un

database in forma entità – relazione

La componente principale (first class) della modellazione è l’insieme delle relazioni

Un modello DAPER consiste nella definizione di una serie di : entity classes relationship classes attribute classes arc classes local distribution classes constraint classes

Page 40: (Laboratorio di ) Sistemi Informatici Avanzati

DAPER

Page 41: (Laboratorio di ) Sistemi Informatici Avanzati

SUPERVISED LEARNINGAPPROACHES La link prediction può essere vista come un

problema di learning supervisionato

Obiettivo: Addestrare un classificatore binario in grado di

predire se un link esiste tra due nodi della rete oppure no

Page 42: (Laboratorio di ) Sistemi Informatici Avanzati

EXPERIMENTAL SETUP Dataset:

Co-authorship Network

Si suddivide il dataset in due partizioni, tra le quali non esiste sovrapposizione temporale

Training (pubblicazioni passate) & Test (pubblicazioni recenti)

Page 43: (Laboratorio di ) Sistemi Informatici Avanzati

CLASSIFICATION DATASET La classificazione si basa sulla scelta di due

autori

Non esiste, nei dati di training, una pubblicazione tra i due autori

Determinare la probabilità (o meno) che i due autori pubblicheranno insieme in futuro

Esempio positivo: i due autori selezionati hanno una pubblicazione comune nel test set

Esempio negativo: altrimenti

Page 44: (Laboratorio di ) Sistemi Informatici Avanzati

EXPERIMENTAL SETUP Datasets:

DBLP Train (1990 – 2000)

Test (2001 – 2004)

BIOBASE Train (1998 – 2001)

Test (2002)

Page 45: (Laboratorio di ) Sistemi Informatici Avanzati

EXPERIMENTAL SETUP Scelta delle feature

Page 46: (Laboratorio di ) Sistemi Informatici Avanzati

ALGORITHMS SVM

Decision Trees

Multilayer Perceptron

KNN

Naïve Bayes

RBF

Bagging

Page 47: (Laboratorio di ) Sistemi Informatici Avanzati

RESULTS