Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de...

29
Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo

Transcript of Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de...

Page 1: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Mineração dePreferências Contextuais

A. Soulet et al. 2012

AULA 19

Data Mining

Profa. Sandra de Amo

Page 2: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Motivação

Ste ve Sp ie lb e rg A c tion

Tom H a nk s

W a r

Drama

Leonardo d i Caprio

Ja me s C a me ro n

J o h n n y D e p p

Th ril le r

Action, Tom Hanks, War

Action, Stieve Spieberg, War

Page 3: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Motivação

Notação:

A: Action

B: Tom Hanks

C: Steve Spielberg

D: War

E: Leonardo di Caprio

….

Page 4: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Motivação

Page 5: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Objetivo

Dado um conjunto de pares de transações (amostragem fornecida pelo usuário)

Descobrir regras que permitam decidir as preferências do usuário sobre pares de transações.

No exemplo: Uma transação corresponde a uma classe de

filmes.

Page 6: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Formalização do Problema Items (tags) Itemset (ou transação)= conjunto de items Uma preferência = (t1,t2), onde t1, t2 são itemsets

Um banco de dados de Preferências: conjunto finito de preferências fornecidas pelo usuário através de cliques.

Regra de Preferência Contextual : Sintaxe : i+ > i- | X

i+, i- são items distintos X = itemset i+ e i- não estão contidos em X

Semântica : entre duas transações contendo X, prefiro aquela que contém i+ do que aquela que contém i-

X = Contexto da regra

Page 7: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Exemplo

t1 = A C D t2 = A B C E r: D > E | A Logo: t1 >r t2

t1 é preferido a t2 de acordo com a regra r

Page 8: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Medidas de utilidade das regras t1, t2: transações r: regra de preferência (t1,t2) satisfaz r se t1 >r t2 (t1,t2) contradiz r se t2 >r t1

Suporte de uma regra r com relação a um conjunto de preferências P Sup(r,P) = porcentagem de bi-tuplas (t1,t2) de P que satisfazem r Dizemos que (t1,t2) satisfaz a regra r se t1 >r t2

Confiança de uma regra r com relação a um conjunto de preferências P. Conf(r,P) = Porcentagem de bi-tuplas (t1,t2) de P que satisfazem

r, dentre todas as que satisfazem ou contradizem r

Page 9: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Minimalidade

Uma regra i+ > i- | X é dita minimal com relação a um banco de preferências P

se não existe Y X tal que:

sup(i+ > i- | Y, P) = sup(i+ > i- | X, P) e

conf(i+ > i- | Y, P) = conf(i+ > i- | X, P)

Propriedades importantes de antimonotonia: se Y X e sup(i+ > i- | Y, P) ≤ N então sup(i+ > i- | X, P) ≤ N se Y X e i+ > i- | Y não é minimal então i+ > i- | X não é

minimal

Page 10: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Problema de Mineração (1)Input: Banco de dados de preferências P

N: nível minimo de suporte

M: nível minimo de confiança

Output: todas as regras de preferência r, minimais, com suporte ≥ N e confiança ≥ M

Método ContPrefMiner: adaptação do algoritmo Apriori para minerar regras de preferência. (poderia ser qualquer algoritmo de mineração de regras de associação)

Page 11: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Algoritmo ContPrefMiner

Page 12: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Problemas a resolver : Como usar o conjunto de regras minerado por

ContPrefMiner para prever a preferência do usuário sobre duas transações quaisquer ?

Cada regra tem sua “opinião” a respeito da preferência entre duas transações.

“Opiniões” podem ser contraditórias Ordenação por regras “individuais” pode não ser

transitiva. O conjunto de regras pode ser muito grande.

Page 13: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Como definir uma ordem de preferência ? O que significa duas transações serem comparáveis

por um conjunto S de regras de preferências ?

t1, t2 são comparáveis por S se t1 >r t2, onde r = a melhor regra de preferência de S.

Estamos adotando uma política de autoridade para agregar preferências de S : a melhor regra decide !

Page 14: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Como ordenar regras de preferência

Trata-se de uma ordem total !

Page 15: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Exemplo : minsup = 0.2, minconf= 0.6

Page 16: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Como avaliar um ordenador S ?S = conjunto de regras de preferências

P = banco de dados de preferências

Precisão(S,P) = porcentagem de pares (t,u) em P com t >S u dentre todos os pares em P comparáveis por S

Recall(S,P) = porcentagem de pares (t,u) em P com t>s u dentre todos os pares em P

Page 17: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Problema de Mineração (2)Input: Banco de dados de preferências P

Conjunto de regras de Preferência S

Output: Um subconjunto S’ de S que maximize a precisão e o recall e que seja tão pequeno quanto se queira.

Problema NP-completo : problema do red-blue set cover (que é NP-completo) se reduz a este problema de mineração.

Solução proposta: algoritmo ProfMiner

enfoque heurístico – solução não é exata

Page 18: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Idéia geral

A cada iteração R = { r0 }, r0 = melhor regra de S P = P – {(t,u) que não satisfazem r0} S = conjunto das regras de S que são satisfeitas

por pelo menos k pares de P Repete o processo até S seja vazio.

Coeficiente k : controla o tamanho do R retornado R retornado = Perfil do usuário

Page 19: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Algoritmo ProfMiner

Page 20: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Exemplo (k = 1)

Page 21: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Resultados Experimentais Foram usados 3 bancos de preferências sobre filmes (imdb.com e

MovieLens preparados pelo grupo de BD-UFU e Université de Versailles). P301, P3000, P30000 Atributos: Gênero, Ator, Diretor, Ano Atributos multivalorados: Gênero, Diretor, Ator Ator: consideramos só o principal Gênero, Diretor: valores múltiplos são transformados num único item ContPrefMiner: executado com minsup= 0,001 e minconf = 0,5

Processador Intel 3 GHz, 1 GB de RAM, Windows XP

Page 22: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Redução do conjunto de regras ProfMiner reduz drasticamente o conjunto de

regras retornado por ContPrefMiner Tamanho do conjunto de regras diminui

quando k aumenta Mesmo para k = 1 há uma redução no

número de regras:P301 : de 5319 108

P3000 : de 4833 432

P30000: de 4913 925

Page 23: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Variação do número de regras em relação ao K

Page 24: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Coeficiente de Redução do Perfil Seja Rk: perfil retornado para k Q = Coeficiente de redução de Rk

Q = (|R1| - |Rk|) / |R1|

Page 25: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Gráfico da Precisão com respeito ao Q

Page 26: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Gráfico Recall com respeito ao Q

Page 27: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Gráfico da F-Mesure com respeito ao Q

Page 28: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Algumas regras de preferência extraídas

Page 29: Mineração dePreferências Contextuais A. Soulet et al. 2012 AULA 19 Data Mining Profa. Sandra de Amo.

Trabalhos em Andamento Estudar outras maneiras de construir o perfil

do usuário – outras politicas de ordenação das regras retornadas por ContPrefMiner

Algoritmo CPrefMiner: baseado em outra metodologia: Extração de uma rede de preferências R R é uma espécie de CP-Net probabilistica R faz o papel do conjunto S de regras retornado

por ProfMiner (= perfil do usuário)