SlideShare a Scribd company logo
1 of 72
Download to read offline
Sistemi di Raccomandazione
Alfredo Pulvirenti
Università degli Studi di Catania
Sommario	
• Introduzione	
• Una	panoramica	sulle	tecniche	
• Content-based	
• Collabora8ve	Filtering	
•  Collabora8ve	Filtering	in	pra8ca:	SVD	
• Raccomandazione	Graph-based		
• Metodi	Ibridi	
• Un	progeBo	sviluppato	dal	nostro	gruppo
Parte I Introduzione
Introduzione	
• Un	 sistema	 di	 raccomandazione	 è	 una	 classe	 di	
applicazioni	 (comunemente	 web-based)	 che	
predicono	 le	 risposte	 degli	 uten8	 sulla	 base	 delle	
loro	preferenze.	
• Due	esempi:	
•  Suggerire	ar8coli	ai	leBori	dei	quo8diani	on-line;	
•  Offrire	ai	clien8	dei	si8	di	e-commerce	suggerimen8	su	cosa	potrebbe	essere	
di	loro	interesse.
Esempio	di	sistema	di	raccomandazione	
• Cliente	X	
•  Acquista	CD	Metallica	
•  Acquista	CD	Megadeth	
• Cliente	Y	
• Fa	una	ricerca	sui	Metallica		
• Il	sistema	di	
raccomandazione	suggerisce	
Megadeth	in	base	ai	da8	
colleziona8	sul	cliente	X
Le	metodologie	
• Diverse	 tecnologie	 ma	 due	 gruppi	
principali:	
• Content-based	 systems:	 esaminare	 le	 proprietà	 degli	
ar8coli	per	raccomandarne	nuovi.	
• Collabora5ve	filtering	systems:	usare	misure	di	similarità	
tra	uten8	e/o	prodoR	per	raccomandare	nuovi	prodoR	
(oggeR	simili	o	di	proprietà	di	uten8	simili).
Diversi campi di applicazione:
Raccomandazione prodotti: Amazon o
simili;
Raccomandazione film: Netflix o
YouTube;
Notizie: quotidiani o blog.
Definizione	
• Sistema	di	raccomandazione	ha	due	classi	di	en5tà:	
•  Un	insieme	di	Uten5		(U={u1,…,un})	
•  Un	insieme	di	Ogge>	(O={o1,…,	om})	
		rappresentate	all’interno	di	una	u5lity	matrix	(Um={duo}nxm)		
