190 likes | 277 Views
Mineração de Preferências Contextuais sobre dados de preferência “pairwise”. Data Mining AULA 19 – Parte I Sandra de Amo. Referências. ICTAI 2012
E N D
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
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
3 4 2 5 1 Modelos de Preferências • Enfoque Quantitativo • Modelo: Score : Tuplas N • Ordem total sobre as tuplas LIG - Université Grenoble 2011
Outros quantitativos • Rankings <p1,p2,...,pn> • Pares (p1,p2) • Triplas (p1,p2,n), onde n = grau de preferência LIG - Université Grenoble 2011
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 LIG - Université Grenoble 2011
Mineração de Preferências Contextuais LIG - Université Grenoble 2011
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
P[A = a1 > A = a2] : 0.8 P[B = b1 > B = b2] : 0.7 A B C P[ (C=c1 > C=c2) | A = a1, B = b1 ] = 0.6 D P[ (D=d1 > D=d2) | C = c1 ] = 0.75 O que queremo minerar ? • Uma rede de preferências • 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
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
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 (t1,t2) t1 (t2,t3) t2 (t2,t4) t2 (t1,t3) ? (t1,t4) ? Dados de testes Conjunto de pares de tuplas classificados pelo usuário Conjunto de pares ee tuplas classificados pela rede de pref. R Rede de Preferências 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
Como uma rede ordena tuplas ? P[A = a1 > A = a2] = 0.8 P[B = b1 > B = b2] = 0.7 A B Comparer le tuples t1(a1,b1,c1,d1) t2(a2,b2,c2,d1) 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 Dif(t1,t2) = {A, B,C} Inf(Dif) = {A,B} P[A = a1 > A = a2, B = b1> B=b2] = 0.56 P[ (D=d1 > D=d2) | C = c1 ] D = 0.75 P[A = a1 > A = a2, B = b2> B=b1] = 0.24 t1 > t2 : 0.56 t1 < t2 : 0.06 t1 ~ t2 : 0.48 (incomparables) P[A = a2 > A = a1, B = b1> B=b2] = 0.14 P[A = a2 > A = a1, B = b2> B=b1] = 0.06 LIG - Université Grenoble 2011
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
P[A = a1 > A = a2] : 0.8 P[B = b1 > B = b2] : 0.7 A B C C=c1 > C=c2 ] = 0.6 D P[ C = c1 | D=d1 > D=d2] = 0.75 P[A = a1, B = b1 | Duas etapas: 1. Minerar a topologia da rede 2. Descobrir as tabelas de probabilidades associadas a cada nó LIG - Université Grenoble 2011
A A B A B C B C D C F D E E F D E F Score(S3,D) = N3 Score(S2,D) = N2 Score(S1,D) = N1 Mineração da Topologia da Rede Dados D LIG - Université Grenoble 2011
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
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
Resultados em dados sintéticos Numero de atributos LIG - Université Grenoble 2011
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
Resultados em dados reais (filmes) Tempo para construir o modelo de Mineração LIG - Université Grenoble 2011