Técnicas de Mineração de Dados

Slides:



Advertisements
Apresentações semelhantes
SISTEMAS DE SUPORTE À DECISÃO
Advertisements

Construção de listas de decisão Os tópicos anteriores tratam de indução de conceitos que podem ser descritos usando uma única região de decisão Neste tópico.
Lei de Little.
Prof. André Laurindo Maitelli DCA-UFRN
INTELIGÊNGIA COMPUTACIONAL
Felipe Carvalho – UFES 2009/2
REDES NEURONAIS ARTIFICIAIS (RNAs) Universidade do Minho.
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
Método Hierárquico Aglomerativo de Clusterização Algoritmo CURE
Análise de Clusters – Introdução Método K-means
Outliers Detecção de Anomalias
Método de Clusterização baseado em Densidade Algoritmo DBSCAN
Otimização de Consultas em SQL Parte I - Planos de Execução e Equivalências de Expressões da Álgebra Relacional AULA 19 Profa. Sandra de Amo Programa.
Mineração de Padrões Arborescentes
Generalização da Técnica Levelwise para Mineração de Padrões Sandra de Amo.
Classificação Arvores de Decisão
Correção – Completude – Performance – Escalabilidade
2/18/2014Mestrado em Ciencia da Computacao Tópicos Especiais Mineração de Dados Profa. Sandra de Amo Mestrado em Ciência da Computação Faculdade.
Mineração dePreferências Contextuais A. Soulet et al AULA 19 Data Mining Profa. Sandra de Amo.
Otimização de Consultas em SQL Planos de Execução e Equivalências de Expressões da Álgebra Relacional AULA 24 Profa. Sandra de Amo GBC053 – BCC
Mestrado em Ciência da Computação 2008
Universidade Federal do Paraná
Mineração de Dados ou Descoberta de conhecimento em BDs
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
Avaliação de Sistemas Operacionais
A FAST APRIORI implementation
Agrupamento de padrões Métodos hierárquicos
Using Concept Hierarchies in Knowledge Discovery
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA2.
DATA MINING Inteligência Artificial
INF 1771 – Inteligência Artificial
II. M o d e l o s d e C o n h e c i m e n t o
Data Mining como ferramenta de Gestão
Alexandre Xavier Falcão & David Menotti
CLUSTERING: UMA REVISÃO AOS ALGORITMOS BÁSICOS
Aprendizagem de Máquina - Agrupamento
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
K-Means / Clustering.
6/7/2014 Mestrado em Ciencia da Computacao Otimização da Técnica Apriori Sandra de Amo Data Mining AULA 4.
Sistema Recomendador para Comércio Eletrônico
Redes Neurais Prof. Alex F. V. Machado.
Tuning Lílian Simão Oliveira.
Aprendizado de Máquina - Introdução
1 Gerenciamento da Informação O que é gerenciamento? O que é gerenciamento? Como uma idéia geral, gerenciamento, gestão ou administração é a atividade.
Experimentação Algorítmica
Sistemas de Recomendação – Filtragem Colaborativa
AULA 20 Profa. Sandra de Amo GBC053 – BCC
Mineração de Dados: Classificação e Predição
Recuperação Inteligente de Informação
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG O Problema Dados –Um banco de transações de compra –Cada transação é um conjunto de ítens comprados Encontrar.
Prof. Anne Magály de Paula Canuto
Problemas NP-completos e Programação Dinâmica
Mineração de Dados: Introdução
Clustering Algorithms for Gene Expression Analysis Pablo Viana Fagner Nascimento.
Sumário 1 SQL Embutida 2 Processamento de Consultas
Universidade Federal do Paraná
HAC 1 MD - junho/2008 Tecnologias de suporte à Mineração de Dados Gerenciamento de dados Data Warehouse OLAP Arquiteturas Visualização Sistemas de Suporte.
Descoberta em múltiplos níveis conceituais
Aprendizado da rede O aprendizado, na maioria das vezes, constitui no ajuste do conjunto de pesos de modo que a rede consiga executar uma tarefa específica.
Busca Competitiva Disciplina: Inteligência Artificial
Inteligência Artificial
Detecção de tráfego Skype na Web através de Redes Neurais Artigo Original: Freire, P. E., Ziviani, A., and Salles, R. M. (2008). Detecting skype flows.
Mineração de Dados Classificação Felipe Carvalho – UFES 2009/2.
TÉCNICAS DE ESTIMATIVAS
Mineração de Dados (Data Mining)
1 Projeto Híbrido de Redes Neurais Ricardo Bastos C. Prudêncio Orientação: Teresa B. Ludermir CIn - UFPE Jan
Camilo Daleles Rennó Estatística: Aplicação ao Sensoriamento Remoto SER ANO 2016 Análise.
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 12 Aprendizado não Supervisionado Mapas auto-organizáveis Max Pereira.
Tópicos Especiais Mineração de Dados
Transcrição da apresentação:

Técnicas de Mineração de Dados Sandra de Amo Faculdade de Computação Universidade Federal de Uberlândia

Técnicas de Mineração Suporte deste curso Curso Completo DM http://www.deamo.prof.ufu.br/CursoDM.html Curso Completo DM Notas deste Mini-curso Slides deste Mini-curso Bibliografia, …. 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 1 Introdução Técnicas de Regras de Associação Técnicas de Análise de Sequência 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 2 Sequências com Restrições Execução de um algoritmo Técnicas de Classificação 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 3 Técnicas de Clustering Técnicas de Otimização e Implementação Aspectos Teóricos e Generalização Aplicações 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 1 Introdução Técnicas de Regras de Associação Técnicas de Análise de Sequência 17/04/2017 JAI - SBC 2004

Mineração de Dados – Por que ? Grandes volumes de dados disponiveis Muitos dados mas pouca informação Decisões são tomadas utilizando intuição. Necessidade de transformar dados em informação util Ferramentas de Mineração podem descobrir padrões interessantes « escondidos » nos dados. 17/04/2017 JAI - SBC 2004

