descoberta de conhecimento em bancos de dados e mineração de dados

Post on 17-Dec-2014

2.028 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

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?

top related