Introdução ao Data Mining
Instituto Nacional de Estatística 20-24 de Abril de 2009
André Falcão (afalcao@di.fc.ul.pt) Graça Gaspar (gg@di.fc.ul.pt)
Módulo 1
Data Warehousing e Data Mining
-Sumário
• Data-mining e sistemas de apoio à decisão
– Integração de sistemas de Informação – Data-warehousing
• especificidades face aos sistemas de bases de dados normais
– Interrogações analíticas
• Conceitos de data-mining
– Perspectiva histórica – Conceitos – Objectivos – Tarefas – Problemas – Plataformas(c) DI/FCUL 3
Data mining FAQ
• O que é data mining?
– “A extração não trivial de informação implícita, previamente desconhecida e potencialmente útil” (Frawley and Piatetsky-Shapiro 1992)
– “A ciencia de extrair informação útil de grandes bancos de daos”
• O que podemos conseguir com data mining?
– Os métodos de Data mining procuram detectar padrões e extrair modelos dos dados. Qualquer padrão ou modelo é uma simplificação da realidade e assim tem um erro associado. Assim, para a grande maioria dos casos não há sucesso absoluto
• Será que posso usr data mining para resolver os meus problemas?
– Depende! Existem dados suficientes para serem analisados? São os dados de qualidade?Existe um problema válido para investigar? (não trivial nem impossível)Uma resposta negativa a qualquer destas questões pode impedir o uso destas técnicas, caso contrário o uso de data mining pode ser a solução!
(c) DI/FCUL 4
Enquadramento histórico
• Data mining ao longo do tempo...
– De 1920-1980 – Estatística
– 80s-90s com a vulgarização dos computadores e a
promessa da Inteligência Artificial - Machine learning
– 2000s – Com a proliferação de grandes centros de
dados - Data mining
– Os mesmos conceitos, terminologia ocasionalmente
diferente!
(c) DI/FCUL 5
Data warehousing e Data mining
• Data Warehousing:
Consolidação de dados de
muitas fontes num único
repositório.
– Carregamento, sincronização periódica de réplicas. – Integração Semântica.• Modelo analítico:
Interrogações complexas,
baseadas em operações
típicas de folhas de cálculo
com vistas multidimensionais
sobre os dados.
• Data Mining:
Análise
exploratória; “pescar”
tendências interessantes e
anomalias.
Data Warehouses
• Dados integrados, referentes a longos períodos, muitas
vezes aumentados com informação de sumarização.
• Frequentemente com vários terabytes.
• Tempos de resposta interactivos para interrogações
muito complexas; actualizações ad-hoc muito pouco
comuns.
(c) DI/FCUL 7
DW e OLAP
Data warehouses
• possibilitam análise de dados actuais e históricos com o objectivo de encontrar padrões que suportem a estratégia seguida.
• Análise complexa, interactiva, exploratória de grandes conjuntos de dados obtidos por integração das várias fontes da organização (por vezes externas).
OLAP
(On-Line Analytic Processing):
– Dados são fundamentalmente estáticos. – Interrogações Longas só de leitura.
– Define-se por contraposição a OLTP (On-Line Transaction Processing)
(c) DI/FCUL 8
OLAP vs OLTP
Cada interrogação pode envolver muitos recursos
O maior problema é geralmente o uso concorrente
Actualizações pouco frequentes Actualizações frequentes
Interrogações usam enormes quantidades de informação Interrogações agem sobre pequenas
quantidades de dados de cada vez
Exemplos:
•Total de vendas para cada departamento por mês
•Identificar quais os CDs mais vendidos •Quais as acções com menos de 10 formandos?
Exemplos:
•Update do saldo
•Inscrição numa acção de formação •Acrescentar CD ao carrinho de compras
Transações longas, interrogações complexas
Muitas e pequenas Transações (interrogações e updates)
OLAP – On-Line Analytical processing
OLTP - On line transaction processing
(c) DI/FCUL 9
Esquema de DW
• Sistemas típicos OLTP têm esquemas descentralizados
• A marca típica de um DW é o Esquema em Estrela (Star Schema)
– As dimensões aparecem à volta das tabelas de factos centrais
Não misturar OLAP com OLTP (I)
• Diferentes requisitos de desempenho
– Processamento de transações (OLTP)
• Tempo de resposta importante
• Os dados devem estar sempre actuais e serem consistentes
– Análise de dados (OLAP)
• Interrogações consumem muitos recursos (CPU, memória e largura de banda)
• Operam geralmente numa imagem estática dos dados
– Interrogações OLAP podem dificultar e atrasar
interrogações OLTP. Exemplo:
• Pedido com a soma das vendas pode fazer um ‘lock’ à tabela de vendas => Novas transações ficam bloqueadas!
(c) DI/FCUL 11
Não misturar OLAP com OLTP (II)
• Diferentes requisitos na modelação dos dados
– Para processamento de transações (OLTP)
• Esquema normalizado para consistência • Modelos de dados complexos; muitas tabelas
• Número limitado de interrogações habituais e updates
– Análise de dados (OLAP)
• A simplicidade dos dados é fundamental
– Permite a utilizadores não técnicos fazer interrogações à vontade
• Esquemas desnormalizados são comuns
– Poucas junções: Melhoria no desempenho das interrogações – Poucas tabelas: O esquema relacional é mais fácil de ser
compreendido
(c) DI/FCUL 12
Não misturar OLAP com OLTP (III)
• Análise requer dados de muitas fontes
– Um sistema OLTP está orientado para poucos
processos
• E.g., actualização de contas num banco
– Um sistema OLAP integra informação de muitos
processos:
• Combinar vendas, compras e inventário
• Analisar volumes de negócio de várias sucursais
– É frequente o aparecimento do histórico em OLAP
• Identificação de padrões a longo prazo • Mudanças de padrões com o tempo
– Terminologia e os esquemas variam entre fontes de
dados
• Integração de dados de várias fontes é um desafio importante e parte constituinte de qualquer sistema de DW
(c) DI/FCUL 13
Modelo de dados multidimensional
– Produto
(chave: pid),
– Localização
(locid),
– Tempo
(timeid).
Modelação dimensional
• Os eixos do cubo
correspondem aos atributos
dos dados
– Discretos ou categóricos – Dimensões
• Células contêm medidas
agregadas
– E.g., total de vendas, número de unidades
– Factos
• É frequente aparecerem muito
mais que 3 dimensões
Abr Mai JunLis Por Coi Café Chá Cacau Vendas
(c) DI/FCUL 15
Interrogações OLAP
• Uma operação comum é
agregar
uma medida
segundo uma ou mais dimensões.
– Obter o total das vendas.
– Obter totais de vendas para cada cidade e cada
região.
– Obter os 5 principais produtos em volume de
vendas.
• Pivoting:
Agregação selectiva
em múltiplas dimensões.
– Pivoting em Localização e Tempo
resulta em:
Total63 81 144 38 107 145 75 35 110 Nte Sul Total 1995
1996 1997
176 223 339
(c) DI/FCUL 16
Interrogações OLAP (II)
• Roll-up:
Agregação em níveis diferentes de
uma dimensão da hierarquia
– Dado o total das vendas por cidade, obter por
Roll-up as vendas por região.
• Drill-down:
a inversa de roll-up.
– Dado o total de vendas por região, drill-down para
obter o total de vendas por cidade.
– Por drill-down noutra dimensão, obter o total das
vendas por produto para cada estado.
• Slicing and Dicing
: operações que designam
restrições por igualdade e intervalo numa ou
mais dimensões.
(c) DI/FCUL 17
Exemplo OLAP (I)
• Pivotagem de género/rendimento
• Drill-down com a raça
(dados AdultUCI)
Exemplo OLAP (II)
(c) DI/FCUL 19
Data Mining
• Data mining – descoberta de informação e padrões em
dados (Knowledge Discovery from Data – KDD)
– Métodos Analíticos
– Métodos Inferênciais (preditivos)
• Processo de Descoberta de Conhecimento
– Selecção – obtenção de dados de várias fontes – Pré-processamento e limpeza
– Transformação para um formato comum – Data mining • Ajustamento de Modelos • Interpretação e avaliação ETL Selection and browsing Data Mining OLTP Systems Data warehouse (c) DI/FCUL 20
Data Mining
• Termo genérico que se aplica a vários tipos de análise exploratória.
– Regras de Associação, Árvores de decisão, Classificação, Agrupamento, Redes de Bayes para inferência de causalidade, Visualização.
• Relacionado com aprendizagem e estatística, mas com o ênfase nas metodologias de análise e algoritmos para processamento de grandes conjuntos de dados.
• Problema “clássico”: Market Basket Analysis:
– Que factores condicionam o aparecimento de outros, descobertos por análise de quantidades colossais de dados. E.g. {fraldas} => {cerveja}
(c) DI/FCUL 21
Objectivos
• Objectivos no uso de data mining
– Detecção de dependências
• Saber que atributos dependem de outros
– Modelação de comportamentos ou eventos
– Análise de séries temporais e previsão
– Classificação
– Detecção de outliers (registos atípicos)
– Inferência de valores em falta
Tarefas básicas
• Interpretação e análise
– OLAP
– Estatísticas e métodos gráficos (visualização)
• Classificação – mapeia os dados em grupos ou classes
pre-definidas
– Classificação supervisionada – Reconhecimento de padrões – Predição
• Regressão – usada para mapear uma determinada
instância num valor real
• Clustering – agrupa dados semelhantes em grupos
– Método não supervisionado – Segmentação
(c) DI/FCUL 23
Técnicas comuns
• Árvores de decisão
• Regras de associação
• Clustering
• Instance based learning
• Redes neuronais
• Máquinas de vectores de suporte
(c) DI/FCUL 24
Plataformas
• Plataformas de DW tem módulos de data mining:
E.g.
– Microsoft SQL Server
– Oracle,
– IBM,
– SAP-(Business Objects)
• Plataformas estatísticas – A referência que
garante o maior nível de controle, confiança e
precisão dos resultados. E.g.
– SAS
– SPSS
(c) DI/FCUL 25
Problemas em data mining (I)
– Problemas nos dados
• Outliers (Ruído, Más medições) • Dados irrelevantes
• Dados alterados • Dados que faltam
• Dados não estruturados (multimedia, texto,...)
– Problemas nos modelos
• Selecção de modelos é um procedimento complexo • Sobre-ajustamento (overfitting) – há modelos que se
adaptam bem a a uma população mas não são extrapoláveis a outras
• Bases de dados muito grandes (certos algoritmos não escalam bem)
Problemas em data mining (II)
– Visualizações não apropriadas
• Gráficos incompletos ou inapropriados • Problemas de escala
– Interpretações abusivas
• Correlação NÃO É Causalidade!
• Decobertas de padrões inexistentes. E.g. Em 10 000 testes para adivinhar 5 cartas (3 diferentes), 25 pessoas acertaram em todas. Logo 0.25% da população tem Percepção Extra Sensorial
– Desempenho
• Certos algoritmos simples não são execuíveis por haver muitos dados (muitas linhas e/ou muitas variáveis) • Outros algoritmos de complexidade > O(n2) colapsam
mesmo com pouca informação
– A paralelização de processamento não é opção para muitos algoritmos
(c) DI/FCUL 27