Consulta versus Mineração O que é Mineração de Dados Que produtos são comprados por clientes Classe A ? Cliente Produto Classe Social Tempo 1 Vinho A T1 2 Açúcar B T2 Queijo 3 Pão C T3 Leite T4 4 T5 17/04/2017 JAI - SBC 2004

Consulta e Resultado Select Clientes.Prod From Clientes Where Clientes. Faixa = ‘A’ Resposta : Vinho, Queijo 17/04/2017 JAI - SBC 2004

Consulta versus Mineração Existe ligação entre a classe social e produtos comprados numa mesma transação ? Cliente Produto Classe Social Tempo 1 Vinho A T1 2 Açúcar B T2 Queijo 3 Pão C T3 Leite T4 4 T5 17/04/2017 JAI - SBC 2004

Resultado da Mineração Padrões Classe A -> vinho, queijo Classe C -> pão, leite … 17/04/2017 JAI - SBC 2004

O que é Mineração ? Mineração de Dados Descoberta de Conhecimento (KDD) KDD = Knowledge Discovery in Databases 17/04/2017 JAI - SBC 2004

Etapas do Processo de KDD Limpeza dos Dados Integração dos Dados Seleção Transformação Mineração Avaliação ou Pós-Processamento Visualização dos Resultados 17/04/2017 JAI - SBC 2004

Tarefas de Mineração Tarefa ato de descobrir um certo tipo de padrão Regras de Associação Análise de Sequências Classificação Agrupamento Outliers 17/04/2017 JAI - SBC 2004

Como avaliar padrões ? O que significa um padrão ser interessante ? Facil de ser entendido Inesperado Potencialmente util Confirma uma hipotese feita pelo usuario Tipos de medidas Subjetivas : esperadas, inesperadas Acontece com um certo grau de segurança Objetivas : suporte, confiança 17/04/2017 JAI - SBC 2004

Sistemas de Mineração Intelligent Miner (IBM) DBMiner Enterprise Miner Clementine MineSet Genamics Expressions 17/04/2017 JAI - SBC 2004

Critérios de Avaliação de Sistemas Tipo de dados em que se aplica a mineração Tipo de conhecimento minerado Tipo de técnicas de mineração utilizadas Tipo de aplicação a que se destina 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 1 Introdução Técnicas de Regras de Associação Técnicas de Análise de Sequência 17/04/2017 JAI - SBC 2004

Regras de Associação Itens = {Pão, Leite, Açúcar, ... } Pão, Leite Manteiga Vinho Queijo ITEM, ITEM, ITEM ITEM 17/04/2017 JAI - SBC 2004

Preparação dos Dados ID Compras 1 2 3 4 Pão, , ,Açucar Manteiga, Açúcar Leite Manteiga Leite Manteiga Leite Suporte = 50% Leite, Manteiga Confiança = 66,6% 17/04/2017 JAI - SBC 2004

Medidas de Interesse Suporte de A, B , C D Confiança de A, B , C D número de clientes que compraram A,B,C,D Total de clientes número de clientes que compraram A,B,C,D número de clientes que compraram A,B,C 17/04/2017 JAI - SBC 2004

Tarefa de Mineração Dados : BD de transações, N, M Retorna : regras de associação r Sup(r) ≥ N Conf(r) ≥ M 17/04/2017 JAI - SBC 2004

Algoritmo: duas etapas Encontrar todos os I frequentes suporte(I) ≥ N Itemset = conjunto de itens Conf(A, B C) = suporte(A,B,C) ≥ M suporte(A,B) Itemsets = 17/04/2017 JAI - SBC 2004

Propriedade Importante Algoritmo Apriori Propriedade Importante 1 2 1 2 4 1 2 4 5 5 Se um itemset é frequente Todo subitemset é frequente !! 17/04/2017 JAI - SBC 2004

Apriori – Fase da Geração 1 3 5 1 3 5 2 3 5 2 3 5 2 4 6 3 5 6 F3 1 3 4 1 3 4 2 3 6 2 3 6 3 4 6 1 4 5 2 3 4 2 3 4 2 5 6 C4 1 3 4 5 1 3 4 5 2 3 4 5 2 3 4 5 2 3 5 6 2 3 5 6 2 3 4 6 2 3 4 6 17/04/2017 JAI - SBC 2004

Apriori – Fase da Poda F3 C4 C4 1 3 5 2 3 5 2 3 5 2 4 6 2 4 6 3 5 6 3 17/04/2017 JAI - SBC 2004

Apriori – Fase de Validação Suporte Mínimo: 50% Banco de Dados 1 3 5 7 8 1 7 8 2 3 4 5 7 8 1 9 Candidatos Contagem Suporte 2 3 5 6 2 3 5 6 2 3 4 5 6 2 3 4 6 2 3 4 6 2 3 4 6 2 3 4 6 F4 = 2 3 4 6 17/04/2017 JAI - SBC 2004

Algoritmo Apriori Entrada : BD de transações, N Saida : F1, F2, F3, … C1 = Itemsets de tamanho 1 F1 = Itemsets frequentes de C1 k : = 1 While Fk não for vazio Ck+1 := Junta(Fk, Fk) Ck+1 := Poda(Ck, Fk) Fk+1 : = Valida(BD,Ck+1, N) k : = k+1 17/04/2017 JAI - SBC 2004

Um Exemplo L1 = {1}, {2}, {3},{5} Id Compras 1 1,3,5 2 1,2,3,5,7 3 1,2,4,9 4 1,2,3,5,9 5 1,3,4,5,6,8 6 2,7,8 {1,3} C2 = {1,2} {1,5} {2,3} {3,5} {2,5} L2 = {1,2} {1,3} {1,5} {3,5} C3 = {1,2,3} {1,2,5} {1,3,5} L3 = {1,3,5} Suporte minimo = 50% 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 1 Introdução Técnicas de Regras de Associação Técnicas de Análise de Sequência 17/04/2017 JAI - SBC 2004

