UPE – Caruaru – Sistemas de Informação Disciplina: Inteligência Artificial Prof.: Paulemir G. Campos Mineração de Dados 5/31/2017 IA - Prof. Paulemir Campos 1 Roteiro da Aula Introdução; Pré-Processamento de Dados; Técnicas de Mineração de Dados; Aplicações; Referências. 5/31/2017 IA - Prof. Paulemir Campos 2 Introdução 5/31/2017 IA - Prof. Paulemir Campos 3 Motivação Explosão de Dados 5/31/2017 Ferramentas automáticas de coleta de dados mais maturidade das tecnologias de bancos de dados; Enorme quantidade de dados armazenados em bases de dados e outros meios de armazenamento; Abundância de dados ao lado de escassez de conhecimentos. IA - Prof. Paulemir Campos 4 Motivação Soluções para a Explosão de Dados data warehouse e mineração de dados. Assim, pretende-se descobrir conhecimentos (regras, regularidades, padrões) a partir de enormes bases de dados. 5/31/2017 IA - Prof. Paulemir Campos 5 KDD: Descoberta de Conhecimentos a partir de Banco de dados Avaliação dos Padrões Mineração de Dados Dados Relevantes Data Warehouse Seleção Limpeza de Dados Integração de Dados Bases de dados 5/31/2017 IA - Prof. Paulemir Campos 6 Processo de KDD (Knowledge Discovery in Databases) Estudo do domínio de aplicação Conhecimento a priori relevante; Objetivo da aplicação. Seleção dos dados; Limpeza e pré-processamento dos dados (60% do esforço); Redução e transformação de dados 5/31/2017 Seleção de atributos; Redução de dimensionalidade. IA - Prof. Paulemir Campos 7 Processo de KDD (Knowledge Discovery in Databases) Escolha dos modelos de mineração Classificação, Regressão, Associação, Clustering, etc; Escolhas dos algoritmos de mineração; Mineração de Dados 5/31/2017 Busca de padrões interessantes. IA - Prof. Paulemir Campos 8 Processo de KDD (Knowledge Discovery in Databases) Avaliação dos padrões e apresentação do conhecimento Visualização, transformação, remoção de padrões redundantes. Uso do conhecimento descoberto. 5/31/2017 IA - Prof. Paulemir Campos 9 Pré-Processamento de Dados 5/31/2017 IA - Prof. Paulemir Campos 10 Introdução Os dados no mundo real estão “sujos”: Incompletos Ruidosos erros aleatórios; valores aberrantes (outliers); Inconsistentes 5/31/2017 ausência de atributos de interesse; apenas dados agregados; ausência de valores (missing values). Divergências nas codificações ou nos nomes. IA - Prof. Paulemir Campos 11 Introdução Sem dados de boa qualidade o resultado da mineração é pobre; Assim, é importante efetuar um préprocessamento nos dados, antes de aplicar algum algoritmo de mineração de dados; 5/31/2017 IA - Prof. Paulemir Campos 12 Introdução Os pré-processamentos mais aplicados em bases de dados são: 5/31/2017 Limpeza dos Dados; E, Transformação dos Dados. IA - Prof. Paulemir Campos 13 Limpeza dos Dados Consiste basicamente em 5/31/2017 Preencher dados ausentes; “Alisar” ruído; Identificar e/ou remover valores aberrantes; E, resolver inconsistências. IA - Prof. Paulemir Campos 14 Limpeza dos Dados Valores ausentes podem resultar de: 5/31/2017 defeito do equipamento de coleta dos dados; inconsistência com outros dados gravados e conseqüente supressão; não entrada de dados devido a enganos; determinados dados podem não ser considerados importantes no momento do registro, etc. IA - Prof. Paulemir Campos 15 Limpeza dos Dados Tratamentos usuais para valores ausentes: 5/31/2017 Eliminar o atributo ou mesmo o padrão; Preencher os valores ausentes manualmente; Usar uma constante global para representar os valores ausentes (não recomendado, pois o sistema pode identificar esse valor como um conceito); Usar a média (ou a moda); Usar a média (ou a moda) por classe. IA - Prof. Paulemir Campos 16 Limpeza dos Dados Dados com ruído: Consiste em erros aleatórios ou variabilidade presente nos descritores. O ruído nos dados pode ser tratado pela técnica de alisamento. 5/31/2017 IA - Prof. Paulemir Campos 17 Limpeza dos Dados Alisamento do ruído dos dados: Consiste em distribuir dados ordenados em caixas tendo como referência os seus vizinhos. Exemplo: Ordenação: 1, 1, 2, 3, 3, 3, 4, 5, 5, 7 Particionamento em “caixas”: 1 ,1,2 3 ,3,3 4 ,5 ,5 ,7 caixa1 caixa2 Resultado após alisamento: 1 ,1,1 3 ,3,3 5 ,5 ,5 ,5 caixa 1 caixa 2 5/31/2017 IA - Prof. Paulemir Campos caixa3 caixa 3 18 Limpeza dos Dados Detecção e remoção de valores aberrantes: Cluster 5/31/2017 os valores são organizados em grupos; os valores isolados podem ser considerados aberrantes. E, Inspeção Visual IA - Prof. Paulemir Campos 19 Limpeza dos Dados Detecção e remoção de valores aberrantes (Exemplo: uso de Cluster): 5/31/2017 IA - Prof. Paulemir Campos 20 Limpeza dos Dados Inconsistências: 5/31/2017 Mesmo atributo com diferentes codificações; Mesmo padrão com classes diferentes; Duplicidade de padrões de uma mesma classe. IA - Prof. Paulemir Campos 21 Limpeza dos Dados Nestes casos, as inconsistências podem ser resolvidas por: 5/31/2017 eliminação de padrões redundantes; e, uniformização da codificação de um dado atributo. IA - Prof. Paulemir Campos 22 Transformação dos Dados É necessário para obter os dados numa forma mais apropriada para a mineração de dados. Em geral, transformação de dados envolve: 5/31/2017 Normalização; Redução de Dados. IA - Prof. Paulemir Campos 23 Transformação dos Dados Normalização 5/31/2017 Objetiva minimizar os problemas oriundos do uso de unidades e dispersões distintas entre os atributos. IA - Prof. Paulemir Campos 24 Transformação dos Dados Redução dos Dados 5/31/2017 Almeja obter uma representação reduzida da série de dados que é muito menor no volume, contudo produz os mesmos (ou quase os mesmos) resultados analíticos. IA - Prof. Paulemir Campos 25 Transformação dos Dados Redução dos Dados Alguns estratégias: 5/31/2017 Redução de Dimensionalidade: Empregando técnicas de seleção de atributos; Discretização: Representa valores contínuos em intervalos (de mesma largura ou freqüência). Os rótulos dos intervalos substituem os valores contínuos. IA - Prof. Paulemir Campos 26 Técnicas de Mineração de Dados 5/31/2017 IA - Prof. Paulemir Campos 27 Introdução Basicamente compreende os diversos algoritmos de aprendizado de máquina, tais como: Classificação: 5/31/2017 Regressão Linear; Redes MLP e RBF; Árvores de Decisão ID3 e C4.5; Regras de Classificação. IA - Prof. Paulemir Campos 28 Introdução Basicamente compreende os diversos algoritmos de aprendizado de máquina, tais como (Cont.): Cluster ou Agrupamento: Regras de Associação: K-Means; APRIORI A seguir serão descritos alguns destes. 5/31/2017 IA - Prof. Paulemir Campos 29 Regressão Linear Utiliza uma representação matemática linear para detectar algum padrão presente nos dados observados. Modelo clássico de regressão linear: Y = X. + onde: Y é o vetor n x 1; X é uma matriz n x (p+1) do modelo; é uma matriz (p+1)x1 de parâmetros desconhecidos e é um vetor de erros aleatórios nx1. 5/31/2017 IA - Prof. Paulemir Campos 30 Regressão Linear - Exemplo Salary (in $1,000) 100 80 60 40 20 0 0 5/31/2017 5 10 15 Years experience 20 25 IA - Prof. Paulemir Campos 31 Árvores de Decisão Um método "divide e conquista" para o problema de aprendizado de um conjunto de instâncias independentes, onde a classificação é dada pelo nó folha, partindo-se da raiz da árvore. Principais algoritmos: 5/31/2017 ID3 e C4.5. IA - Prof. Paulemir Campos 32 Árvores de Decisão Algoritmo Básico: 5/31/2017 A árvore é construída recursivamente de cima para baixo no modo dividir para conquistar; No início todos os exemplos se encontram na raiz; Os atributos são discretos (os atributos contínuos são discretizados previamente); Os exemplos são particionados recursivamente com base em atributos selecionados; Os atributos são selecionados heuristicamente ou através de uma critério estatístico (ex., ganho de informação). IA - Prof. Paulemir Campos 33 Árvores de Decisão Condições de parada: 5/31/2017 Todas as amostras de um dado nó pertencem a mesma classe; Não há mais atributo disponível para futuras partições – usa-se voto da maioria para classificar a folha; Não há mais exemplos disponíveis. IA - Prof. Paulemir Campos 34 Árvores de Decisão - Exemplo 5/31/2017 IA - Prof. Paulemir Campos 35 Regras de Classificação É uma alternativa popular para árvores de decisão. Os antecedentes de uma regra equivalem aos nós que vão sendo testados até se atingir o nó folha, que é o conseqüente dessa regra. 5/31/2017 IA - Prof. Paulemir Campos 36 Regras de Classificação Exemplos: 5/31/2017 Se Aumento_de_Salario_1_ano > 2.5 e Estututo_de_Feriados > 10 Então Candidato_a_Promocao = Bom Se Aumento_de_Salario_1_ano =< 2.5 Então Candidato_a_Promocao = Ruim IA - Prof. Paulemir Campos 37 K-Means Dado k, o algoritmo k-means é implementado em 4 passos: 5/31/2017 Partição dos objetos em k grupos não vazios; Defina as sementes como os centróides dos grupos da partição atual; Associe cada objeto ao grupo cuja semente é a mais próxima ao mesmo; Volte para o passo 2 até que não haja novas associações de objetos a algum grupo. IA - Prof. Paulemir Campos 38 K-Means - Exemplo 10 10 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0 0 1 2 3 4 5 6 7 8 9 10 10 10 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 1 2 3 4 5 6 7 8 9 10 0 0 5/31/2017 0 1 2 3 4 5 6 7 8 9 10 0 1 2 IA - Prof. Paulemir Campos 3 4 5 6 7 8 9 10 39 K-Means Pontos Fortes É relativamente eficiente; Geralmente encontra um ótimo local. Pontos Fracos 5/31/2017 Aplicável apenas quando a média é definida; É necessário especificar a priori k, o número de grupos; É sensível a ruídos e valores aberrantes; Não é apropriado para a descoberta de grupos não esféricos. IA - Prof. Paulemir Campos 40 Regras de Associação Diferem das regras de classificação devido a poderem predizer qualquer atributo, não somente a classe. Assim, dão a liberdade de predizer também combinações de atributos. 5/31/2017 IA - Prof. Paulemir Campos 41 Regras de Associação Conceitos Básicos: 5/31/2017 Dados: (1) conjunto de transações, (2) cada transação é uma lista de itens (comprados por um cliente em uma visita); Achar: todas as regras que correlacionam a presença de um conjunto de itens com a presença de outro conjunto de itens em uma mesma transação. IA - Prof. Paulemir Campos 42 Regras de Associação Exemplo: Dado: 98% das pessoas que compram pneus e auto-acessórios, também fazem algum serviço automotivo. Achar: todas as regras X & Y Z com um mínimo de suporte e confiança Suporte (support), s, probabilidade que uma transação contenha {X Y Z}; Confiança (confidence), c, probabilidade condicional que uma transação que contenha {X Y} também contém Z. 5/31/2017 IA - Prof. Paulemir Campos 43 Regras de Associação Assim, a idéia é: 5/31/2017 Achar os conjuntos de itens freqüentes (itemsets freqüentes): o conjunto de itens que tem um mínimo de suporte; Um subconjunto de um itemset freqüente, também deve ser um itemset freqüente; Achar iterativamente itemsets freqüentes com cardinalidade de 1 à k (k-itemset); Usar os itemsets freqüentes para gerar as regras de associação. IA - Prof. Paulemir Campos 44 Regras de Associação O Algoritmo APRIORI: 5/31/2017 Passo de união (join): Ck é gerado, unindo Lk-1 com ele mesmo; Passo de poda (prune): Qualquer (k-1)itemset que não seja freqüente, não pode ser um subconjunto de um k-itemset freqüente. IA - Prof. Paulemir Campos 45 O Algoritmo APRIORI Exemplo Database D TID 100 200 300 400 itemset sup. C1 {1} 2 {2} 3 Scan D {3} 3 {4} 1 {5} 3 Items 134 235 1235 25 C2 itemset sup L2 itemset sup 2 2 3 2 {1 {1 {1 {2 {2 {3 C3 itemset {2 3 5} Scan D {1 3} {2 3} {2 5} {3 5} 5/31/2017 2} 3} 5} 3} 5} 5} 1 2 1 2 3 2 L1 itemset sup. {1} {2} {3} {5} 2 3 3 3 C2 itemset {1 2} Scan D {1 {1 {2 {2 {3 3} 5} 3} 5} 5} L3 itemset sup {2 3 5} 2 IA - Prof. Paulemir Campos 46 Avaliação dos Modelos Os modelos podem ser avaliados usando-se os seguintes critérios para partição dos conjuntos de treinamento e de teste: 5/31/2017 Holdout; Validação Cruzada (k-fold cross-validation); Leave-one-out; e, bootstrap. IA - Prof. Paulemir Campos 47 Aplicações 5/31/2017 IA - Prof. Paulemir Campos 48 Aplicações Potenciais Análise de bases de dados e suporte à decisão Análise de Mercado Análise de Risco 5/31/2017 alvo de campanhas, análise de compras, segmentação do mercado, gerencia de relações com clientes, vendas cruzadas; fidelização de clientes, controle de qualidade, análise de competitividade; Detecção de Fraude IA - Prof. Paulemir Campos 49 Referências Witten, I. H. e Frank, E. Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations. Morgan Kaufmann, 1999. Han, J. e Kamber, M. Data Mining: Concepts and Techniques. Morgan Kaufmann, 2001. 5/31/2017 IA - Prof. Paulemir Campos 50 Referências Notas de aulas dos profs. Francisco A. T. de Carvalho, Paulo Adeodato e Jacques Robin de Mineração de Dados do Cin/UFPE. 5/31/2017 IA - Prof. Paulemir Campos 51