Title: O processo de DCBD
1O processo de DCBD
- Prof. Luis Otavio Alvares
- INE/UFSC
- Parte da apresentação é baseada em slides dos
profs. - José Leomar Todesco e Maurício Reis
2O processo de DCBD (KDD)
- Pouco explorado na bibliografia
- Longo
- Trabalhoso
- Muito dependente dos objetivos do usuário e dos
dados disponíveis
3KDD process (FAYYAD, 1996)
4Metodologia CRISP-DM
- CRISP-DM CRoss Industry Standard Process for
Data Mining - (projeto europeu ESPRIT com vários parceiros
industriais) - Geral - não se restringe a ferramenta ou
tecnologia específica - Manual http//www.crisp-dm.org/download.htm
5Fases do CRISP-DM
(Data Mining)
61- Entendimento do Negócio(Identificação dos
objetivos do projeto)
- Determinar os objetivos do projeto de DCBD
- Avaliar a situação disponibilidade de recursos,
limitações, etc. - Determinar os objetivos da DC objetivo, tipo de
tarefa (classificação, clustering,...), critérios
para avaliação do modelo. - Produzir plano do projeto
7Exemplo
- O departamento financeiro de uma grande loja de
vestuário notou que o faturamento sofreu uma
queda significativa nos últimos meses. Isto
ocorreu pela queda das vendas em suas lojas que
estão espalhadas por todo o país. Uma análise
humana simples constatou que a queda das vendas
se deu em quase todas as regiões do país com
predominância nas regiões Sudeste, Nordeste e
Norte. - Algumas soluções propostas pelos diversos
departamentos da empresa foram
8- O setor de marketing poderia desenvolver uma
campanha publicitária - O setor de crédito pessoal proporia aumentar a
oferta do cartão de crédito - O setor de planejamento sugestionaria uma mudança
no formato da rede, tornando suas lojas mais
atrativas com novos layouts - O setor de vendas poderia propor um serviço de
mala direta com o envio de catálogos periódicos.
Todas estas propostas custam muito dinheiro e
possuem a característica de não atacarem o
problema causador da queda das vendas que, por
enquanto, é desconhecido.
DCBD pode ser usada para descobrir mais detalhes
sobre a queda das vendas e possivelmente a sua
causa
9Exemplo
- Objetivo uma empresa de fornecimento de água
(como a CASAN) deseja diminuir seus custos
operacionais - Como diminuindo o gasto com energia elétrica
10Exemplo
- Objetivo uma empresa de fornecimento de água
(como a CASAN) deseja diminuir seus custos
operacionais - Como diminuindo o gasto com energia elétrica
Predição de consumo de água Dados consumo
diário de água aspectos climáticos (temperatura,
umidade do ar, ) dia da semana e do mês,
feriado, férias, ... Objetivo da mineração
prever o consumo de água de forma a minimizar o
bombeamento em horários de energia mais cara
112- Entendimento dos Dados
122- Entendimento dos Dados(coleta e análise dos
dados)
- A partir da coleta inicial, explorar os dados,
verificando suas propriedades e qualidade - Coletar dados iniciais
- Descrever os dados
- Explorar os dados
- analisar a descrição dos dados
- usar técnicas de visualização
- Verificar a qualidade dos dados
13O que são dados?
- Uma coleção de objetos e seus atributos
- Um atributo é uma propriedade ou característica
de um objeto - Exemplos a cor dos olhos de uma pessoa, a sua
temperatura, etc. - Atributos também são conhecidos como variáveis,
campos, características - Uma coleção de atributos descreve um objeto
- Objetos também são conhecidos como registro,
ponto, caso, exemplo, entidade, instância
Atributos
Objetos
14Exemplos de tipos de conjuntos de dados
- Registros
- Dados de transações
- Dados cadastrais
- Dados de documentos
- .
- Grafos
- Estrutura da Web
- Relacionamentos nas redes sociais
- Estruturas moleculares
- .
- Ordenados
- Dados temporais e espaço-temporais
- Dados de seqüências genéticas
- .
15Tipos de atributos
- Qualitativos referem-se a uma qualidade ou
característica e assumem um número finito de
valores. Podem ser - Ordinais apresentam uma ordem entre os valores
possíveis. Ex ruim, regular, bom - Nominais quando não há ordem entre os valores.
Ex masculino, feminino. Ex solteiro, casado,
divorciado, viúvo - Quantitativos assumem valores numéricos e podem
ser - Contínuos os valores possíveis são os números
reais. Ex receita, taxa, salários - Discretos os valores possíveis fazem parte de um
conjunto finito ou infinito numerável. Ex número
de empregados, número de filhos de uma família.
16Descrição dos dados(mais detalhes na próxima
aula)
- Descrever os dados Número de atributos e
instâncias em cada arquivo - Tipos e faixas de valores dos atributos
- Significado de cada atributo e sua importância
para o objetivo - Estatísticas básicas para alguns atributos
(média, DP, máximo, mínimo, percentil,
frequência, moda, etc.) - Relações entre os atributos-chave
17Exploração dos dados visualização
- visualização é a conversão dos dados para um
formato visual ou tabular de forma que
características dos dados e da relação entre
elementos dos dados possam ser percebidas
visualmente - Visualização é uma das mais poderosas técnicas
para a exploração dos dados - humanos têm muita habilidade de analisar grandes
quantidades de informação apresentadas sob forma
visual - podem detectar padrões gerais e tendências
- podem detectar exceções e padrões não usuais
18Exemplo temperatura da superfície dos oceanos em
julho de 1982
- Dezenas de milhares de pontos estão
sumarizados em uma simples figura
19(No Transcript)
20Entendimento dos dados
- Exemplo do Sistema de Internações Hospitalares do
SUS - atributo CPF
- Exemplo do Sistema de Informações de Mortalidade,
do MS - atributo idade
- atributo raça/cor
- atributo ocupação
213- Preparação de Dados
22 Preparação de Dados
- A fase de Preparação de Dados visa a preparação
dos dados disponíveis, que geralmente não estão
dispostos em formato adequado, para a aplicação
dos algoritmos de descoberta, análise e extração
de conhecimento.
23Preparação de Dados
- As grandes bases de dados são altamente
susceptíveis a ruídos, valores faltantes e
inconsistência. - Dados limpos e consistentes são requisitos
básicos para o sucesso da mineração dos dados. - A limpeza dos dados tem por objetivo assegurar a
qualidade dos dados selecionados.
24Preparaçao de Dados
- Quase todos os algoritmos de data mining
trabalham com uma única tabela de dados de
entrada. - Os dados podem estar representados em diferentes
fontes, tais como arquivos-texto, arquivos no
formato de planilhas, bancos de dados ou outro
tipo de fonte, por isso é necessária a
padronização e a integração dos dados.
25Preparação de Dados
- O conhecimento sobre o domínio auxilia em todas
as etapas do processo de KDD, mas é fundamental
na fase de Preparação dos Dados. - Esse conhecimento pode ajudar os analistas na
seleção do melhor conjunto de dados para a
extração de conhecimento, determinando os valores
válidos, os atributos, os critérios de
preferência entre os possíveis atributos, as
restrições de relacionamento ou informações para
a construção de novos atributos.
26Preparação de Dados
- Produção de um conjunto de dados adequado aos
algoritmos de mineração - Seleção de dados
- Limpeza
- Transformação de dados
- Construção de dados
- Integração de dados combinar múltiplas tabelas
ou outras fontes - Formatar dados modificações sintáticas nos
dados, sem alterar o seu significado. Ex - Primeiro atributo tem que ser uma chave única
- O arquivo tem que estar em uma ordem determinada
- Retirar vírgulas dos campos para gerar um arquivo
com atributos separados por vírgulas
27Preparação de dados seleção de dados
- Seleção de atributos
- motivos
- Requisitos de tempo e espaço
- Simplicidade do modelo gerado
- Relevância dos atributos
- Redundância entre atributos
- Acurácia pode ser aumentada
- forma
- Manual
- Por algoritmos mais de 30 algoritmos
28Seleção de atributos
- Manual eliminação direta
- Eliminação dos atributos não relevantes ao
processo de DCBD - Normalmente atributos que identificam o registro
são eliminados, bem como atributos sem variação
no seu valor, atributos não preenchidos, etc. - SELECT Sexo, Data_Nasc, Est_Civil, Num_Dep,
- Renda, Despesa, Tp_Res, Bairro_Res, Result
- FROM CLIENTE
- (excluídos CPF e Nome) Criação de nova tabela
29Preparação de dados seleção de dados
- Seleção de registros (exemplos, instâncias)
- Principais formas
- Segmentação dos dados
- Eliminação direta de casos
- Amostragem aleatória
- Agregação de informações
30Seleção de registros
- Segmentação dos dados
- Por exemplo, seleção dos clientes com residência
própria - SELECT FROM CLIENTE WHERE Tp_Res P
- Criação de nova tabela
31Seleção de registros
- Eliminação direta
- Exemplo excluir clientes que não tem residência
própria - DELETE FROM CLIENTE WHERE Tp_Res ltgt P
- Alteração da tabela
32Seleção de registros
- Amostragem aleatória
- Simples sem reposição
- Pode ser selecionado 1 vez
- Simples com reposição
- Pode ser selecionado 1 vez (reposição após a
exclusão) - Estratificada
- Seleção de amostras por grupos disjuntos bem
identificados (estratificados) - Garante a seleção de registros de grupos com
menor quantidade de elementos - Exemplo seleção de clientes por grupo de faixa
etária
33Seleção de registros
- Agregação
- Agregar dados (p.e. soma de valores num período,
média de valores, etc.) - SELECT Sexo, Est_Civil, MAX(Num_Dep), SUM(Renda),
AVG(Despesas), - Tp_Res, Result
- FROM CLIENTE
- GROUP BY Sexo, Est_Civil, Tp_Res, Result
34Preparação de dados Limpeza
- São operações básicas de remoção de ruídos,
atributos incompletos ou erros, restando a
informação relevante. - Podem existir erros de digitação ou erros nos
sistemas de captura dos dados por sensores, sendo
que a remoção desses erros pode ser realizada
utilizando o conhecimento do domínio.
35Preparação de dados Limpeza
- Limpeza de informações ausentes
- Limpeza de inconsistências
- Limpeza de valores fora do domínio
- Padronização de dados
36Limpeza
- Limpeza de informações ausentes
- Objetivo preenchimentos dos valores ausentes
- Exclusão de casos
- Preenchimento manual de valores
- Preenchimento com valores globais constantes
- Preenchimento com medidas estatísticas
- Preenchimento com métodos de mineração de dados
37Limpeza de informações ausentes
- Exclusão de casos
- Excluir registros com 1 ou mais valores ausentes
- Não é adequado quando há poucos registros
38Limpeza de informações ausentes
- Preenchimento manual de valores
- Pesquisa e depois digitação dos valores
- Demanda muito tempo!!
39Limpeza de informações ausentes
- Preenchimento com valores globais constantes
- Definir valor substituto
- Problema tratamento pelo algoritmo de MD
40Limpeza de informações ausentes
- Preenchimento com medidas estatísticas
- Utilizar uma medida estatística
- Exemplo média considerando os grupos de acordo
com o valor de Result
41Limpeza de informações ausentes
- Preenchimento com métodos de MD
- Modelos preditivos podem sugerir valores mais
prováveis - Redes neurais
- Modelos Bayesianos (estatística)
- Árvores de decisão
- Ao contrário dos outros métodos, utiliza valores
existentes na própria base de dados - Obs. utilização de algoritmos de MD durante o
pré-processamento!
42Limpeza
- Limpeza de inconsistências
- Objetivos correção de inconsistências
- Dentro do mesmo registro
- Entre registros diferentes
- Identificação do problema
- Exemplo cliente com idade lt 21 e crédito
aprovado (regra de negócio) - SELECT FROM CLIENT
- WHERE (Year(SYSDATE) Year(Data_Nasc)) lt 21
- AND Result A
- Exclusão de casos
- Correção dos erros
43Limpeza
- Limpeza de valores fora do domínio
- Objetivos correção de valores fora do domínio
- Conhecimento dos domínios da aplicação
- Identificação do problema
- exemplo valores contínuos - quantidade de
dependentes lt 0 - SELECT FROM CLIENT
- WHERE Num_Dep lt 0
- Exemplo valores discretos - tipo de residência
(P, A, E, F, O) - SELECT FROM CLIENT
- WHERE Tp_Res not in (P, A, E, F, O)
- Exclusão de casos
- Correção dos erros
44Limpeza
- Padronização dos dados
- formato de datas
- abreviaturas
- valores de atributos
- Exemplo o atributo sexo, em fontes diferentes,
pode ter os valores - M ou F, 0 ou 1, Mas ou Fem, ...
45Preparação de dados Transformação de
dados(será detalhado na próxima aula)
- Objetivo obter os dados em uma forma mais
apropriada para os algoritmos de mineração - Alisamento
- Generalização
- Normalização
- Transformação numérico para categórico
- Transformação categórico para numérico
46Preparação de dados Construção de dados
- Criação de novos atributos.
- Ex área comprimento x largura
- Ex criar o atributo idade a partir da data de
nascimento
47(No Transcript)
48mesma
forma
mesma
-
forma
-
sim
não
sim
não
amigo
inimigo
amigo
inimigo
494- Modelagem (Data Mining)
50Modelagem (data mining)
- Corresponde a fase de Mineração de Dados
utilizada por outros autores - Selecionar os algoritmos de data mining a
utilizar - Gerar projeto de teste
- Construir modelo mineração propriamente dita
(aplicação do algoritmo) - Avaliar o modelo ou padrões encontrados
51Modelagem (Data Mining)
- Os algoritmos de mineração normalmente são
executados várias vezes, para ajustar o conjunto
de parâmetros para obtenção de resultados mais
satisfatórios aos objetivos pré-estabelecidos,
por isso é um processo iterativo. - Esses ajustes são necessários muitas vezes para
melhorar a precisão ou facilitar a compreensão do
conhecimento extraído.
525- Avaliação
535- Avaliação
- Interpretar e avaliar os resultados em relação
aos objetivos do usuário - Avaliar resultados
- Revisar o processo
- Determinar próximos passos ir para a fase final
de disponibilização ou voltar para alguma etapa
anterior
546- Disponibilização
556- Disponibilização
- Planejar a disponibilização decidir a estratégia
para a integração dos resultados obtidos no
ambiente da organização - Planejar monitoramento e manutenção
- Produzir relatório final
- Revisar o projeto avaliar pontos positivos e
negativos do projeto, problemas e sugestões
56Descoberta de Conhecimento em Bases de Dados
Fonte Adriaans
57Seminários
- Web Crawler
- Descoberta de conhecimento em Texto
- Data mining na Web 2.0
- Mineração de opinião (sentiment analysis, opinion
mining) - Data mining em séries temporais
- Data mining em grafos
- Data mining em trajetórias de objetos móveis
- Data mining em redes sociais
- Data mining em imagens
- Data mining em dados geográficos
- Data mining em vídeos
- Grupos de 3 ou 4 alunos
- Focar nos aspectos específicos do tipo de dado
utilizado pré-processamento, algoritmos
utilizados, etc. - Deverá ser entregue um relatório de 5 a 10
páginas sobre o assunto, com referências
bibliográficas.
58Grupos
- Web Crawlers Milton, Augusto Costa , Renata e
Eduardo - Descoberta de conhecimento em Texto Tiago,
Mateus, Augusto, Luis Felipe - Data mining na Web 2.0 Lucas Juste, Mauricio
Branco e Alexandre S - Mineração de opinião (sentiment analysis, opinion
mining) Vicente Coral, Bruno Freitas, Tiago
Coelho, Paulo Centeno - Data mining em séries temporais Jean Pacher,
Giovani, Anderson Zapello - Data mining em grafos Diogo, Felipe, Joaquim
- Data mining em trajetórias de objetos móveis
Jean, Cleto, Augusto Martins, Lucas M - Data mining em redes sociais Vanoir, Augusto
Pacheco, Felipe Duarte e Mateus Maso - Data mining em imagens Fabio Ariate, Rayse,
Fernando Almeida e Luis Eduardo - Data mining em dados espaciais Gabriel, Jorge
Junior, Marco Tulio - Data mining em vídeos Vinicius,
-
59Próxima Aula
- Análise Exploratória dos Dados