•  matrice	sparsa	che	per	ogni	coppia	utente-oggeBo	calcola	un	grado	di	preferenza	
dell’utente	per	l’oggeBo.	
• ObieRvo	del	sistema	di	raccomandazione:	predire	le	entry	
vuote	della	matrice		per	inferire	le	preferenze	dell’utente.
Esempio	
Matrix	
Alien	
StarWars	
Casablanca	
Titanic	
Joe	 1	 1	 1	 0	 0	
Jim	 3	 0	 3	 0	 0	
John	 4	 4	 4	 0	 0	
Jack	 0	 5	 5	 0	 0	
Jill	 0	 0	 3	 4	 4	
Jenny	 0	 0	 0	 5	 5	
Jane	 3	 0	 0	 2	 2	
•  La matrice rappresenta il rating che l’utente da al film visto
usando la scala 1-5, con 5 rating più alto.
•  Zero indica che l’utente non ha valutato il film.
Potremmo disegnare un sistema per prendere
le proprietà dei film e predire le preferenze degli
utenti anche se non hanno visto il film.
Il	fenomeno	della	Long	tail	
• Negozi	fisici:	spazio	limitato	sugli	scaffali,	mostrano	
piccola	frazione	di	prodoR	(i	più	popolari).	
• Web:	 non	 ha	 questo	 problema,	 cos8	 per	
pubblicizzare	i	prodoR	vicini	allo	zero…	
• Più	scelta	per	gli	uten8,	ma…	vanno	aiuta8!	
• Ci	 servono	 filtri	 migliori…	 usiamo	 i	 sistemi	 	 di	
raccomandazione!
Long	tail	
David	Bowie	
T	Rex	
Se ascolti David Bowie…
ti potrebbe piacere…
Problemi	chiave	
• Collezionare	 valutazioni	 “conosciute”	 per	 la	 u8lity	
matrix.	
• Predire	valutazioni	nuove	ed	elevate	a	par8re	dalle	
valutazioni	conosciute.
Come	oBenere	le	valutazioni	(ra8ng)	
• Costruire	 una	 u8lity	 matrix	 è	 un	 task	 complicato,	 due	
approcci	 per	 scoprire	 il	 valore	 che	 un	 utente	 da	 ad	 un	
prodoBo:	
• Esplicito:	
•  Chiedere	di	valutare	un	item	(es.	YouTube).	
• Implicito:	
•  	Apprendere	dalle	azioni	dell’utente.
Estrapolare	la	u8lity	matrix	e	raccomandare	
• Descriviamo	i	quaBro	approcci	principali:	
• Content-based	
• Collabora5ve	Filtering	
• Graph-based	
• Hybrid	Approach
Parte II
Content-based
recommendation
Raccomandazioni	Content-based	
• Idea	 principale:	 gli	 oggeR	 raccomanda8	
all’utente	 U	 sono	 simili	 agli	 oggeR	 valuta8	
posi8vamente	da	U.	
• Il	 sistema	 focalizza	 sulle	 proprietà	 degli	
ogge>.	
• La	similarità	tra	due	oggeR	è	determinata	misurando	la	
similarità	delle	loro	proprietà.
Schema	del	metodo
Il	profilo	degli	oggeR	
• Per	ogni	oggeBo	si	crea	un	profilo;	
• Un	 Profilo	 è	 un	 insieme	 di	 feature	 che	 rappresentano	
caraBeris8che	importan8.	
• I	 Documen5	 sono	 una	 classe	 di	 oggeR	 per	 i	 quali	 non	 è	
semplice	definire	quali	debbano	essere	le	feature.	
•  Usare	le	parole	più	importan5	di	un	documento.	
•  Come	scegliamo	le	parole	importan8?	
•  Tipica	euris8ca	TF.IDF	(Term	Frequency	5mes	Inverse	Doc	Frequency)
TF.IDF	
• “fij”	frequenza	di	del	termine	“i”	nel	documento	“dj”	
• “ni”		numero	di	documen8	che	menzionano	il	termine	“i”,		
• N	il	numero	totale	di	documen8,		
TF.IDF:	“wij	=	TFij	·	IDFi”	
• Profilo		di	un	documento:	insieme	delle	parole	che	hanno	il	
più	alto	TF.IDF	score,	assieme	ai	loro	score.
Profili	utente	e	predizione	
• User	profile,	diverse	possibilità:	
• Media	ponderata	dei	profili	degli	oggeR;	
• ...	
• Euris5ca	di	predizione:	
• Dato	 il	 profilo	 	 x	 dell’utente	 e	 il	 profilo	 i	 del	 prodo.o,	
s8miamo	 𝑢( 𝒙, 𝒊) = cos​( 𝒙, 𝒊) = ​ 𝒙· 𝒊/||𝒙||⋅||𝒊|| 
Pro	e	contro	
+:	Non	c'è	bisogno	di	da5	su	altri	uten5	
+:	In	grado	di	consigliare	agli	uten5	con	gus5	unici	
+:	In	grado	di	raccomandare	ar5coli	nuovi	e	non	popolari	
+:	facile	da	interpretare	
	
–:	Trovare	le	feature	giuste	è	difficile	
–:	Raccomandazione	per	nuovi	uten5	
–:	Monomodale
Parte III Collaborative Filtering
Schema	del	metodo	
Consideriamo l’utente
x
Troviamo N altri utenti
i cui rating sono
“simili” ai rating di x
Stimiamo i rating di x
sulla base degli N
rating degli utenti
Come	misuriamo	la	similarità	
• Jaccard	similarity:		
sim(x,y)	=	|rx	∩	ry|/|rx	∪	ry|	
• Cosine	similarity:		
sim(x,y)	=	cos(rx,	ry)	
• Pearson	correla5on	coefficient:	
rx = [*, _, _, *, ***]
ry = [*, _, **, **, _]
Predizioni	
Dalla	similarità	alla	raccomandazione:	
• Sia	rx	il	veBore	di	ra8ng	dell’utente	x	
• Sia	N	l’insieme	dei	k	uten8	più	simili	a	x	che	hanno	valutato	
l’oggeBo	i	
• Predizione	dell’oggedo	i	per	l’utente	x:	
•  ​ 𝑟↓𝑥𝑖 =​1/𝑘  ∑𝑦∈ 𝑁↑▒​ 𝑟↓𝑦𝑖  	
•  ​ 𝑟↓𝑥𝑖 =​∑ 𝑦∈ 𝑁↑▒​ 𝑠↓𝑥𝑦 ⋅​ 𝑟↓𝑦𝑖  /∑𝑦∈ 𝑁↑▒​ 𝑠↓𝑥𝑦   	
• Altre	opzioni?	
•  Molte..	
	
