Please enable JavaScript.
Coggle requires JavaScript to display documents.
Aula 08 - Análise de Associações - Coggle Diagram
Aula 08 - Análise de Associações
Conceitos Iniciais
Alguns problemas os dados
não possuem um atributo alvo
, nesses casos implementamos
modelos de aprendizado não supervisionado (modelos descritivos)
Modelos Preditivos
Possuem atributo alvo
Modelos Descritivos
Análise sobre associações entre os dados
Exemplos de uso
Análise de comportamento do consumidor
Alteração de layouts das páginas web
Frequencia que um grupo de páginas são visitadas durante uma sessão
Sequência em que as páginas são visitadas
Duração das visitas dos usuários
Recomendações de itens relacionados
Estratégias de marketing
Desconto para grupos de itens relacionados
Características e Notações
Interpretáveis
Representam o paradigma simbólico para a representação do conhecimento
A, B => C
A => B
Não Triviais
Não representam conhecimento óbvio/trivial, como; "Quem compra café também compra filtro de café"
Itemset
O conjunto de itens é chamado de Itemset
Suporte Relativo
O que indica?
Indica a frequência de vezes que uma determinada regra é aplicável ao conjunto de dados
Se a regra A => B diz que o cliente que compra Arroz (A) também compra Feijão (B)
Considerando: 100 transações e 60 com arroz e feijão
sup(A=>B) = 60/100 = 0.6 = 60%
Formula
sup(A=>B) = P(AUB) = cont(A&B)/|T|
P(AUB) --> É a probabilidade de ocorrer o conjunto de itens de A e B no conjunto de transações T
cont(A&B) --> Frequência com que os itens de A e B apareceram nas mesmas transações
|T| --> Indica o número total de transações
Confiança
O que indica?
É a frequência na qual os elementos de B aparecem no conjunto de dados com transações que possuem A
Considerando qua a quantidade de vezes que A e B ocorreram nas transações foi de 60 cont(A&B)
Porém, A pode ter ocorrido mais vezes sem B
Considerando que A ocorreu 80 vezes cont(A) nas transações
Logo, a confiança será
1 more item...
Formula
conf(A=>B) = P(B|A) = sup(A=>B)/sup(A) = P(AUB)/P(A) = cont(A&B)/cont(A)
P(A) --> Indica a probabilidade de ocorrer os itens de A no conjunto de transações, dados por P(A) = cont(A)/|T|
Como encontrar as melhores regras de associação?
Encontrar todos os itemsets frequentes
Cada itemset deverá ocorrer com uma frequência igual ou superior a um suporte mínimo
Gerar regras de associação fortes a partir dos itemsets frequentes
As regras são geradas de forma que a confiança das regras sejam maior que uma confiança miníma
Regras de associação são consideradas fortes quando satisfazem o suporte e confiança minímas
Algoritmo Apriori
O que é?
Um algoritmo utilizado para a extração dos itemsets frequentes
Funcionamento
Um conjunto de 1-itemset frequente é gerado, chamado de L1
O L1 é utilizado para gerar o conjunto de 2-itemsets frequentes (L2)
O processo é repetido até que nenhum k-itemset seja encontrado
Como é reduzido o espaço de busca no algoritmo?
Todo subconjunto não vazio de um itemset frequente também é frequente
Se um itemset I não satisfaz o suporte minímo, a adição de um itemset A em I (A U I) não fará com que ele seja frequente
Como gerar candidatos a itemsets?
Regras padrões são seguidas para geração do itemset, independente do metodo utilizado
Não devemos gerar muitos candidatos desnecessários
Um candidato é considerado desnecessário se um de seus subconjuntos é infrequente
Devemos garantir que o conjunto de candidatos é completo
Nenhum itemset frequente é excluido da geração de candidatos
Não devemos gerar o mesmo itemset candidato mais de uma vez
Método Fk-1 x F1
Medidas de Interesse
O que é?
Mesmo utilizando suporte e confiança muitas regras são geradas, e muitas delas não são interessantes
Problema do Cobertor Curto
Suporte e Confiança altos geram poucas regras, porém, muitas podem ser óbvias
Suporte e Confiança baixos geram muitas regras, porém, com mais chance de obter regras relevantes
As medidas de interesse foram propostas para avaliar a qualidade das regras
Métodos de Calculo
LIFT
lift(A => B) = sup(AUB)/sup(A) x sup(B)
Se lift = 1 -> A e B são independentes
Se lift > 1 -> A e B são positivamente dependentes
Se lift < 1 -> A e B são negativamente dependentes
Rules Interest (RI)
ri(A => B) = sup(AUB) - sup_esp(AUB)
Se ri = 0 -> A e B são independentes
Se ri > 0 -> A e B são positivamente dependentes
Se ri < 0 -> A e B são negativamente dependentes
Convicção
conv(A => B) = 1 - sup(B)/1 - conf(A => B)
Se conv = 1 -> Independência completa entre antecedente e o consequente da regras
Regras onde o antecedente nunca aparece sem o consequente (conf(A => B) = 1) terão conv = ∞, pois o denominador é 0
Se sup(B) = 1, temo que B estará presente em todas as transações, logo, conv(A => B) = 0
Dependência entre Itens
Independência entre Itens
sup_esp(AUB) = sup(A) x sup(B)
Dependência negativa
sup(AUB) < sup_esp(AUB)
Quando o cliente compra o item {A} a probabilidade de comprar o item {B} diminui
Dependência positiva
sup(AUB) > sup_esp(AUB)
Quando o cliente compra o item {A} a probabilidade de comprar o item {B} aumenta
Variações de Regras de Associação
Existem diferentes tipos de dados e para lidar com a criação de regras de associação entre os dados precisamos pré processa-los quando necessário
Isso é feito para atributos: binário, categóricos, contínuos, multidimensionais
Atributos Binários
Atributos Categóricos
Atributos Contínuos