descoberta de conhecimento em bancos de dados e mineração de dados
DESCRIPTION
Slides do seminário sobre KDD e Data Mining, para a cadeira de Inteligência Artificial, da UFPB.TRANSCRIPT
Data Mining
Ângelo Vidal de NegreirosEduardo de Lucena Falcão
Eduardo Farias Silva
Introdução Visão Geral
KDD, Data Mining, Data Warehouses Histórico
Etapa para extrações das Informações Tarefas Técnicas Ferramentas Conclusão
Sumário
Custo de armazenamento Poder de armazenamento Bancos de dados
Grande quantidade de dados brutos (>>Terabytes) Relações e associações entre dados
Informações relevantes através de reconhecimento de padrões
“Somente persistir os dados já não é mais suficiente para encontrar oportunidades de negócio. Atualmente, é cada vez mais necessário que se tire um proveito maior dos dados” [Viana 2004].
Introdução
Visão Geral
KDD - Knowledge Discovery in Database processo não trivial de identificar em grandes conjuntos de
dados padrões que sejam válidos, novos, úteis e compreensíveis, buscando melhorar o entendimento de um problema ou um procedimento de tomada de decisão [Fayyad et al. 1996].
Data Mining Mineração de Dados (ou Data Mining) é o passo dentro do KDD
que consiste de um conjunto de técnicas que permitem extrair informações úteis para um determinado domínio a partir de grandes bases de dados [Fayyad et al. 1996].
Visão Geral
Data Warehouses sistema de computação utilizado para
armazenar informações relativas às atividades de uma organização em bancos de dados, de forma consolidada
Mineração de Dados – uma das formas de se extrair informação
Qualidade da análise é dependente da qualidade dos dados
Visão Geral
Histórico
Visão Geral
Integrado Não volátil Variante no tempo Granularidade Etc.
Características de um DW
Planejamento Levantamento de necessidades Modelagem Dimensional Projeto Físico dos BDs Projeto de ETC (*) Desenvolvimento de aplicações Validação e Teste Treinamento Implantação
Projeto de um DW
Etapa para extrações das informações
(KDD)
Limpeza dos dados: Dados incompletos ou
inconsistentes Dados completos e consistentes
Corrigir ou atenuar tais problemas.
Integração dos dados: Unificação de todas as
fontes de dados em uma única e consolidada fonte.
Etapa para extrações das informações
Seleção dos dados: selecionar os dados que
tem relevância para o negócio
Transformação dos dados: os dados são
transformados para facilitar a mineração
Etapa para extrações das informações
Etapas 1 – 4: Limpeza + integração + seleção +
transformação Data WareHouse
Os dados estão a ponto de bala Pronto para serem minerados
Etapa para extrações das informações
Mineração dos dados: são realizadas as tarefas de mineração de acordo com os objetivos definidos pelo usuário
Avaliação dos padrões: avaliação sobre os padrões, identificando aqueles que têm importância para o negócio e expressividade estatística
Apresentação dos conhecimentos: apresentação dos resultados para apresentados para apoiar a análise, tomada de decisão, etc.
Etapa para extrações das informações
Etapa para extrações das informações
Tarefas de Mineração
Tarefas de mineração
Análise de Amostragem Análise Descritiva Análise de Prognóstico
Classificação das Tarefas
Utilização de medidas estatísticas como esperança e desvio padrão
Encontrar dados fora do padrão Aumentam a confiabilidade Identificação de fraude
Análise de Amostragem
Classificação – categorizar dados em classes
Supermercado: frio, laticínios, higiene, etc
Consumidores: região, sexo, etc
Associação – identificar fatos que ocorrem em conjunto.
Principal utilização: área de vendas – rearranjo de prateleiras e venda pacotes conjunto
Análise Descritiva
Descrição textual de um conjunto de características frequentes para um evento
Utilizada para traçar perfis comportamentais: p. ex. fraudes de cartão de crédito
Detecção de Sequências: estabelecimento de relações temporais entre os fatos
Ex. clássico: Notebook + Mouse
Análise Descritiva
Inferir comportamento futuro ou estimar valores desconhecidos
Baseia-se nas informações colhidas na análise descritiva
Padrão de despesas + idade -> salário + nº de filhos
Formação escolar + emprego atual + ramo de atividade -> salário daqui a X anos
Análise de Prognóstico
Técnicas para Mineração
Algoritmo escolher um atributo; estender a árvore adicionando um ramo
para cada valor do atributo; passar os exemplos para as folhas
(tendo em conta o valor do atributo escolhido);
para cada nó folha – se todos os exemplos são da mesma classe, associar esta classe ao nó folha, caso contrário, repetir os passos (a), (b) e (c).
C4.5 (árvore de decisão)
C4.5 (árvore de decisão)
Gera um classificador na forma de árvore de decisão
calcula a probabilidade de que um novo dado pertença a alguma classe previamente determinada
Ingênua: considera que o efeito do valor de um atributo sobre uma determinada classe é independente
Classificação Bayesiana
Apredizado de regras de associação Aproximação “bottom-up” Exige grande capacidade de
processamento Hipertensão na Coréia do Sul: índice
de massa corpórea, proteína urinária, taxa de glicose e colesterol.
Apriori
Redes Neurais
Metáfora do funcionamento docérebro humano
Conjunto de dados iniciais para treinar a rede
Predições sobre novos dados inseridos
Nossa Caixa: transações mais comuns, valores movimentados, endereços mais frequentes e canais utilizados
Ferramentas de Mineração de Dados
Ferramentas e aplicativos Weka, Microsoft Analisis Server, SAS
Enterprise Miner, IBM Intelligent Miner, Oracle Darwin Data Mining Software
Ferramentas de Mineração de Dados
Exemplo Clássico
O weka lê os dados no formato .arff Uma lista de todas as instâncias, onde o valor dos atributos
são separados por vírgula mais um cabeçalho Ex(weather.arff):
@relation weather %Nome do arquivo@attribute outlook {sunny, overcast, rainy}@attribute temperature real %Atributo e tipo@attribute humidity real@attribute windy {TRUE, FALSE}@attribute play {yes, no}@data %Início dos dadossunny,85,85,FALSE,noovercast,83,86,FALSE,yes
Weka
Algoritmo weka.classifier.j48.J48
Weka + Árvores de Decisão
<=75 >75
Algoritmo weka.classifier.j48.J48
Weka + Árvores de Decisão
J48 pruned tree------------------
outlook = sunny| humidity <= 75: yes (2.0)| humidity > 75: no (3.0)outlook = overcast: yes (4.0)outlook = rainy| windy = TRUE: no (2.0)| windy = FALSE: yes (3.0)
Number of Leaves : 5
Size of the tree : 8
Algoritmo para minerar regras de associação.
Weka + Apriori
IF umidade = normal AND vento = não THEN jogar = sim
IF umidade = normal AND jogar = sim THEN vento = não
IF vento = não AND jogar = sim THEN umidade = normal
IF umidade = normal THEN vento = não AND jogar = sim IF vento = não THEN umidade = normal AND jogar = sim
IF jogar = sim THEN vento = não AND umidade = normal
IF ? THEN vento = não AND umidade = normal AND jogar = sim
Weka - Apriori
Best rules found:
1.temperature=cool humidity=normal windy=FALSE ==> play=yes conf:(1) 2. temperature=cool windy=FALSE play=yes
==> humidity=normal conf:(1) 3. outlook=overcast temperature=hot windy=FALSE
==> play=yes conf:(1) 4. temperature=cool windy=FALSE
==> humidity=normal play=yes conf:(1) 5. outlook=rainy temperature=mild windy=FALSE
==> play=yes conf:(1)
Sequência: ABCXYABCZKABDKCABCTUABEWLABCW
O
Passo 1: A primeira etapa é perceber que existe uma seqüência de letras que se repete bastante. Encontramos as seqüência "AB" e "ABC" e observamos que elas ocorrem com freqüência superior à das outras seqüência.
Exemplo prático 1
Sequência: ABCXYABCZKABDKCABCTUABEWLABCWO
Passo 2: Após determinarmos as sequências "ABC" e "AB", verificamos que elas segmentam o padrão original em diversas unidades independentes:
"ABCXY" "ABCZK" "ABDKC" "ABCTU" "ABEWL" "ABCWO"
Exemplo prático 1
Sequência: ABCXYABCZKABDKCABCTUABEWLABCW
O
Passo 3: Fazem-se agora induções, que geram algumas representações genéricas dessas unidades:
"ABC??" "ABD??" "ABE??" e "AB???“, onde '?' representa qualquer letra
Exemplo prático 1
Sequência: ABCXYABCZKABDKCABCTUABEWLABCW
O
Por exemplo, a letra 'A' poderia significar "aquisição de pão“
A letra 'B' poderia, por exemplo, significar "aquisição de leite“
A letra 'C' é um indicador de que o leite que foi adquirido é do tipo desnatado
Exemplo prático 1
Sequência: ABCVYABCVKABDKCABCVUABEWLABCV
O
Que padrão se observa? Na prática que exemplos podemos dar?
Exemplo prático 2
Áreas de Aplicação
Mercado de Negócios Análise de crédito Retenção de clientes Análise de tendências Medicina
Histórico de pacientes Análise de epidemias
Outros
Conclusão
Obrigado
Perguntas?