​ 𝒔↓𝒙𝒚 = 𝒔𝒊𝒎(𝒙, 𝒚)
OggeBo-OggeBo	Collabora8ve	Filtering	
• Vista:	oggedo-oggedo	
•  Troviamo	gli	oggeR	simili	a	i	
•  S8miamo	il	ra8ng	per	i	in	base	ai	ra8ng	degli	oggeR	simili	
∑
∑
∈
∈
⋅
=
);(
);(
xiNj ij
xiNj xjij
xi
s
rs
r
sij… similarità degli oggetti i e j
rxj…rating dell’utente x sull’oggetto j
N(i;x)… set di oggetti simili a i valutati da x
CF:	Approccio	comune	
•  Definiamo	la	similarità	sij	tra	gli	oggeR	i	e	j	
•  Selezioniamo	k	nearest	neighbor	N(i;	x)	
•  OggeR	più	simili	a	i,	valuta8	dall’utente	x	
•  S8miamo	il	ra8ng	rxi	pesato	con	la	media:		
Stima baseline per rxi
¡  μ			=		media	generale	di	tuR	i	film	
¡  bx		=		deviazione	del	ra8ng	dalla	media	
dell’utente	x		=	(avg.	ra1ng	utente	x)	–	μ		
¡  bi			=		deviazione	del	ra8ng	per	l’oggeBo	i		
∑
∑
∈
∈
=
);(
);(
xiNj ij
xiNj xjij
xi
s
rs
r
∑
∑
∈
∈
−⋅
+=
);(
);(
)(
xiNj ij
xiNj xjxjij
xixi
s
brs
br
​ 𝒃↓𝒙𝒊 = 𝝁+​ 𝒃↓𝒙 +​ 𝒃↓𝒊 
Pro	e	contro	
+:	Lavora	con	tu>	i	5pi	di	ogge>	
+:	Non	è	necessaria	feature	selec5on	
	
-:	New	user	problem	
-:	New	item	problem	
-:	Matrice	dei	ra5ng	sparsa
Dimensionality	Reduc8on	
• Possibile	 soluzione	 per	 il	 problema	 dovuto	 alla	
“sparsità”	della	matrice?	
•  Dimensionality	Reduc5on	
• Latent	Seman5c	Indexing	(LSI)	
•  Tecnica	algoritmica	sviluppata	tra	la	fine	degli	anni	‘80	primi	anni	‘90	
•  Risolve	 problemi	 di	 sinonima,	 “sparsità”	 e	 scalabilità	 per	 grandi	
dataset	
•  Riduce	la	dimensionalità	e	caBura	le	relazioni	laten8	
• Si	 può	 mappare	 facilmente	 nel	 Collabora5ve	
Filtering!
LSI	
• Tecnica	di	indicizzazione	che	usa	la	Singular	
Value	 Decomposi5on	 per	 iden8ficare	
paBern	nella	relazione	tra	termini	e	conceR	
contenu8	nel	testo.	
• Si	 basa	 sul	 principio	 che	 parole	 che	 sono	
usate	nello	stesso	contesto	tendono	ad	avere	
significato	simile.
LSI per CF
• Matrice	Termini-Documen8	
• Spazio	dei	conceR	
• Mapping	tra:	
• Termini	↔	Conce>	
• Documen5	↔	Conce>	
• Matrice	Uten8-OggeR		
• Spazio	delle	categorie	
• Mapping	tra:	
• Ogge>	↔	Categorie	
• Uten5	↔	Categorie
Neklix	Challenge	
•  Compe8zione	 per	 iden8ficare	 il	 migliore	 algoritmo	 di	 CF	 per	 predire	
ra8ng	degli	uten8	per	I	film,	sulla	base	di	ra8ng	preceden8.	
•  Prize:	USD	$1,000,000	
•  Compe8zione	iniziata	nel	2006	
•  Un	team	ha	vinto	la	compe8zione	nel	2009	(ha	baButo	l’algoritmo	usato	
da	Neklix	migliorando	le	prestazioni	del	10.06%)	
•  Dataset:	
•  ~480,000	uten8	e	~18,000	film;	solo	~100	milioni	di	ra8ng	
•  U8lity	matrix	sparsa	al		99%!	(Circa	8.5	miliardi	di	ra5ng	potenziali)
Singular-	Value	Decomposi8on	(SVD)		
• Rappresentazione	 low-dimensional	 di	 una	 matrice	
high-dimensional	
•  Rappresentazione	esaBa	
•  Facile	rimuovere	le	dimensioni	meno	significa8ve		
•  Algoritmi	efficien8		(R,	matlab)
Singular	Value	Decomposi8on	
• Problema:	
#1:	Trovare	ConceR	
#2:	Ridurre	la	dimensionalità
SVD	-	Definizione	
A[n	x	m]	=	U[n	x	r]	Λ[ r	x	r]	(V[m	x	r])T	
•  	A:	matrice	n	x	m	(es,	n	documen8,	m	termini)	
•  	U:	matrice	n	x	r	(n	documen8,	r	conceR)	
•  	Λ:	matrice	diagonale	r	x	r	(forza	di	ogni	‘conceBo’)	(r:	rango(*)	della	matrice)	
•  	V:	matrice	m	x	r	(m	termini,	r	conceR)	
*Numero	di	righe	o	colonne	linearmente	indipenden8	della	matrice
SVD	-	Proprietà	
Decomposizione	spedrale	della	matrice	
1 1 1 0 0
2 2 2 0 0
1 1 1 0 0
5 5 5 0 0
0 0 0 2 2
0 0 0 3 3
0 0 0 1 1
= x xu1 u2
l1
l2
v1
v2
#3	Query	
Matrix	
Alien	
StarWars	
Casablanca	
Titanic	
Joe	 1	 1	 1	 0	 0	
Jim	 3	 3	 3	 0	 0	
John	 4	 4	 4	 0	 0	
Jack	 5	 5	 5	 0	 0	
Jill	 0	 0	 0	 4	 4	
Jenny	 0	 0	 0	 5	 5	
Jane	 0	 0	 0	 2	 2	
Matrice di rango 2 relativa ai rating degli
utenti ai film.
Due concetti (categorie) :
•  Fantascienza
•  Film romantici
EffeBuare	raccomandazioni	
• Usa	la	Cosine	Similarity	
• Grazie	 alla	 SVD,	 possiamo	 effeBuare	 delle	
predizioni	con	un	semplice	prodoBo	scalare.	
• Dato	un	utente	e	la	lista	dei	ra8ng	dei	film	che	ha	visto	e	a	
zero	quelli	che	non	ha	visto	(p)	:	
•  Mappiamo	 i	 ra5ng	 corren5	 dell’utente	 dallo	 spazio	 originale	 a	 quello	
delle	categorie	(mol5plichiamo	per	V,	matrice	film-categorie):	
​ 𝑝 = 𝑝× 𝑉	
•  Calcoliamo	la	raccomandazione	usando	nuovamente	la	matrice	V:	
​ 𝑝 =​ 𝑝 ×​ 𝑉↑𝑇 
Joe	 1	 1	 1	 0	 0	
Jim	 3	 3	 3	 0	 0	
John	 4	 4	 4	 0	 0	
Jack	 5	 5	 5	 0	 0	
Jill	 0	 0	 0	 4	 4	
Jenny	 0	 0	 0	 5	 5	
Jane	 0	 0	 0	 2	 2	
0.14 0
0.42 0
0.56 0
0.70 0
0 0.60
0 0.75
0 0.30
12.4 0
0 9.5x
0.58 0.58 0.58 0 0
0 0 0 0.71 0.71
x=
SVD
SVD	–	Query	con	l’uso	dei	conceR	
• Abbiamo	 l’utente	 (Alfredo)	 nuovo,	 non	 presente	
nella	matrice.	
• Possiamo	capire	cosa	gli	potrebbe	piacere?	
• Ha	visto	solo	Matrix,	rate	4	
• Rappresen8amo	Alfredo	come:	
	 	 	 	p	=	[4	0	0	0	0]
SVD	–	Query	con	l’uso	dei	conceR	
• Mappiamo	Alfredo	nello	spazio	delle	categorie	mol8plicando	
il	veBore	per	la	matrice	degli	Uten8-Categoria	
	 	 	 	 		
0.58 0
0.58 0
0.58 0
0 0.71
0 0.71
Forte	interesse	per		
la	fantascienza	
Similarità	Utente-Categoria	
		
P	x	V	=	[4	0	0	0	0]		x 		 =		[2.32,	0]
SVD	–	Query	con	l’uso	dei	conceR	
• Rimappiamo	Alfredo	nello	spazio	dei	film	mol8plicando	[2.32,	0]	per		
V	T	.	
	 	 		
	
0.58 0.58 0.58 0 0
0 0 0 0.71 0.71
[2.32,	0]	x	
=	[1.35,	1.35,	1.35,	0,	0]
Part IV Metodi Graph-based
Metodi	Graph-based	
•  Simile	 al	 Collabora8ve	 Filtering	 ma	 usa	 un	 grafo	 bipar5to	 per	
immagazzinare	le	informazioni.	
•  Le	 raccomandazioni	 sono	 oBenute	 a	 par8re	 dalla	 struBura	 della	 rete	
bipar8ta.	
•  Due	classi	di	iden8tà:	Uten5	(U)	e	Ogge>	(O).			
•  Definiamo	il	grafo	bipar8to	come	segue:	
•  G(U,	O,	E,	W)	
•  E	=	{eij	:	ui	likes	oj)	
•  W	:	E	→	ℜ	
•  	“E”	insieme	degli	archi	e	 	“W”	è	una	funzione	che	rappresenta	il	degree	di	
preferenza	che	un	utente	ha	per	il	par8colare	oggeBo.
La	u8lity	matrix	come	grafo	bipar8to	
Joe
Jim
John	
Jack
Jill
Jenny
Jane
1
3
4
4
5
2
4
5
2
5
5
5
1
1
3 3
5
44
Schema	del	metodo
NBI	
•  NBI	(Network-based	inference)	sviluppato	nel	2007.	
•  Bipar5te	network	projec5on	per	oBenere	informazioni	sulle	proiezioni.	
•  Dopo	la	proiezione:	
•  Re8	con	nodi	dello	stesso	8po	(uten8	o	oggeR);	
•  Due	nodi	sono	connessi	se	sono	collega8	da	almeno	un	nodo	di	altro	8po;
NBI	
• Idea	 base	 dell’algoritmo:	 flusso	 delle	 risorse	 sulla	
rete	bipar8ta:	
•  agli	oggeR	viene	assegnata	una	quan8tà	iniziale	di	risorse;	
•  in	un	processo	a	due	fasi	le	risorse	sono	trasferite	dagli	oggeR	agli	
uten8	e	successivamente	trasferi8	indietro	agli	oggeR;	
•  questo	 processo,	 con	 una	 fase	 di	 normalizzazione	 consente	 di	
oBenere	degli	score	per	le	coppie	uten8	-	oggeR.
NBI	
• Il	 calcolo	 dei	 pesi	 avviene	
a B r a v e r s o	 l a	 s e g u e n t e	
equazione:	
• Dove	Γ(i,	j)	è	definita	come	:	
•  Γ(i,	j)=D(oj)	per	NBI	
•  Γ(i,	j)=D(oi)	per	HeatS	
• D(t)	degree	del	nodo	 	“t”	nella	
rete	bipar8ta.
Raccomandazioni	con	NBI	
• Il	 peso	 “wij”	 della	 proiezione	 corrisponde	 a	 quante	 risorse	
vengono	trasferite	dall’oggeBo	“j”	all’oggeBo	“i”,	o	quanto	
piacerà	l’oggeBo	“j”	ad	un	utente	a	cui	piace	l’oggeBo	“i”.	
• Data	 la	 matrice	 di	 adiacenza	 “A”	 del	 grafo	 bipar8to	 e	 la	
matrice	“W”,	la	matrice	di	raccomandazione	“R”	per	tuR	gli	
uten8	può	essere	calcolata	in	un	unico	step:	

𝑅= 𝑊× 𝐴
Pro	e	contro	
+:	Funziona	su	tu>	i	5pi	di	ogge>	
+:	 Risolve	 il	 problema	 della	 sparsità	 della	 u5lity	
matrix.	
	
-:	New	user	problem	
-:	New	item	problem	
-:	Richiede	importan5	risorse	computazionali
Metodi	ibridi	
• Usare	 in	 combinazione	 diversi	 metodi	 di	
raccomandazione	
• Supponiamo	di	avere	i	metodi	“X”	e	“Y”	che	danno	
rispeRvamente	gli	score	“xa”	e	“ya”.	Lo	score	di	un	
modello	ibrido	può	essere	oBenuto	come:	
• λ∈[0;1]
Pro	e	contro	
+:	 Efficace	 nel	 migliorare	 la	 qualità	 delle	
raccomandazioni	
	
-:	Computazionalmente	pesante
Part V
Predizione di annotazioni su
una banca dati di articoli
scientifici
Mo8vazioni	
In	seBori	come	la	biomedicina	
•  LeBeratura	scien8fica	enorme;	
•  Cen8naia	 di	 database	 con	 risulta8	 di	 analisi	
sperimentali;		
•  Può	 essere	 difficile	 a	 volte	 iden8ficare	 risulta8	 già	
conosciu8..	Poco	mining	su	ques8	da8..
Mo8vazioni	
• Problema:	
	 An8cipare	 l’informazione	 di	 cui	 l’utente	 ha	 bisogno	 (ma	
non	lo	sa!!).	
	
Definizione:		
Dato	 un	 insieme	 di	 termini	 che	 l’utente	 ha	 oBenuto	 per	 un	
ar8colo,	 interrogando	 un	 search	 engine,	 vogliamo	
raccomandare	un	insieme	piccolo,	significa5vo	e	differente,	
di	termini	rilevan=	per	l’ar8colo	ma	non	contenu8	in	esso.
Abstract	annota8on:	un	modo	per	inferire	nuove	ipotesi	
E2F3
senescence
mir-499
microRNA
EZH2
PDGFB
CTGF
SOX4
microRNA
Cancer
Proposta	
• BioTAGME	
o  Un	sistema	per	l’estrazione	di	informazioni	nella	forma	di	termini	
seman5camente	correla5:	tag/ancore	da	PubMed.	
o  Due	tecnologie:	
ü  	TAGME:	Sistema	per	l’estrazione	di	annotazioni	da	tes8;	
ü  	DT-Hybrid:	Algoritmo	di	raccomandazione.	
o  Il	contesto	
Circa 25 milioni di citazioni dalla letteratura biomedica
•  TAGME:	tool	per	effeBuare	annotazioni	on-the-fly	in	tes8	non	struBura8	con	l’uso	di	
Wikipedia.	
On this day 24 years ago Maradona scored his infamous "Hand of God"
goal against England in the quarter-final of the 1986
DT-Hybrid	
•  DT-Hybrid:		tecnica	di	raccomandazione	graph-based	
o  Applicata	nel		contesto	drug-target	interac8on	predic8on	e	nel	drug	reposi8oning.		
o  Framework	generale	
o  DT-Hybrid	standalone	R	package	e	web	app.
Query TAGME Document/
Tag Matrix
Candidate
Terms
Matrix
DT-Hybrid
TAGME
Semantic
Similarity
Matrix
Sets of
Candidate
Terms
Sets of
significant
Annotations
Corpus of
Abstracts
Pubmed
Search
BioTAGME	Pipeline	
p-Value based
filtering
Correlation
and
Grouping
Tags
Glossary
BioTAGME	webapp:	Architecture	
Quer
y
REST
APIJSON
Response
NCBI Pubmed
Entrez
Utilites
XML
Response
DT-Hybrid
BioTAGME	webapp	
http://alpha.dmi.unict.it/biotagme/
A	case	study:	“MicroRNA”	
# Paper Source
Terms
Predicted
Terms
Correlation p-Value
1 Circulating u2 small nuclear rna fragments as a novel diagnostic
tool for patients with epithelial ovarian cancer.
4 5 0,90 < 0,01
2 Tumor-suppressive microrna-449a induces growth arrest and
senescence by targeting e2f3 in human lung cancer cells.
5 6 0,80 < 0,01
A	case	study:	“MicroRNA”	
Source Terms Novel Terms
microrna
u2 spliceosomal rna
small nuclear rna
ovarian cancer
Correlation Citation
mRNA 0,90 -
ncRNA 1,00 -
parp inhibitor 0,91 The emerging role of parp inhibitors in the treatment of epithelial ovarian
cancer.
muc1 0,98 Expression of muc1 and muc2 mucins in epithelial ovarian tumours.
xiap 0,93 Expression and clinical significance of xiap and caspase-3 protien
in primary epithelia ovarian cancer.
# Paper Source
Terms
Predicted
Terms
Correlation p-Value
1 Circulating u2 small nuclear rna fragments as a novel diagnostic
tool for patients with epithelial ovarian cancer.
4 5 0,90 < 0,01
A	case	study:	“MicroRNA”	
Source Terms Novel Terms
guangzhou
senescence
e2f3
mir-449
microrna
Correlation Citation
ezh2 1,00 Validation of the histone methyltransferase ezh2 as a therapeutic target
for various types of human cancer and as a prognostic marker
pdgfb 0,80 Pdgf receptors as targets in tumor treatment.
col4a1 1,00 -
ctgf 1,00 Connective tissue growth factor and its role in lung adenocarcinoma
invasion and metastasis.
sox4 1,00 -
mcl1 1,00 Mcl-1 regulates survival and sensitivity to diverse apoptotic stimuli in
human non-small cell lung cancer cells.
# Paper Source
Terms
Predicted
Terms
Correlation p-Value
2 Tumor-suppressive microrna-449a induces growth arrest and
senescence by targeting e2f3 in human lung cancer cells.
5 6 0,80 < 0,01
Wisdom	of	crowds
ProgeBo	in	progress:	what’s	next	
• PubMed	offline	Crawling;	
• Automa8c	bibliography	construc8on;	
• Sviluppo	 versione	 custom	 di	 BioTAGME	 con	 le	
ontologie	biomediche	(OMIM,	GO).	
• Integrazione	di	banche	da8	esterne:	raccomandazione	
domain-tuned.
Take	home	message	
•  Modelli	Latent	Factor	e	graph	based	molto	
efficaci.	
•  Spazio	 di	 applicazione	 dei	 sistemi	 di	
raccomandazione	molto	ampio.		
•  Molte	librerie	esisten8.
Bibliografia	e	ringraziamen8		
•  Alcuni	contenu8	sono	riadaBa8	da		Mining	Massive	Data:	hBp://www.mmds.org/	
•  Metodi	Graph-based:	
•  Zhou,	 T.,	 Ren,	 J.,	 Medo,	 M.,	 and	 Zhang,	 Y.	 (2007).	 Bipar5te	 network	 projec5on	 and	 personal	 recommenda5on.	 Physical	
Review	E,	76(4),	046115–22.	
•  Zhou,	T.,	Kuscsik,	Z.,	Liu,	J.-G.,	Medo,	M.,	Wakeling,	J.	R.,	and	Zhang,	Y.-C.	(2010).	Solving	the	apparent	diversity-accuracy	
dilemma	of	recommender	systems.	Proceedings	of	the	Na8onal	Academy	of	Sciences,	107(10),	4511–4515.	
•  Algoritmo	DT-Hybrid:	
•  Alaimo	 S,	 Pulviren8	 A,	 Giugno	 R,	 Ferro	 A.	 Drug–target	 interac5on	 predic5on	 through	 domain-tuned	 network-
based	inference.	Bioinforma8cs	2013	29:	2004-2008.	
•  Alaimo	S,	Giugno	R,	Pulviren8	A.	"ncPred:	ncRNA-Disease	Associa8on	Predic8on	through	Tripar8te	
Network-Based	Inference."	Fron1ers	in	bioengineering	and	biotechnology	2	(2014).	
•  TAGME	
•  Ferragina,	 P.,	 Scaiella,	 U.	 (2012).	 Fast	 and	 Accurate	 Annota5on	 of	 Short	 Texts	 with	 Wikipedia	
Pages.	IEEE	So…ware	29(1):	70-75.	Also	appeared	in	Procs	ACM	CIKM	(2010,	pp.	1625-1628).		
•  BioTAGME	
•  Alaimo	 S,	 Ferragina	 P,	 Ferro	 A,	 	 Giugno	 R,	 Pulviren8	 A.	 An	 algorithm	 for	 the	 predic5on	 of	
annota5ons	on	Pubmed	(submided)
Il	team!	
Alfredo	Ferro,	Full	Professor,	Università	di	Catania	
Salvatore	Alaimo,	Post-Doc,	Università	di	Catania	
	
Rosalba	Giugno,	Associate	Professor,	Università	di	Verona	
	
Paolo	Ferragina,	Full	Professor,	Università	di	Pisa
Grazie!

More Related Content

Viewers also liked

Big Data Analytics & IoT Challenges
Big Data Analytics & IoT ChallengesBig Data Analytics & IoT Challenges
Big Data Analytics & IoT ChallengesBig Data for You
 
Sistemi di raccomandazione
Sistemi di raccomandazioneSistemi di raccomandazione
Sistemi di raccomandazioneValeria Gennari
 
IoT App Development Areas And Major Challenges
IoT App Development Areas And Major ChallengesIoT App Development Areas And Major Challenges
IoT App Development Areas And Major Challengesastoria0128
 
Security challenges for IoT
Security challenges for IoTSecurity challenges for IoT
Security challenges for IoTWSO2
 
Your Thing is Pwned - Security Challenges for the IoT
Your Thing is Pwned - Security Challenges for the IoTYour Thing is Pwned - Security Challenges for the IoT
Your Thing is Pwned - Security Challenges for the IoTWSO2
 
Internet of thing (IoT and cloud convergence opportunitis and challenges
 Internet of thing (IoT and cloud convergence opportunitis and challenges  Internet of thing (IoT and cloud convergence opportunitis and challenges
Internet of thing (IoT and cloud convergence opportunitis and challenges Dr.-Ing Abdur Rahim Biswas
 
Iot, cloud and healthcare - Challenges and Opportunities
Iot, cloud and healthcare - Challenges and OpportunitiesIot, cloud and healthcare - Challenges and Opportunities
Iot, cloud and healthcare - Challenges and OpportunitiesArash Ghadar
 
Manual de slideshare
Manual de slideshareManual de slideshare
Manual de slideshareCRISTIANYO
 

Viewers also liked (11)

Big Data Analytics & IoT Challenges
Big Data Analytics & IoT ChallengesBig Data Analytics & IoT Challenges
Big Data Analytics & IoT Challenges
 
Sistemi di raccomandazione
Sistemi di raccomandazioneSistemi di raccomandazione
Sistemi di raccomandazione
 
IoT App Development Areas And Major Challenges
IoT App Development Areas And Major ChallengesIoT App Development Areas And Major Challenges
IoT App Development Areas And Major Challenges
 
Security challenges for IoT
Security challenges for IoTSecurity challenges for IoT
Security challenges for IoT
 
Your Thing is Pwned - Security Challenges for the IoT
Your Thing is Pwned - Security Challenges for the IoTYour Thing is Pwned - Security Challenges for the IoT
Your Thing is Pwned - Security Challenges for the IoT
 
Challenges in the IoT
Challenges in the IoTChallenges in the IoT
Challenges in the IoT
 
Internet of thing (IoT and cloud convergence opportunitis and challenges
 Internet of thing (IoT and cloud convergence opportunitis and challenges  Internet of thing (IoT and cloud convergence opportunitis and challenges
Internet of thing (IoT and cloud convergence opportunitis and challenges
 
Iot, cloud and healthcare - Challenges and Opportunities
Iot, cloud and healthcare - Challenges and OpportunitiesIot, cloud and healthcare - Challenges and Opportunities
Iot, cloud and healthcare - Challenges and Opportunities
 
cellphones
cellphonescellphones
cellphones
 
Ciberbullying
CiberbullyingCiberbullying
Ciberbullying
 
Manual de slideshare
Manual de slideshareManual de slideshare
Manual de slideshare
 

Similar to Sistemi di raccomandazione

I Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiI Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiThinkOpen
 
Applicazione di una metofolgia di analisi e valutazione del rischio informatico
Applicazione di una metofolgia di analisi e valutazione del rischio informaticoApplicazione di una metofolgia di analisi e valutazione del rischio informatico
Applicazione di una metofolgia di analisi e valutazione del rischio informaticoFederico Cergol
 
ANALYSIS OF METHODS FOR PRODUCT INNOVATION: CLASSIFICATION OF PATENTS AND SC...
ANALYSIS OF METHODS FOR PRODUCT INNOVATION:  CLASSIFICATION OF PATENTS AND SC...ANALYSIS OF METHODS FOR PRODUCT INNOVATION:  CLASSIFICATION OF PATENTS AND SC...
ANALYSIS OF METHODS FOR PRODUCT INNOVATION: CLASSIFICATION OF PATENTS AND SC...Roberto Nani
 
Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsGiuseppe Ricci
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaGiuseppe Ricci
 
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"Biblioteca d'Area CNR Bologna
 
Modelli Vettoriali per il Filtraggio dell'Informazione
Modelli Vettoriali per il Filtraggio dell'InformazioneModelli Vettoriali per il Filtraggio dell'Informazione
Modelli Vettoriali per il Filtraggio dell'InformazioneCataldo Musto
 

Similar to Sistemi di raccomandazione (12)

I Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiI Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utenti
 
Applicazione di una metofolgia di analisi e valutazione del rischio informatico
Applicazione di una metofolgia di analisi e valutazione del rischio informaticoApplicazione di una metofolgia di analisi e valutazione del rischio informatico
Applicazione di una metofolgia di analisi e valutazione del rischio informatico
 
Relaxed FD Discoverer
Relaxed FD DiscovererRelaxed FD Discoverer
Relaxed FD Discoverer
 
ANALYSIS OF METHODS FOR PRODUCT INNOVATION: CLASSIFICATION OF PATENTS AND SC...
ANALYSIS OF METHODS FOR PRODUCT INNOVATION:  CLASSIFICATION OF PATENTS AND SC...ANALYSIS OF METHODS FOR PRODUCT INNOVATION:  CLASSIFICATION OF PATENTS AND SC...
ANALYSIS OF METHODS FOR PRODUCT INNOVATION: CLASSIFICATION OF PATENTS AND SC...
 
Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systems
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
 
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"
Corso "Come implementare il modulo NILDE-Utenti nella propria biblioteca"
 
SELinux - overview
SELinux - overviewSELinux - overview
SELinux - overview
 
Modelli Vettoriali per il Filtraggio dell'Informazione
Modelli Vettoriali per il Filtraggio dell'InformazioneModelli Vettoriali per il Filtraggio dell'Informazione
Modelli Vettoriali per il Filtraggio dell'Informazione
 
BibliotecaAccessibile
BibliotecaAccessibileBibliotecaAccessibile
BibliotecaAccessibile
 
Open Bqr
Open BqrOpen Bqr
Open Bqr
 
Open Bqr
Open BqrOpen Bqr
Open Bqr
 

Sistemi di raccomandazione