Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Data Mining: Conceitos e Técnicas
2
Algumas técnicas para Data Mining
Geração de regras de associação; Classificação e predição; Agrupamento (clustering).
3
Data Mining: Regras de Associação
4
Regras de associação Mineração de associações ou de regras de associação: Encontrara padrões freqüentes, associações, correlações, ou estruturas causais a partir de conjuntos de itens ou objetos em DB de transações, relacionais, ou em outros repositórios de informações. Aplicações: Análise de cestas de dados (basket data), marketing cruzado, projeto de catálogos, agrupamento, etc.
5
Regras de associação Exemplo: Formato da regra:
“corpo => cabeça [suporte, confiança]”; compra(X, “fraldas”) => compra (X, “cerveja”) [0.5%, 60%]
6
Regras de associação Dados: Encontrar: Uma DB da transações;
Cada transação constituída de uma lista de itens (compras de um cliente); Encontrar: Todas as regras que correlacionam a presença de um conjunto de itens com outro conjunto de itens. Exemplo: 98 % das pessoas que compram pneus e assessórios também compram sua instalação.
7
Regras de associação Aplicações:
* => contratos de manutenção (o que fazer para aumentar as vendas de contratos de manutenção) Eletrônicos => * (que outros produtos devem ser estocados) Indicativos em marketing direto; Detecção de “ping-pong” de pacientes, colisões...
8
Regras de associação Customer buys both Customer buys diaper Encontrar regras X & Y Z com suporte e confiança mínimos Suporte, s, é a probabilidade de uma transação conter {X Y Z} Confiança, c, é a probabilidade condicional da transação tendo {X Y} também conter Z Customer buys beer Para um suporte mínimo de 50%, e confiança mínima de 50%, tem-se: A C (50%, 66.6%) C A (50%, 100%)
9
Regras de associação Associações booleanas x quantitativas: conforme os valores manuseados: compra(X, “SQLServer”) ^ compra(X, “DMBook”) => compra(X, “DBMiner”) [0.2%, 60%] idade(Y, “30..39”) ^ renda(Y, “42..48K”) => compra(Y, “PC”) [1%, 75%] Associações uni e multi dimensionais; Análises uni e multi-níveis: Que marcas de cervejas estão associadas a marcas de fraldas ?
10
Regras de associação Varias extensões: Correlação, análise causal:
Associação não necessariamente implica em correlação ou causalidade; Padrões maximais e conjuntos fechados de itens; Restrições forçadas: E.g., pequenas vendas (valor < 100) disparam grandes vendas (valor > 1000)?
11
Regras de associação Algoritmo utilizado: APRIORI;
Princípio: todo subconjunto de um conjunto freqüente de itens deve ser freqüente; Várias otimizações para melhoria da performance computacional.
12
Regras de associação - exemplo
Database D L1 C1 Scan D C2 C2 L2 Scan D C3 L3 Scan D
13
Regras de associação Regras de associação multi-níveis:
Pressupõe uma hierarquia; Abordagem top-down progressiva; Inicialmente: encontrar as regras “fortes” de alto nível: Leite => pão [20%, 60%] Em seguida, regras “fracas” de mais baixo nível: 2% leite => pão branco [6%, 50%]
14
Sumário Mineração de regras de associação:
Provavelmente a contribuição mais significativa da comunidade de DB à KDD; Inúmeros trabalhos publicados; Muitos pontos importantes explorados; Direções de pesquisa: Análise de associações em outros tipos de dados: espaciais, multimídia, temporais, etc.
15
Aprendizagem supervisionada e não supervisionada
Aprendizagem supervisionada (classificação) Supervisão: O conjunto de treinamento (observações, medições, etc.) é acompanhado dos rótulos indicativos das classes das observações; Novos dados são classificados com base na estrutura gerada a partir do conjunto de treinamento;
16
Aprendizagem supervisionada e não supervisionada
Aprendizagem não supervisionada (agrupamento = clustering) Os rótulos das classes no conjunto de treinamento são desconhecidos; Dado um conjunto de medidas, observações, etc. o objetivo é estabelecer a existência de classes ou grupos nos dados.
17
Data Mining: Classificação e Predição
18
Classificação e Predição
Predição dos nomes (rótulos) das classes; Classifica os dados (constrói um modelo) com base no conjunto de treinamento e nos valores (rótulos) do atributo classificador, de forma a determinar a classe dos novos dados; Predição: Modela funções sobre valores contínuos, i.e., prediz valores desconhecidos ou perdidos; Aplicações típicas: Aprovação de crédito, marketing dirigido, diagnóstico médico ...
19
Classificação: um processo de dois passos
Construção do modelo: Descrição de um conjunto de um conjunto de classes pré-determinadas: Cada tupla (exemplo) é considerada como pertencente a uma classe pré-definida, determinada pelo rótulo de seu atributo-classe; O conjunto de tuplas usado na construção do modelo é o conjunto de treinamento; O modelo pode ser representado por regras de classificação, árvores de decisão ou fórmulas matemáticas;
20
Classificação: um processo de dois passos
Uso do modelo: Para a classificação futura ou de elementos desconhecidos; Correção estimada do modelo: Uso de conjunto de teste; O rótulo conhecido é comparado ao rótulo fornecido pelo modelo; O conjunto de teste deve ser diferente do conjunto de treinamento, de forma a evitar overfitting.
21
Classificação: passo 1 Classification Algorithms Training Data
Classifier (Model) IF rank = ‘professor’ OR years > 6 THEN tenured = ‘yes’
22
Classificação: passo 2 Tenured? Classifier Testing Data Unseen Data
(Jeff, Professor, 4) Tenured?
23
Preparação do dados Limpeza dos dados:
Pré-processamento dos dados para reduzir o ruído e tratar valores desconhecidos; Análise de relevância (seleção de características): Remoção de atributos irrelevantes ou redundantes; Transformação de dados: Generalização e normalização dos dados.
24
Avaliação da classificação
Correção preditiva; Performance e escalabilidade; Construção do modelo e seu uso; Robustez: Manuseio de dados ruidosos e incompletos; Interpretabilidade: Compreensão oferecida pelo modelo; Utilidade das regras: Tamanho, facilidade de leitura, etc.
25
Árvores de decisão
26
Classificação por árvore de decisão
Árvores de decisão: Estrutura do tipo “fluxograma”; Nós internos denotam testes em atributos; Ramos representam saídas dos testes; Nós folha representam rótulos de classe.
27
Classificação por árvore de decisão
Construção da árvore: No início, todos os exemplos de treinamento são associados à raiz; Os exemplos são particionados com base nos atributos selecionados; Poda da árvore: ramos que refletem desvios e/ou ruído são eliminados; Uso da árvore de decisão: Os valores dos atributos do novo exemplo são testados diretamente na árvore atingindo o nó folha da classe correspondente.
28
Exemplo: árvore de decisão
Exemplo:ID3 de Quinlan
29
Exemplo: árvore de decisão
age? <=30 overcast 30..40 >40 student? yes credit rating? no yes excellent fair no yes no yes Buys computer ?
30
Exemplo: árvore de decisão
Ordem dos atributos: ganho de informação (página 70/421 do Mitchell)... Representação por regras IF-THEN: Uma regra para cada caminho da raiz à folha; Cada par (atributo, valor) forma uma conjunção; Cada folha determina a classe prevista; Regras são de mais fácil compreensão aos usuários: IF age = “<=30” AND student = “no” THEN buys_computer = “no” IF age = “>40” AND credit_rating = “excellent” THEN buys_computer = “yes”
31
Classificador Bayesiano
32
Classificador bayesiano
Aprendizagem probabilista: cálculo da probabilidade explícita da hipótese, de ampla aplicação em vários domínios; Incremental: cada exemplo de treinamento pode aumentar / diminuir a probabilidade da hipótese; Conhecimento a priori pode ser combinado com os dados observados; Previsão probabilista: Várias hipótese podem ser previstas, ponderadas por suas probabilidades; Fornece uma referência a ser comparada a outros métodos.
33
Classificador bayesiano
Fundamento: Teorema de Bayes; Dado um conjunto de treinamento D, a probabilidade a posteriori de uma hipótese h, P(h|D) é dada por: A probabilidade máxima a posteriori MAP é: Dificuldade prática: requer conhecimento inicial de muitas probabilidades, custo computacional elevado; Simplificação: independência dos atributos.
34
Exemplo: jogar ou não tênis ?
outlook P(sunny|p) = 2/9 P(sunny|n) = 3/5 P(overcast|p) = 4/9 P(overcast|n) = 0 P(rain|p) = 3/9 P(rain|n) = 2/5 temperature P(hot|p) = 2/9 P(hot|n) = 2/5 P(mild|p) = 4/9 P(mild|n) = 2/5 P(cool|p) = 3/9 P(cool|n) = 1/5 humidity P(high|p) = 3/9 P(high|n) = 4/5 P(normal|p) = 6/9 P(normal|n) = 2/5 windy P(true|p) = 3/9 P(true|n) = 3/5 P(false|p) = 6/9 P(false|n) = 2/5 P(p) = 9/14 P(n) = 5/14
35
Exemplo: jogar ou não tênis ?
Um novo exemplo: X = <rain, hot, high, false> P(X|p)·P(p) = P(rain|p)·P(hot|p)·P(high|p)·P(false|p)·P(p) = 3/9·2/9·3/9·6/9·9/14 = P(X|n)·P(n) = P(rain|n)·P(hot|n)·P(high|n)·P(false|n)·P(n) = 2/5·2/5·4/5·2/5·5/14 = O exemplo X é classificado como da classe n (não jogar).
36
Redes Neurais
37
Redes Neurais Vantagens: Correção de predição em geral elevada;
Robustez, bom funcionamento na presença de ruídos; Saídas discretas, reais, ou mistas; Avaliação rápida da função de aprendizagem. Desvantagens / crítica: Tempo de treinamento lento; Dificuldade no entendimento da função de aprendizagem (pesos); Difícil incorporação de conhecimento de domínio.
38
- f Um neurônio mk å weighted sum Input vector x output y Activation
function weight vector w å w0 w1 wn x0 x1 xn Um vetor n-dimensional x de entrada é mapeado em uma variável y por meio de um produto escalar e de um mapeamento não-linear.
39
Rede perceptron multi-camadas
Output vector Output nodes Hidden nodes wij Input nodes Input vector: xi
40
Rede perceptron multi-camadas
Treinamento: Obtenção dos pesos que tornam a maior parte das tuplas no conjunto de treinamento corretamente classificadas; Passos: Inicialização randômica dos pesos; Alimentação da rede pelas tuplas, uma a uma; Para cada unidade: Computar a entrada da rede à unidade como combinação linear das entradas da unidade; Computar a saída em função dos pesos e da função de ativação; Calcular o erro; Modificar os pesos e recomputar.
41
Aprendizagem baseada em instâncias: K-vizinhos mais próximos
42
K-vizinhos mais próximos
Aprendizagem baseada em instâncias (IBL): Armazenamento dos exemplos de treinamento (avaliação preguiçosa = “lazy evaluation”) até que a nova instância deva ser classificada; K-vizinhos mais próximos: Algoritmo mais utilizado em IBL; As instâncias são associadas a pontos no espaço euclidiano; Métrica de distância para selecionar os vizinhos.
43
K-vizinhos mais próximos (k-NN)
Todas as instâncias correspondem a pontos no espaço n- dimensional; Os vizinhos mais próximos são usualmente definidos em função da distância euclidiana; A função objetivo (classe) pode ser discreta ou real; Para os casos discretos o k-NN retorna a classe mais comum entre as classes dos k vizinhos mais próximos à nova instância;
44
K-vizinhos mais próximos (k-NN)
Diagrama de Voronoi: descreve a superfície de decisão induzida; No exemplo a seguir, um caso típico para 1-NN . _ _ . _ _ + . . + . _ xq + . _ +
45
Predição Similar à classificação no caso em que o atributo “classe” é contínuo; Etapas: Construção do modelo; Uso do modelo para predizer um valor desconhecido: O método mais utilizado é a regressão: Regressão linear e múltipla; Regressão não-linear.
46
Sumário Classificação é provavelmente uma das técnicas mais utilizadas de data mining, com muitas possibilidades de aplicação; É uma problema extensivamente estudado, especialmente com o uso de análise estatística, aprendizagem de máquina e redes neurais; A escalabilidade é muito importante em aplicações de DB: o uso conjunto de de classificação e técnicas de DB é uma área promissora de estudos; Muitas novas áreas podem ser vislubradas: classificação de dados não-relacionais, e.g. textuais, espaciais, multimídia, etc.
47
Data Mining: Agrupamento (clustering)
48
Agrupamento (clustering)
Cluster: uma coleção de objetos de dados; Similares entre si no mesmo cluster; Não similares aos objetos fora do respectivo cluster; Análise de clusters: Agrupamento de dados em clusters; Agrupamento (clustering) é uma classificação não-supervisionada: não há classes pré-definidas. Aplicações típicas: Como ferramenta para análise da distribuição dos dados; Como pré-processamento para outros métodos.
49
Aplicações gerais do agrupamento
Reconhecimento de padrões; Análise de dados espaciais: Criação de mapas temáticos em GIS por agrupamento de espaços de características; Detecção de clusters espaciais e sua explanação em data mining; Processamento de imagens; Pesquisas de mercado; WWW: Classificação de documentos; Agrupamento de dados de weblogs para descobrir padrões similares de acesso;
50
Exemplos de aplicações
Marketing: ajuda na descoberta de grupos distintos de clientes, e uso deste conhecimento para criar campanhas dirigidas; Uso de terras: identificação de áreas de uso similar a partir de uma base de observação via satélite; Seguros: identificação de grupos de assegurados com alto custo de sinistro; Planejamento urbano: identificação de grupos de casa de acordo com seu tipo, valor e localização geográfica; Estudos sobre terremotos: identificação de epicentros e seu agrupamento ao longo de falhas geológicas.
51
O que é um bom clustering ?
Um bom método de agrupamento (clustering) deve produzir clusters de qualidade com: Alta similaridade intra-classe; Baixa similaridade inter-classes. A qualidade do resultado de um processo de clustering depende da medida de similaridade, do método utilizado e de sua implementação; A qualidade um um processo de clustering também deve ser avaliada pela sua habilidade de descobrir alguns ou todos os padrões escondidos (hidden patterns).
52
Requisitos do clustering
Escalabilidade; Habilidade de tratar diferentes tipos de atributos; Descoberta de clusters de formas arbitrárias; Requisitos mínimos de conhecimento de domínio para determinar parâmetros de entrada; Habilidade para tratar ruído e desvios; Insensibilidade à ordem de entrada dos registros; Alta dimensionalidade; Incorporação de restrições específicas dos usuários; Interpretabilidade e utilidade.
53
Estruturas de dados Matriz de dados Matriz de dissimilaridade
(dois modos) Matriz de dissimilaridade (um modo)
54
Medida da qualidade do cluster
Métrica de similaridade / dissimilaridade: expressa em termos de função de distância d(i, j) Existe uma função de “qualidade” que é uma medida da “adequação” de um cluster; Existem definições de funções de distância que são diferentes para variáveis intervalares, booleanas, categóricas e proporções; Pesos devem ser associados às variáveis baseados na aplicação e na semântica dos dados; É difícil definir “suficientemente similar”, pois tipicamente esta avaliação é subjetiva.
55
Tipos de dados em clustering
Variáveis intervalares; Variáveis binárias; Variáveis nominais, ordinais, e proporções; Variáveis de tipo misto.
56
Similaridade entre objetos: distâncias
Distância típica: de Minkowski; Onde i = (xi1, xi2, …, xip) e j = (xj1, xj2, …, xjp) são vetores p-dimensionais e q é um inteiro positivo.
57
Similaridade entre objetos: distâncias
q =1: distância de Manhattan: q =2: distância euclidiana:
58
Principais abordagens para o agrupamento
Algoritmos de partição: construção de diversas partições e sua avaliação por algum critério; Algoritmos hierárquicos: criação de uma decomposição hierárquica do conjunto de dados usando algum critério; Algoritmos fundamentados em densidade: utilização funções de densidade e de conectividade; Algoritmos baseados em grades (grids): utilizam uma estrutura de múltiplos níveis; Algoritmos baseados em modelos: utilizam um modelo subjacente à cada cluster e a idéia é a de se encontrar a melhor assinalação dos objetos aos modelos.
59
O método k-means (k-médias)
Dado k, o algoritmo k-means é implementado em quatro passos: Partição dos objetos em k conjuntos não vazios; Cálculo de pontos “semente” como os centróides (médias) dos clusters das partições correntes; Assinalação de cada objeto ao cluster (centróide) mais próximo de acordo com a função de distância; Retorno ao passo 2 até que não haja mais alterações de assinalação.
60
O método k-means Exemplo
61
O método k-means (k-médias)
Vantagens: Relativamente eficiente O ( t k n) onde n é o número de objetos, t é o número de iterações e k de clusters; Em geral determina o ótimo local: para obtenção do ótimo global usam-se outros métodos de busca, como têmpera simulada ou algoritmos genéticos; Deficiências: Como utilizar em dados categóricos; Necessita que se especifique o número de clusters; Não trata ruídos e desvios; Não descobre clusters de forma não-convexa.
62
O clustering hierárquico
Usa a matriz de distância como critério de agrupamento; não pré-determina o número de clusters, mas necessita critério de parada. Step 0 Step 1 Step 2 Step 3 Step 4 b d c e a a b d e c d e a b c d e aglomerativo divisivo
63
O clustering hierárquico bottom-up
AGNES (Agglomerative Nesting), Kaufmann and Rousseeuw (1990); Agrupa (merge) nós de menor dissimilaridade, de maneira bottom-up.
64
O clustering hierárquico top-down
DIANA (Divisive Analysis), Kaufmann and Rousseeuw (1990); Divide os nós de maior dissimilaridade, de maneira top-down. Ordem inversa do AGNES.
65
O clustering hierárquico
Maior desvantagem dos métodos de clustering aglomerativo: Pouca escalabilidade: complexidade O(n2), onde n é o número de objetos; Não refaz o que foi feito previamente (no nível anterior).
66
Detecção de desvios (outliers)
O que são desvios ? Um conjunto de objetos muito diferente (dissimilar) ao restante dos dados; Problema: Determinar os n maiores desvios; Aplicações: Detecção de fraudes em cartões de crédito; Detecção de fraudes telefônicas; Segmentação de clientes; Análise médica.
67
Método estatístico para a detecção de desvios
Assume a existência de uma distribuição para a geração dos dados (e.g. distribuição normal); Uso de testes de discordância dependendo da: Distribuição de dados; Distribuição de parâmetros (média, variância...); Número esperado de desvios; Problemas: A maior parte dos testes é para um só atributo; Em muitos casos a distribuição é desconhecida.
68
Método para a detecção de desvios baseado em distâncias
Introduzidos para sobrepujar as limitações dos métodos estatísticos: Necessidade de análise multi-dimensional sem conhecer a distribuição dos dados. Detecção de desvios baseada em distâncias: um DB(p,D)-desvio é um objeto O em um conjunto de dados T tal que pelo menos uma fração p dos objetos em T está a uma distância maior que D de O. Vários algoritmos disponíveis.
69
Sumário Análise de agrupamento (clustering) gera grupos de objetos com base em sua similaridade e tem inúmeras aplicações; A medida de similaridade pode ser calculada sobre diferentes tipos de dados; Há vários tipos de algoritmos de clustering: particionamento, hierárquicos, etc. Exemplos: k-means, clustering hierárquico; Detecção de desvios: é muito útil para a detecção de fraudes e pode ser realizada por métodos estatísticos e baseados em distâncias.
70
Avaliação Estudo de caso (equipes até 5);
Relatório escrito de procedimento de data-mining: Descrição do problema alvo; Objetivos da tarefa, caracterização; Indicativos do pré-processamento;
71
Avaliação Criação de base de teste;
Aplicação do algoritmo selecionado na base; Avaliação dos resultados; Conclusões sobre o trabalho.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.