Mineração de Preferências
Contextuais sobre dados de
preferência “pairwise”
Data Mining
AULA 19 – Parte I
Sandra de Amo
LIG - Université Grenoble 2011
1
Referências

ICTAI 2012
Sandra de Amo, Marcos L. Bueno, Guilherme Alves, Nádia F.
Silva: CPrefMiner: An Algorithm for Mining User Contextual
Preferences based on Bayesian Networks. In: 24th IEEE International
Conference on Tools with Artificial Intelligence (ICTAI 2012), 2012, Atenas.

Journal of Information and Data Management (JIDM 2013)
Sandra de Amo. ; Bueno, M.L. ; ALVES, G. ; Silva, F. N. Mining User
Contextual Preferences. Journal of Information and Data Management
(JIDM) , Vol. 4 (1), 2013, pages 37-46.
LIG - Université Grenoble 2011
2
Modelos de Preferências

Séjours
Enfoque Quantitativo

Modelo:
Score : Tuplas  N

Ordem total sobre as
tuplas
Saison
Cadre
Pâcques
urbain
3
Vac-été
plage
4
Vac-hiver
montagne 2
Vac-hiver
Historique 5
Noel
LIG - Université Grenoble 2011
urbain
1
3
Outros quantitativos

Rankings <p1,p2,...,pn>

Pares (p1,p2)

Triplas (p1,p2,n), onde n = grau de preferência
LIG - Université Grenoble 2011
4
Modelos de Preferências

Enfoque Qualitativo
 Modelo
Conjunto finito de regras:
SE condição1 E Contexto1
ENTÃO Escolha1
SE condição1 E Contexto2
ENTÃO Escolha2
....
 Ordem Parcial sobre
as tuplas
REGRAS
SE a viagem é durante as férias
de verão e viajo com minha
família ENTÃO prefiro ir à praia
do que à uma cidade histórica.
SE a viagem é durante as férias
de verão e viajo sozinho ENTÃO
prefiro ir à uma cidade histórica
do que à praia.
LIG - Université Grenoble 2011
5
Mineração de Preferências
Contextuais
LIG - Université Grenoble 2011
6
O que queremos minerar ?

Regras de Preferências ?




A = a1 > A = a2
B = b1 > B = b2
A = a ^ B = b  C = c1 > C = c2
C = c2  D = d1 > D = d2
LIG - Université Grenoble 2011
7
O que queremo minerar ?
P[A = a1 > A = a2] : 0.8
A
B
C

Uma rede de preferências D


P[B = b1 > B = b2] : 0.7
P[ (C=c1 > C=c2) |
A = a1, B = b1 ] = 0.6
P[ (D=d1 > D=d2) | C = c1 ]
= 0.75
Um grafo de preferências
Para cada vértice do grafo:
uma tabela de probabilidades condicionais
de escolha dos valores do vértice com relação aos
valores de seus pais.
LIG - Université Grenoble 2011
8
Como são os dados de entrada a serem
minerados ?

Pares de tuplas expressando a preferência
do usuário.
(t1,t2)  t1
(t1,t3)  t3
(t2,t4)  t2
(t4,t5)  t5
....
LIG - Université Grenoble 2011
9
Como medir a qualidade de uma rede de
preferências ?
(t1,t2)  t1
(t2,t3)  t3
(t2,t4)  t2
(t1,t3)  t1
(t1,t4)  t1
Rede de Preferências
(t1,t2)  t1
(t2,t3)  t2
(t2,t4)  t2
(t1,t3)  ?
(t1,t4)  ?
Dados de testes
Conjunto de pares
Conjunto de pares
ee tuplas classificados
de tuplas
pela rede de pref. R
classificados pelo usuário
Accuracy(R) = Total de tuplas corretamente ordenadas por R = 2/5
Total de tuplas
Precision(R) = Total de tuplas corretamente ordenadas por R = 2/3
Total de tuplas ordenadas por R
LIG - Université Grenoble 2011
10
Como uma rede ordena tuplas ?
P[A = a1 > A = a2] = 0.8
Comparer le tuples
P[B = b1 > B = b2] = 0.7
A
t1(a1,b1,c1,d1)
t2(a2,b2,c2,d1)
B
C
Dif(t1,t2) = {A, B,C}
P[ (C=c1 > C=c2) | A = a1, B=b1] = 0.8
P[ (C=c1 > C=c2) | A = a1, B=b2] = 0.4
P[ (C=c1 > C=c2) | A = a2, B=b1] = 0.6
P[ (C=c1 > C=c2) | A = a2, B=b2] = 0.7
Inf(Dif) = {A,B}
P[A = a1 > A = a2, B = b1> B=b2] = 0.56
P[A = a1 > A = a2, B = b2> B=b1] = 0.24
P[A = a2 > A = a1, B = b1> B=b2] = 0.14
P[A = a2 > A = a1, B = b2> B=b1] = 0.06
D
P[ (D=d1 > D=d2) | C = c1 ]
= 0.75
t1 > t2 : 0.56
t1 < t2 : 0.06
t1 ~ t2 : 0.48 (incomparables)
LIG - Université Grenoble 2011
11
Formalisation du Problème

Entrée: un echantillon de pairs de tuples
(x,y), où x est préférée à y

Sortie: un réseau bayésien de préférences
(réseau probabiliste de préférences) ayant
une “bonne” accuracy et une “bonne”
précision.
LIG - Université Grenoble 2011
12
Duas etapas:
P[A = a1 > A = a2] : 0.8
A
1. Minerar
a topologia
da rede
P[B = b1 > B = b2] : 0.7
B
C
P[A = a1, B = b1 |
C=c1 > C=c2 ] = 0.6
D
2. Descobrir as tabelas de
probabilidades
associadas a cada nó
LIG - Université Grenoble 2011
P[ C = c1 |
D=d1 > D=d2] = 0.75
13
Mineração da Topologia
da Rede
Dados D
A
A
C
B
D
E
B
A
C
F
Score(S1,D) = N1
D
E
B
D
C
F
Score(S2,D) = N2
LIG - Université Grenoble 2011
E
F
Score(S3,D) = N3
14
Aspectos importantes :

Estratégia de busca das estruturas
 Impossível de gerar todas as estruturas
possíveis
 Necessidade de empregar uma heurística

Como definir o score de uma estrutura ?
LIG - Université Grenoble 2011
15
Técnica utilizada para minerar a estrutura
da rede a partir dos dados de preferência



Algoritmo Genético
Função score particular
Detalhes nos seguintes artigos:
ICTAI 2012, JIDM 2013
LIG - Université Grenoble 2011
16
Resultados em dados sintéticos
Numero de atributos
LIG - Université Grenoble 2011
17
Dados Reais

Dados de avaliações de filmes do Group Lens
www.grouplens.org

Dados sobre os filmes: IMDB
www.imdb.com

Dados coletados e pré-processados, disponíveis
em
LIG - Université Grenoble 2011
18
Resultados em dados reais (filmes)
Tempo para construir o modelo de Mineração
LIG - Université Grenoble 2011
19
Download

Parte I - Sandra de Amo