ITEMSET >> ITEMSET >> ITEMSET >> ... >>ITEMSET Sequências Itens = { TV, Vídeo , DVD, FitaDVD, ... } {TV ,Vídeo} >> DVD >> FitaDVD ITEMSET >> ITEMSET >> ITEMSET >> ... >>ITEMSET 17/04/2017 JAI - SBC 2004

Preparação dos Dados 1 2 3 4 5 , Rádio} , {Computador} , {Rádio, {Comp} , {Impressora} {TV {DVD} {TV} , {DVD} {TV} DVD} 17/04/2017 JAI - SBC 2004

número de clientes que compraram A,B,C,D em sequência Medidas de Interesse Suporte de < {A} , {B} , {C} , { D} > número de clientes que compraram A,B,C,D em sequência Total de clientes 17/04/2017 JAI - SBC 2004

{Rádio} >>{Comp} Preparação dos Dados 1 , Rádio} >> 2 {Computador} 3 >> {Rádio, 4 {Rádio} >>{Comp} 5 {Comp} >> {Impressora} {TV {DVD} < {TV} , {DVD} > {TV} DVD} Suporte = 40% 17/04/2017 JAI - SBC 2004

Tarefa de Mineração Dados : BD de sequências, N Retorna : Padrões Sequenciais s Sup(s) ≥ N 17/04/2017 JAI - SBC 2004

Propriedade Importante Frequente d c b h g f e l k j i m a d c b a h g f e l k j i d c b h g f e l k j i m Frequentes 17/04/2017 JAI - SBC 2004

Sequências « Ligáveis » b f e d i h g c b f e d i h g c b f e d i h g c b f e d i h g j j Sequência Resultante 17/04/2017 JAI - SBC 2004

GSP – Fase da Geração F3 C4 < {1,2}, {3} > < {1,3}, {5} > < {1,2}, {4} > < {2}, {3,4} > < {1}, {3,4} > < {2}, {3}, {5} > < {1,2}, {3,4} > C4 < {1,2}, {3} {5} > 17/04/2017 JAI - SBC 2004

GSP – Fase da Poda F3 C4 C’4 = < {1,2}, {3} > < {1,3}, {5} > F3 < {1,2}, {4} > < {2}, {3,4} > < {1}, {3,4} > < {2}, {3}, {5} > < {1,2}, {3,4} > < {1,2}, {3,4} > < {1,2}, {3,4} > < {1,2}, {3,4} > < {1,2}, {3,4} > C4 C’4 = < {1,2}, {3,4} > < {1,2}, {3} {5} > < {1,2}, {3} {5} > 17/04/2017 JAI - SBC 2004

GSP – Fase de Validação F4 = < {1,2}, {3,4} > 1 2 3 4 Suporte Mínimo: 50% Banco de Dados 1 2 3 4 Candidatas Contagem Suporte < {3,1,5,2}, {5}, {3,5,4} > < {3,1,5,2}, {5}, {3,5,4} > < {1,2}, {3,4} > < {2}, {3,4} > < {4,5}, {1,3,2}, {3,5,4,7} > < {4,5}, {1,3,2}, {3,5,4,7} > < {3}, {2,5} > F4 = < {1,2}, {3,4} > 17/04/2017 JAI - SBC 2004

Algoritmo GSP [1996] Entrada : BD de sequências, N Saida : F1, F2, F3, … C1 = Padrões Sequenciais de tamanho 1 F1 = Padrões Sequenciais frequentes de C1 k : = 1 While Fk não for vazio Ck+1 := Junta(Fk, Fk) Ck+1 := Poda(Ck, Fk) Fk+1 : = Valida(BD,Ck+1, N) k : = k+1 17/04/2017 JAI - SBC 2004

Outros algoritmos Apriori-All, Apriori-Some [Agrawal – Srikant 1995] SPADE [M. Zaki, 2001] PrefixSpan [Han+, 2001] 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 2 Sequências com Restrições Execução de um algoritmo Técnicas de Classificação 17/04/2017 JAI - SBC 2004

Otimizações : Fase de Validação Restrições Min-Max Taxinomias MAX Min < café, DVD, desinfetante > < alimento, Eletro-dom, limpeza > < açucar, TV, detergente > 17/04/2017 JAI - SBC 2004

Otimização: Fase de Geração Restrições no Formato dos Padrões [Garofalakis/Shim/Rastogi 1999] Padrões satisfazem expressão regular : TV a* DVD {TV} - - - - - {DVD} 17/04/2017 JAI - SBC 2004

Tarefa de Mineração Dados : BD de transações, N, Expressão R Retorna : Sequências s satisfaz R Sup(s) ≥ N 17/04/2017 JAI - SBC 2004

Uma idéia para resolver o problema Na Fase da Geração a partir de Lk e da expressão R gerar sequências de tamanho k+1 Potencialmente frequentes Verificam a expressão regular R 17/04/2017 JAI - SBC 2004

Fase da Poda L4 Frequentes Não é frequente E Não satisfaz R 2 4 5 7 L4 ?? 2 1 5 8 9 3 1 4 5 8 Frequentes Não é frequente OU E Não satisfaz R Satisfazem R 17/04/2017 JAI - SBC 2004

Fase da Poda Quais sequências devem ser podadas ? As que não têm chance de serem frequentes Como saber isto só verificando as sequências obtidas nas iterações precedentes ? 1 2 4 5 7 Satisfaz R E não está em F3 17/04/2017 JAI - SBC 2004

Geração e Poda Iteração k+1 Geração : Junta sequências de Lk Elimina aquelas que não satisfazem R Elimina aquelas que têm subsequência que satisfaz R não é frequente 17/04/2017 JAI - SBC 2004

Problema com esta idéia Dois tipos de poda Eliminando sequências que não satisfazem R Espaço de Busca Eliminando sequências testando suas subsequências Sequências Podadas 17/04/2017 JAI - SBC 2004

Como encontrar um meio-termo ? Considerando um “relaxamento” de R Sequências Válidas Sequências Legais com relação a um estado q Sequências Válidas com relação a um estado q a b c d q 17/04/2017 JAI - SBC 2004

Algoritmo SPIRIT Entrada : BD, N, autômato R Saída : sequências frequentes satisfazendo R Considera “relaxamento” R’ Minera sequências satisfazendo R’ Testa aquelas que satisfazem R 17/04/2017 JAI - SBC 2004

Relaxamentos Sequências Legais com relação a um estado q Sequências Válidas com relação a um estado q a b c d q 17/04/2017 JAI - SBC 2004

Algoritmo SPIRIT - Geração e Poda R’ : relaxamento de R Iteração k+1 Geração : “Junta” sequências de Lk Poda : Elimina aquelas que têm subsequência que satisfaz R’ não é frequente Junção : depende do tipo de relaxamento considerado. 17/04/2017 JAI - SBC 2004

Ex: Fase da Geração em SPIRIT(V) Valida com respeito ao estado Q 1 2 4 5 7 e frequente 1 2 4 5 7 Q Q1 Q1 Q2 Q 3 Q4 Q5 <2,4,5,7> deve ser valida com respeito a Q1 Deve existir « flecha » de Q parq Q1 17/04/2017 JAI - SBC 2004

Exemplo b F2(q0) = <a,c>, <a,e> a F2(q1) = <b,c> c F2(q2) = <d,c>, <d,e> e a F2(q3) = vazio q2 c d q0 : <a,b,c> q0 : <a,d,c>, <a,d,e>, q1 : <b,b,c> Fase da Poda q2 : <d,d,c>, <d,d,e> Nenhuma é podada 17/04/2017 JAI - SBC 2004

As 4 Variantes de SPIRIT SPIRIT(N) : Nenhuma restrição (GSP) SPIRIT(L) : Legais c.r. a algum estado de R SPIRIT(V) : Válidas c.r. a algum estado de R SPIRIT(R) : Satisfazem o autômato R 17/04/2017 JAI - SBC 2004

Resultados Experimentais Logs de páginas Web acessadas por usuários de um DCC URL começando em Home e terminando em PosGradDCC Algoritmo Tempo (seg) Total Cand. Iterações SPITIT(N) 1562,80 5896 13 SPIRIT(L) 32,77 1393 10 SPIRIT(V) 16 59 5 SPIRIT(R) 17,67 52 7 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 2 Sequências com Restrições Técnicas de Classificação Execução de um algoritmo 17/04/2017 JAI - SBC 2004

Classificação Nome Idade Renda Profissão Classe SE. Daniel ≤ 30 Média Estudante Sim João 31..50 Média-Alta Professor Carlos Engenheiro Maria Baixa Vendedora Não Paulo Porteiro Otavio > 60 Aposentado SE. Idade ≤ 30 E Renda é Média ENTÃO Compra-Produto-Eletrônico = SIM. 17/04/2017 JAI - SBC 2004

Etapas do Processo Classificador Amostras Classificadas REGRAS Banco de Testes Classificador REGRAS CONFIÁVEIS 17/04/2017 JAI - SBC 2004

Árvore de Decisão IDADE ≤ 30 31-50 >60 51-60 PROFISSÃO RENDA Não Sim B Med Eng Prof M Vend A M-A Sim Sim Não Sim Sim Não Sim Sim Se Idade ≤ 30 e Renda é Baixa então Não compra Eletrônico Se Idade = 31-50 e Prof é Médico então compra Eletrônico 17/04/2017 JAI - SBC 2004

Como criar uma Árvore de Decisão B C CLASSE a1 b1 c1 X b2 a2 c2 CASO 1 C1 17/04/2017 JAI - SBC 2004

Como criar uma Árvore de Decisão B C CLASSE a1 b1 c1 X b2 a2 Y c2 Atributo-Teste = CASO 2 O que mais reduz a entropia A a1 a2 A B C CLASSE a1 b1 c1 X b2 c2 Y A B C CLASSE a2 b1 c1 Y b2 c2 X A, B, C } LISTA-ATRIBUTOS = { 17/04/2017 JAI - SBC 2004

Como criar uma Árvore de Decisão Atributo-Teste = A B C CLASSE a1 b1 c1 X b2 c2 Y C O que mais reduz a entropia = C c2 c1 A B C CLASSE a1 b2 c2 Y A B C CLASSE a1 b1 c1 X b2 Y X LISTA-ATRIBUTOS = { B, C } 17/04/2017 JAI - SBC 2004

Qual é o Atributo-Teste ? Divide-se o nó segundo cada atributo. Para cada divisão calcula-se a entropia produzida caso fosse escolhido este atributo. Considera-se o atributo cuja divisão resulta numa maior redução da entropia. 17/04/2017 JAI - SBC 2004

Informação ganha na divisão Entrop(A) = -NC1 log2 NC1 - NC2 log2 NC2 Tot Tot Tot Tot Entrop(D) = -(NF1 * Entrop(F1) + NF2 * Entrop(F2)) Tot Tot Info(Divisão) = Entrop(A) – Entrop (D) Maior Info(Divisão)  Atributo escolhido 17/04/2017 JAI - SBC 2004

Um Exemplo Aparência Temperatura Humidade Vento Classe Sol Quente Alta Não Ruim Sim Encoberto Bom Chuvoso Agradavel Frio Normal 17/04/2017 JAI - SBC 2004

1a divisão possível : Aparência Chuva Sol Enc Bom Bom Bom Bom Bom Bom Bom Bom Bom Ruim Bom Ruim Ruim Ruim Entrop(D) = 5/14 * Entrop(F1) + 4/14*Entrop(F2) + 5/14*Entrop(F3) = 0.693 Entrop(F1) = -3/5*log2(3/5) - 2/5*log2 (2/5) = 0.971 Entrop(F2) = - 4/4*log2 (4/4) = 0 Entrop(F3) = - 3/5*log2(3/5) - 2/5*log2(2/5) = 0.971 17/04/2017 JAI - SBC 2004

Redução da Entropia Entrop(A) = - (9/14 * log2 (9/14) + 5/14* log2(5/14)) = = 0.940 INFO(APARÊNCIA) = Entrop(A) – Entrop(D) = = 0.940 - 0.693 = 0.247 17/04/2017 JAI - SBC 2004

Comparando as 4 possibilidades Info(Aparência) = 0.247 Info(Temperatura) = 0.029 Info(Humidade) = 0.152 Info(Vento) = 0.020 17/04/2017 JAI - SBC 2004

Redes Neurais Conjunto de unidades Conceito de Neurônio Artificial I1 2 input output w32 I3 3 Conceito de Neurônio Artificial Camada de Input Camada Intermediaria Camada de Output 17/04/2017 JAI - SBC 2004

Rede Neural e Classificação w0j x0 + θj w1j INPUT Ij na unidade j ∑ x1 tendência w2j x2 Pesos Média ponderada dos outputs recebidos Função de Ativação Outputs da Camada precedente Output Oj 17/04/2017 JAI - SBC 2004

Backpropagation – Fase de IDA δ1 1 ? I1 C1 I2 δ2 0 ? C2 I3 δ3 C3 0 ? Classe C1 17/04/2017 JAI - SBC 2004

Backpropagation – Fase de Volta w12 w12 w12 w12 w22 w22 I2 w22 w22 C2 w32 w32 w32 w32 I3 C3 Ajusta pesos Ajusta pesos 17/04/2017 JAI - SBC 2004

Condições de Parada Epoca = tempo necessário para que todas as amostras sejam analisadas. Processo se repete até que: Os reajustes dos pesos são “muito pequenos”. Só uma “pequena” porcentagem de amostras foram mal classificadas pela rede. Um número “máximo” de épocas foi atingido. 17/04/2017 JAI - SBC 2004

Backpropagation Objetivo: obter uma rede neural treinada Centenas de milhares de épocas são necessárias para a convergência dos pesos. Teoricamente, convergência não é garantida. Na prática, os pesos convergem depois de um grande número de épocas. 17/04/2017 JAI - SBC 2004

Ida : Como são calculados os outputs w1i Oi w2i I2 i w3i I3 Oi = F( w1i*I1 + w2i*I2 + w3i*I3 + θi ) F(x) = 1/(1+e-x) 17/04/2017 JAI - SBC 2004

Volta: Cálculo dos Erros Erro em unidade da última camada i δi Ti (0-1) ? Ei = δi(1- δi)(Ti – δi) Erro em unidade da camada intermediária wi1 1 i wi2 E’i = δi(1- δi)(E1*wi1+E2*wi2+E3wi3) 2 wi3 3 17/04/2017 JAI - SBC 2004

Reajustes dos pesos e tendências Novo peso wij wij i j Novo-wij = Velho-wij + λ EjOi Nova Tendência θj Novo-θj = Velho- θj + λ Ej λ = Taxa de Aprendizado λ(t) = 1/t t = iteração atual Evita que o processo fique parado num “mínimo local” 17/04/2017 JAI - SBC 2004

Exemplo 1 1 w14 Amostra classificada na classe C = 1 w24 4 w46 6 2 w34 w56 5 1 3 w14 W14 W15 W24 W25 W34 W35 W46 W56 θ4 θ5 θ6 0.2 -0.3 0.4 0.1 -0.5 -0.2 -0.4 17/04/2017 JAI - SBC 2004

Exemplo Ida Volta Unidade Input Output 4 0.2 + 0 – 0.5 – 0.4 = - 0.7 -0.3 + 0 + 0.2 + 0.2 = 0.1 1/1+e-0.1 = 0.525 6 (-0.3)(0.332) – (0.2)(0.525) + 0.1 = - 0.105 1/1+e0.105 = 0.474 Unidade Erro 6 (0.474)(1 - 0.474)(1 - 0.474) = 0.1311 5 (0.525)(1 - 0.525)( 0.1311)(-0.2) = -0.0065 4 (0.332)(1 - 0.332)( 0.1311)(-0.3) = -0.0087 17/04/2017 JAI - SBC 2004

Ex: Ajustes dos Pesos e Tendências Antigo Valor Reajustado W46 = -0.3 -0.3 + (0.90)(1.3311)(0.332) = -0.261 w56 = -0.2 -0.2 + (0.90)(1.3311)(0.525) = -1.138 w14 = 0.2 0.2 + (0.90)(-0.0087)(1) = 0.192 w15 = -0.3 -0.3 + (0.90)(-0.0065)(1) = -0.306 w24 = 0.4 0.4 + (0.90)(-0.0087)(0) = 0.4 w25 = 0.1 0.1 + (0.90)(-0.0065)(0) = 0.1 w34 = -0.5 -0.5 + (0.90)(-0.0087)(1) = -0.508 w35 = 0.2 0.2 + (0.90)(-0.0065)(1) = 0.194 θ6 = 0.1 0.1 + (0.90)(1.1311) = 0.218 θ5 = 0.2 0.2 + (0.90)(-0.0065) = 0.194 θ4 = -0.4 -0.4 + (0.90)(-0.0087) = -0.408 17/04/2017 JAI - SBC 2004

Vantagens e Desvantagens Fase de treinamento demorada Muitos parâmetros, determinados empiricamente Fraca interpretabilidade Alta tolerância a ruídos Resultados Confiáveis 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 2 Sequências com Restrições Técnicas de Classificação Execução de um algoritmo 17/04/2017 JAI - SBC 2004

Intelligent Miner – Janela Principal 17/04/2017 JAI - SBC 2004

Mineração 17/04/2017 JAI - SBC 2004

Resultados da Mineração 17/04/2017 JAI - SBC 2004

Estatística 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 3 Técnicas de Clustering Técnicas de Otimização e Implementação Aspectos Teóricos e Generalização Aplicações 17/04/2017 JAI - SBC 2004

Agrupamento -Análise de Clusters Doença X a1 a F 1 b M c d e a1 a2 a3 Doença Y a7 a2 . a9 a10 a8 a5 a4 a6 a11 Doença Z Nome Sexo Sintomas Conceito = Doença Número de Clusters = 3 17/04/2017 JAI - SBC 2004

Clusterização versus Classificação Aprendizado Supervisionado Amostras de treinamento são classificadas Número de Classes é conhecido Aprendizado por Exemplo Clusterização Aprendizado Não Supervisionado Aprendizado por Observação 17/04/2017 JAI - SBC 2004

Dados de Treinamento Matriz de dados padronizados Matriz de dissimilaridade x11 x12 x13 ... x1n x21 x22 x23 x2n x31 x32 x33 x3n xp1 xp2 xp3 xpn ... d(x1,x2) d(x1,x3) d(x2,x 3) d(x1,xp) d(x2,x p) Distância Euclidiana D(x,y) = (x1-y1)2 + (x2-y2)2 + .... + (xp – yp)2 Outras distâncias : Manhattan, Minkowski, Ponderada 17/04/2017 JAI - SBC 2004

Métodos de Clusterização Particionamento (k-means, k-medóides,..) Hierárquicos Aglomerativos (BIRCH, CURE, CHAMELEON, ROCK...) Hierárquicos Divisórios (DIANA) Baseados em Densidade (DBSCAN,OPTICS, DENCLUE) 17/04/2017 JAI - SBC 2004

Particionamento BD com n amostras K = número de clusters desejado ( parâmetro ) K ≤ n 17/04/2017 JAI - SBC 2004

Hierárquicos Aglomerativos BD com n amostras K = número de clusters desejado ( parâmetro ) K ≤ n 17/04/2017 JAI - SBC 2004

K-means + + + 1ª Iteração 2ª Iteração 17/04/2017 JAI - SBC 2004

Clustering Using REpresentatives (CURE) No início, cada amostra é um cluster. número de clusters = número de amostras Calcula-se distância entre os clusters. Clusters próximos são reunidos num único cluster. Repete-se o processo de cálculo da distância entre clusters e reunião de clusters próximos. O processo termina quando se atinge o número pré-fixado de clusters. 17/04/2017 JAI - SBC 2004

Distância entre Clusters CURE 17/04/2017 JAI - SBC 2004

Calculo da Distância entre Clusters CURE + + Parâmetros de Entrada Coeficiente de Retração Numero de elementos escolhidos em cada cluster 17/04/2017 JAI - SBC 2004

Parâmetros de Ajuste Representantes : capturam o formato do cluster Retração em direção do centro de gravidade: Diminuir a influência de ruidos Coeficientes de retração : Valores pequenos : favorecem clusters de formato não convexo, menos compacto Valores grandes : aproximam os representantes do centro do cluster, favorecem clusters convexos, de forma esférica. 17/04/2017 JAI - SBC 2004

Vantagens e Desvantagens CURE detecta clusters de formato arbitrário K-means detecta clusters de formato esférico CURE é robusto quanto a outliers Desvantagem de CURE : complexidade O(n2), n= tamanho do banco de dados 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 3 Técnicas de Clustering Técnicas de Otimização e Implementação Aspectos Teóricos e Generalização Aplicações 17/04/2017 JAI - SBC 2004

Otimização (Apriori-GSP) Gerenciamento de Buffer Otimização 1 : reduzir n° de testes na fase de geração n° de testes na fase de poda n° de testes na fase de validação Otimização 2 : reduzir tamanho do BD Otimização 3 : reduzir n° de varridas no BD Otimização 4 : reduzir n° de candidatos gerados 17/04/2017 JAI - SBC 2004

Gerenciamento de Buffer Se Fk e Ck+1 cabem em memoria principal: geração e poda realizadas em memoria principal Se Fk cabe e Ck+1 não cabe: Gera-se o numero maximo de candidatos que cabem em memoria principal Poda-se estes candidatos Se sobra espaço, gera-se mais, poda-se, … Contagem do suporte Candidatos frequentes são armazenados em disco. 17/04/2017 JAI - SBC 2004

Gerenciamento do Buffer Se Lk e Ck+1 não cabem na memoria principal Ordena-se e estoca-se Lk em disco Carrega-se um bloco de Lk em memoria principal, onde os k-2 primeiros elementos são idênticos. Junta e calcula suporte Frequentes são armazenados em disco 17/04/2017 JAI - SBC 2004

Exemplo Capacidade da Memoria : 3 itemsets de tamanho 3 + 1 pagina para contagem do suporte L3 1 2 3 1 2 4 1 2 5 1 2 6 1 2 7 1 3 4 1 3 5 1 3 6 Primeiro bloco : <1,2,3>, <1,2,4>, <1,2,5> Gerados : <1,2,3,4>, <1,2,3,5>, <1,2,4,5> Suporte é avaliado na pagina extra Segundo bloco : <1,2,3>, <1,2,6>, <1,2,7> 17/04/2017 JAI - SBC 2004

Otimização 1 - Árvore Hash 2 3 Tabelas Hash 1 2 3 1 2 3 1 2 3 1 2 3 Folhas : armazena padrões 17/04/2017 JAI - SBC 2004

Como armazenar padrões na Árvore h(i1) = 2 h(i1) = 1 Pão, Leite Pão, Açucar Pão, Manteiga Leite, Açúcar Leite, Manteiga Açúcar, Manteiga Pão, Leite Pão, Açucar Pão, Manteiga Açúcar, Manteiga Leite, Açúcar Leite, Manteiga h(Pão) = h(Açucar) = 1 N = Número maximo de elementos na folha = 3 h(Manteiga) = h(Leite) = 2 17/04/2017 JAI - SBC 2004

Como armazenar padrões na Árvore h(i1) = 2 h(i1) = 1 h(i2) = 2 h(i2) = 1 Leite, Açúcar Leite, Manteiga Pão, Açúcar Pão, Leite Pão, Manteiga Açúcar, Manteiga 17/04/2017 JAI - SBC 2004

Geração de candidatos x 2 2 2 2 y 1 2 1 2 1 2 < 3, 6, 8 > < 6, 8, 9 > x < 3, 6, 8, 9 > 1 2 2 1 < 3, 6, 8 > < 1, 2, 4 > < 6, 8, 10 > < 2, 4, 6 > x <3, 6, 8, 10 > <1, 2, 4, 6> < 1, 2, 5 > < 2, 4, 7 > < 1, 4, 8 > < 3, 6, 8 > < 1, 2, 4 > < 6, 8, 9 > < 6, 8, 10 > < 2, 4, 6 > 17/04/2017 JAI - SBC 2004

Poda dos Candidatos Candidato: Sub-itemset: h(n) = 1 se n é ímpar { 1, 2, 5, 6 } Candidato: 1 2 { 1, 2, 5 } Sub-itemset: { 1, 2, 6 } { 1, 2, 5 } { 1, 2, 6 } { 1, 2, 6 } { 1, 2, 5 } { 1, 2, 5 } { 1, 2, 6 } 1 2 1 2 h(n) = 1 se n é ímpar 1 2 2 1 h(n) = 2 se n é par { 1, 2, 5 } { 2, 4, 7 } { 1, 2, 5 } { 2, 4, 7 } { 1, 4, 8 } { 3, 6, 8 } { 1, 2, 4 } { 6, 8, 9 } { 6, 8, 10 } { 2, 4, 6 } Folhas : máximo de 3 elementos 17/04/2017 JAI - SBC 2004

Validação dos Candidatos Transação do banco 1 2 { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } { 1, 2, 5, 6 } 1 2 1 2 1 2 2 1 { 1, 5, 9 } - 0 { 2, 5, 6 } - 0 { 2, 5, 6 } - 1 { 2, 5, 6 } - 1 { 1, 2, 5 } - 1 { 2, 4, 7 } - 0 { 1, 2, 5 } - 1 { 2, 4, 7 } - 0 { 1, 2, 5 } - 0 { 2, 4, 7 } - 0 { 1, 4, 8 } - 0 { 3, 6, 8 } - 0 { 1, 2, 6 } - 1 { 1, 4, 8 } - 0 { 3, 6, 8 } - 0 { 1, 2, 6 } - 1 { 1, 4, 8 } - 0 { 3, 6, 8 } - 0 { 1, 2, 6 } - 0 { 6, 8, 9 } - 0 { 6, 8, 10 } - 0 { 2, 4, 6 } - 0 17/04/2017 JAI - SBC 2004

2 – Redução do tamanho do BD Iteração k t : transação do BD não suporta nenhum padrão de tamanho k Iteração k+1 t : não suporta nenhum padrão de tamanho k +1 t pode ser eliminada do BD na iteração k 17/04/2017 JAI - SBC 2004

3 - Redução de « varridas » no BD Método convencional : BD é varrido N vezes N = número de iterações. Método de Particionamento do BD [Savarese+ 1995] BD é varrido 2 vezes 17/04/2017 JAI - SBC 2004

Método do Particionamento Frequente local Método do Particionamento Apriori/GSP em memória principal Encontra padrões frequentes locais Frequente Global Frequente em ao menos um Local Testa os padrões frequentes locais DB 17/04/2017 JAI - SBC 2004

4: Redução de candidatos gerados Restrições de expressão regular (Garofalakis+ 1999) Restrições de gramática livre do contexto (Antunes-Oliveira 2002) < pedido1, pedido2, fatura1, fatura2 > Itemsets: restrição de item (Agrawal-Srikant 1997) (Pão AND Leite) OR (Açúcar AND Café AND ¬ Sal) 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 3 Técnicas de Clustering Técnicas de Otimização e Implementação Aspectos Teóricos e Generalização Aplicações 17/04/2017 JAI - SBC 2004

Técnica Crescimento-Poda-Validação Quadro Geral L = Linguagem de Especificação de Padrões Ex : < a, b, c, d > Q = Condição de Seleção Quais padrões de L são interessantes ? Tarefa de Mineração S = { p Є L | p satisfaz Q } 17/04/2017 JAI - SBC 2004

Como percorrer o espaço de busca ? Do mais geral ao mais específico Relação de especialização entre os padrões O que caracteriza um padrão ser mais geral do que outro ? Ex: < {b}, {e} > é mais geral que < {a,b}, {c,d}, {a,e} > Ordem Parcial em L : p ≤ q se p é mais geral que q Reflexiva : p ≤ p Antissimétrica: Se p ≤ q e q ≤ p então p = q Transitiva : Se p ≤ q e q ≤ r então p ≤ r 17/04/2017 JAI - SBC 2004

Propriedade de Antimonotonia ≤ é antimonotônica com relação à condição Q Se p ≤ q e q satisfaz Q então p satisfaz Q Se um padrão q é interessante então todos os padrões mais gerais p também são interessantes. Exemplo: Q : p satisfaz Q se suporte(p) ≥ α ( 0 ≤ α ≤ 1 dado ) p ≤ q e suporte(q) ≥ α então suporte(p) ≥ α q p 17/04/2017 JAI - SBC 2004

Algoritmo Geral Mais específicos Mais gerais 17/04/2017 JAI - SBC 2004

Algoritmo Level Search C1:= {q Є L | não existe p Є L, p < q } i:= 1 While Ci ≠ vazio Fi = {p Є Ci | p satisfaz Q} Ci+1 := {p Є L | para todo q < p tem-se que q Є Uj ≤ i Fj} – Uj ≤ i Cj i:= i+1 Retorna Uj ≤ i Fj 17/04/2017 JAI - SBC 2004

Exemplo 1: Regras de Associação Linguagem L : alfabeto = conjunto de itens I L = conjunto de itemsets sobre I Relação de Especialização : I, J Є L I ≤ J se I está contido em J C1 = itemsets mais gerais possíveis = itemsets unitários 17/04/2017 JAI - SBC 2004

Exemplo 2: Sequências Linguagem L : alfabeto = conjunto de itens I L = conjunto de sequências de itemsets de I Relação de Especialização : I, J Є L I ≤ J se I está contida em J C1 = sequências mais gerais possíveis = sequências unitárias < {a} > 17/04/2017 JAI - SBC 2004

Novo : Episódios [Mannila+ 1997] Coleção de eventos que ocorrem durante um intervalo de tempo Episódio = grafo Vértices = eventos Arestas especificam a ordem temporal de precedência dos eventos Banco de dados : longa sequência de eventos 17/04/2017 JAI - SBC 2004

Novo : Episódios [Mannila+ 1997] Tarefa de Mineração Dados : uma longa sequência de eventos S, N > 0, 0 ≤ M ≤ 1 Encontrar todos os episodios ocorrendo em S, num intervalo de largura N e com frequência superior a M. 17/04/2017 JAI - SBC 2004

Episódios E D F B B E A A C C E E A A B B D C C E A E A C B 17/04/2017 JAI - SBC 2004

Episódios Linguagem L : alfabeto = conjunto de eventos E L = conjunto dos grafos etiquetados em E Relação de Especialização : G, G’ Є L G ≤ G’ se G é isomorfo a um subgrafo de G’ C1 = Grafos mais gerais possíveis = grafos unitarios 17/04/2017 JAI - SBC 2004

Plano do Curso Aula 3 Técnicas de Clustering Técnicas de Otimização e Implementação Aspectos Teóricos e Generalização Aplicações 17/04/2017 JAI - SBC 2004

Aplicações Marketing Medicina Telecomunicações Agropecuária Meteorologia Web Mining Bioinformática 17/04/2017 JAI - SBC 2004

Mineração na Web (Web Mining) Mineração do Uso da Web Descobrir padrões de comportamento de navegação dos usuários da Internet. melhorar arquitetura dos site distribuição de material publicitário no site Mineração do Conteudo da Web 17/04/2017 JAI - SBC 2004

Mineração do Uso da Web Dados = Arquivo de Logs u1 (s1, d1) t1 IdUser (IP) End. Origem End. Destino Tempo < (s1,d1), (s2,d2), (s3,d3), ... > 17/04/2017 JAI - SBC 2004

Sequência de Páginas Visitadas 1 12 11 B O 2 14 6 13 15 5 C E U V 3 4 7 D G 8 10 9 H W < A B C D C B E G H G W A O U O V > …. A = (null, A) B = (A, B) C = (B, C) 17/04/2017 JAI - SBC 2004

Transformação das Sequências Arquivo de Logs Sequências Maximais Para Frente < A B C D > < A B E G H > < A B E G W > < A O U > < A O V > Arquivo de Logs Sequências Maximais para Frente 17/04/2017 JAI - SBC 2004

Padrões Sequenciais Sequências de referência : <a1, a2, …, an> Sequência de referência suportada por sequência maximal para frente < A B C E F D > 17/04/2017 JAI - SBC 2004

Esquema Geral do Processo Transformação do Bando de Dados de logs num arquivo de sequências maximais para frente. Mineração das sequências de referência frequentes. Seleção das maximais 17/04/2017 JAI - SBC 2004

Algoritmo MF para Transformação Mov String Y SeqMax A 1 12 11 1 AB - B O 2 14 6 13 15 2 ABC - 5 C E U V 3 ABCD - 3 4 7 4 ABC ABCD D G 8 5 AB - 10 9 6 ABE - H W 7 ABEG - ABEGH - 8 9 ABEG ABEGH 17/04/2017 JAI - SBC 2004

Topicos Importantes de Estudo Mineração Interativa Mineração Incremental Linguagens de Mineração Ferramentas de Visualização Gerenciamento de ruidos e dados incompletos Eficiência e Escalabilidade dos algoritmos de mineração. 17/04/2017 JAI - SBC 2004

Exercicio 1 {1,3,5,7,8} {3,4,5,7} {2,3,5,6} {2,4,5,8,9} {2,3,5,11} {1,2,3,7,9} C1 = {1}, {2}, {3}, {4} ,{5}, {6 },{7}, {8}, {9},{11} F1 = {2}, {3}, {5}, {7} C2 = {2 3}, {2 5}, {2 7}, {3 5}, {3 7}, {5 7} F2 = {2,3}, {2 5}, {3 5}, {3 7} C3 = {2,3,5}, {3,5,7} Apos a poda : C3 = {2,3,5} Suporte = 50% F3 = vazio 17/04/2017 JAI - SBC 2004

Exercicio 2 F2(q0) = <0,1> <0,2> F2(q1) = <1,2> 1 F2(q1) = <1,2> q0 q1 q2 2 5 F2(q2) = <5,1> <5,3> 1 3 F2(q3) = <3,5> q3 Fase da Geração Fase da Poda Q0: <0,1,2> Podadas : <1,5,2> Q1: <1,5,2>, <1,5,3> <2,3,5> <1,5,3> <2,3,5> Q2: <5,3,5> Q3: <1,1,2> <3,5,1> <3,5,3> <1,1,2> <2,3,5> 17/04/2017 JAI - SBC 2004

FIM Suporte deste curso Questões ? Curso Completo DM http://www.deamo.prof.ufu.br/CursoDM.html Curso Completo DM Notas deste Mini-curso Slides deste Mini-curso Bibliografia, …. Questões ? 17/04/2017 JAI - SBC 2004