1 - Introdução
Mineração de Dados
Introdução
• Avanços na geração e coleta de dados estão produzindo conjuntos de dados de tamanhos
massivos no comércio e em uma diversidade de disciplinas científicas
– Datawarehouses armazenam detalhes das vendas e operações de négócio
– Satélites orbitando na Terra enviam imagens de alta resolução e dados de sensores para a Terra
– Experimentos com Genomas geram dados
funcionais, estruturais e sequenciais para um número cada vez maior de organismos
Introdução
• O campo da Mineração de Dados saiu dos
limites das técnicas atuais de análises de
dados para lidar com os desafios postos
por estes novos tipos de conjuntos de
dados.
• A Mineração de Dados não substitui
outras áreas da análise de dados, mas as
usa como base para muito do seu trabalho
Introdução
• A Mineração de Dados é o processo de
descoberta automática de informações úteis em grandes depósitos de dados.
• As técnicas de Mineração de Dados são
organizadas para agir sobre grandes bancos de dados com o intuito de descobrir padrões úteis e recentes que poderiam permanecer ignorados. • A Mineração de Dados é uma tecnologia que
combina métodos tradicionais de análise de dados com algoritmos sofisticados para
Introdução
• Pesquisadores em medicina, ciências e engenharia estão acumulando rapidamente dados que são
indispensáveis para novas descobertas importantes. • Entretanto, devido ao tamanho e a natureza
espaço-temporal, métodos tradicionais muitas vezes não são apropriados para analisar estes conjuntos de dados. • Como exemplo, pesquisadores em biologia molecular
esperam usar grandes quantidades de dados do genoma que estão sendo colhidas atualmente para
Introdução
• No passado, métodos tradicionais em biologia molecular permitiam aos cientistas estudar apenas alguns genes de cada vez em um determinado experimento.
• Avanços recentes na tecnologia de micromatrizes (microarray) permitiram aos cientistas comparar o comportamento de milhares de genes sob diversas situações.
• Tais comparações podem auxiliar na determinação da função de cada gene e isolar os genes responsáveis por certas doenças. • Todavia, a natureza turbulenta e de muitas dimensões dos dados
requer novos tipos de análises.
• Além de analisar dados de matrizes de genes, a Mineração de Dados também pode ser usada para abordar outros importantes desafios biológicos, como a previsão da estrutura de proteínas, o alinhamento de sequência múltipla, a modelagem de caminhos bioquímicos e a filogenética.
Introdução
• Nem todas as tarefas de descoberta de
informação são consideradas mineração
de dados
– Procura de registros individuais usando um SGBD
– Busca de determinadas páginas Web através de uma consulta em um mecanismo de busca na internet
• São tarefas que estão relacionadas à
Recuperação de Dados
Introdução
• Embora sejam importantes e possam envolver o uso de algoritmos e estruturas de dados
sofisticadas
• Essas tarefas se baseiam em técnicas
tradicionais da Ciência da Computação e em
recursos óbvios dos dados para criar estruturas de índice para organizar e recuperar de forma eficiente as informações
• A Mineração de Dados tem sido usada para
Mineração de Dados e
Descoberta de Conhecimento
• A MD é uma parte integral da descoberta
de conhecimento em bancos de dados (
KDD – Knowledge Discovery in
Databases)
– Que é o processo geral de conversão de dados brutos em informações úteis
– Este processo consiste de uma série de passos de transformação, do
pré-processamento dos dados até o pós-processamento dos resultados da MD
Mineração de Dados e
Mineração de Dados e
Mineração de Dados e
Descoberta de Conhecimento
• Dados de Entrada
– Podem ser armazenados em uma diversidade de formatos
• Arquivos simples (ou texto) • Planilhas
• Tabelas relacionais (podendo estar ou não dentro de SGBDs)
– Podem estar em um repositório central ou serem distribuídos em múltiplos locais
Mineração de Dados e
Mineração de Dados e
Descoberta de Conhecimento
• Pré-processamento
– Transformar os dados de entrada brutos em um formato apropriado para análises
subsequentes – Passos
• Fusão de dados de múltiplas fontes
• Limpeza dos dados para remoção de ruídos • Observação de duplicatas
• Seleção de registros e características que sejam relevantes à tarefa de MD
Mineração de Dados e
Descoberta de Conhecimento
• Pré-Processamento
– Por causa das muitas formas através das quais os dados podem ser coletados e
armazenados
– Talvez seja o passo mais trabalhoso e
demorado no processo geral de descoberta de conhecimento
– Estudiosos acreditam que até 70% do esforço é gasto com o pré-processamento
Desafios Motivadores
• Técnicas tradicionais de análise de dados frequentemente encontravam dificuldades
práticas para vencer os desafios encontrados pelos novos conjuntos de dados.
• Desafios específicos que motivaram o desenvolvimento da MD
– Escalabilidade
– Alta Dimensionalidade
– Dados Complexos e Heterogêneos – Propriedade e Distribuição de Dados
Escalabilidade
• Devido aos avanços na geração e coleta,
conjuntos de dados com tamanhos em
gigabyte, terabytes e até mesmo
petabytes estão se tornando comuns
• Se algoritmos de MD tiverem que lidar
com estes conjuntos volumosos de dados,
então eles devem ser escaláveis
Escalabilidade
• Estes algoritmos empregam estratégias especiais de busca para lidar com problemas de buscas exponenciais
• A escalabilidade também requer a implementação de novas
estruturas de dados para
acessar registros individuais de forma eficiente
• A escalabilidade também pode ser melhorada através do uso de amostras ou do desenvolvimento de algoritmos paralelos e distribuídos Exponencial 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 1 2 3 4 5 6 7 8 9 10 Contador E x p o n e n c ia l
Alta Dimensionalidade
• Hoje em dia é comum encontrar conjuntos de
dados com centenas ou milhares de atributos ao invés de poucos, muito comum algumas
décadas atrás • Bioinformática
Alta Dimensionalidade
• Técnicas tradicionais de análise de dados que foram desenvolvidas para dados de baixa
dimensionalidade muitas vezes não funcionam bem para tais dados de alta dimensionalidade • Além disso, para alguns algoritmos de análise
de dados, a complexidade computacional aumenta rapidamente à medida em que a
dimensionalidade (o número de características ou de colunas na tabela) aumenta
Dados Complexos
e Heterogêneos
• Os métodos tradicionais de análise de dados
muitas vezes lidam com conjuntos de dados que contêm atributos do mesmo tipo, contínuos ou categorizados
– Inteiro ou ponto flutuante
• Contínuo – 2.34,10.78 ou 100.40 • Categorizados – [0..10]
• Nos últimos anos tem se visto o aparecimento de objetos de dados mais complexos
Dados Complexos
e Heterogêneos
• Exemplos
– Conjuntos de páginas Web contendo texto semi-estruturado e hiperligações
– Dados de DNA ou proteína com estrutura sequencial e tridimensional MSDTVEELVQRAKLAEQAERYDDM AAAMKKVTEQGQELSNEERNLLSVA YKNVVGARRSSWRVISSIEQKTEGS EKKQQLAKEYRVKVEQELNDICQDV LKLLDEFLIVKAGAAESKVFYLKMKG DYYRYLAEVASEDRAAVVEKSQKAY QEALDIAKDKMQPTHPIRLGLALNFS VFYYEILNTPEHACQLAKQAFDDAIA ELDTLNEDSYKDSTLIMQLLRDNLTL
Dados Complexos
e Heterogêneos
• As técnicas desenvolvidas para minerar
tais objetos complexos devem levar em
consideração
– Relacionamento nos dados
• Auto-correlação temporal e espacial • Conectividade gráfica
Propriedade e
Distribuição dos Dados
• Às vezes os dados necessários para uma
análise não estão armazenados em
somente um local
• Eles estão distribuídos geograficamente
entre fontes pertencentes a múltiplas
entidades
– O sequenciamento do genoma humano
– Foi sequenciado em vários laboratórios de todo o mundo, devido à complexidade da tarefa
Propriedade e
Distribuição dos Dados
• Isso requer o desenvolvimento de técnicas distribuídas de MD
• Entre os desafios encontrados pelos algoritmos distribuídos de MD, podemos citar
– Como reduzir a quantidade de comunicação
necessária para realizar a computação distribuída
– Como consolidar eficazmente os resultados da MD a partir de múltiplas fontes
As Origens da MD
• Pesquisadores de diferentes disciplinas
começaram a enfocar o desenvolvimento
de ferramentas mais eficientes e
escaláveis que pudessem lidar com
diversos tipos de dados
As Origens da MD
• A área de MD contempla idéias
– Amostragem, estimativa e teste de hipóteses a partir de estatísticas
– Algoritmos de busca, técnicas de modelagem e teorias de aprendizagem da Inteligência Artificial, Reconhecimento de Padrões e Aprendizado de Máquina
• Ela também adota idéias de outras áreas
– Otimização, Computação Evolutiva, Teoria da
Informação, Processamento de Sinais, Visualização e Recuperação de Informações
As Origens da MD
• Outras áreas também desempenham
papéis chave
– Sistemas de bancos de dados
• Oferecem suporte ao armazenamento, indexação e processamento de consultas
– Técnicas de computação de alto desempenho (paralela) e distribuídas
Tarefas da MD
• As tarefas da MD são geralmente
divididas em duas categorias principais
– Tarefas de Previsão – Tarefas Descritivas
Tarefas de Previsão
• O objetivo é prever o valor de um
determinado atributo baseado nos valores
de outros atributos
• O atributo a ser previsto é conhecido
como variável dependente ou alvo
• Os atributos usados para fazer a previsão
são conhecidos como as variáveis
Tarefas Descritivas
• O objetivo é derivar padrões
– Correlações – Tendências – Grupos
– Trajetórias – Anomalias
• Que resumam os relacionamentos subjacentes nos dados
• As tarefas descritivas da MD são muitas vezes exploratórias em sua natureza e frequentemente requerem técnicas de pós-processamento para validar e explicar os resultados
Modelagem de Previsão
• Tarefa de construir um modelo para a variável alvo como uma função das variáveis explicativas • Há dois tipos de tarefas
– Classificação: é usada para variáveis alvo discretas – Regressão: é usada para variáveis alvo contínuas
• O objetivo de ambas as tarefas é aprender um modelo que minimize o erro entre os valores previsto e real da variável alvo
Modelagem de Previsão
• Classificação
– Prever se um usuário Web fará uma compra em uma livraria online. Valor alvo: SIM ou NÃO (binário)
• Regressão
– Prever o preço futuro de uma ação na bolsa de valores. Valor alvo (preço): contínuo
Modelagem de Previsão
• Ela pode ser usada para identificar
– Clientes que responderão a uma campanha de vendas
– Prever perturbações no ecossistema da Terra – Julgar se um paciente possui uma
determinada doença baseado nos resultados de exames médicos
Análise de Associação
• É usada para descobrir padrões que
descrevam características altamente
associadas dentro dos dados
• Os padrões descobertos são normalmente
representados na forma de regras de
implicação ou subconjuntos de
características
Análise de Associação
• Devido ao tamanho exponencial do espaço de busca, o objetivo da AA é extrair padrões mais interessantes de uma forma eficiente
• Aplicações úteis de AA incluem
– Descoberta de genes que possuam funcionalidade associada
– Identificação de páginas Web que sejam acessadas juntas
– Compreensão dos relacionamentos entre diferentes elementos climáticos do sistema climático da Terra
Diagnóstico de doenças
Câncer no Sistema Nervoso Central
Análise da Cesta de Compras
• A AA pode ser aplicada para encontrar itens que sejam frequentemente comprados juntos pelos clientes
• Por exemplo, podemos descobrir a regra
{Fraldas}->{Leite}, que sugere que os clientes que compram fraldas tendem a comprar leite • Este tipo de regra pode ser usada para
identificar potenciais oportunidades de venda cruzada entre itens relacionados
Análise de Grupo
• Procura encontrar grupos de observações
intimamente relacionadas de modo que as
observações que pertençam ao mesmo
grupo sejam mais semelhantes entre si do
que com as que pertençam a outros
Análise de Grupo
• O agrupamento tem sido usado para
– Juntar conjuntos de clientes relacionados
– Descobrir áreas do oceano que possuam um impacto significativo sobre o clima na Terra – Compactar dados
Agrupamento de Documentos
• Cada artigo é representado na forma de
um conjunto de pares palavra-frequência
(p, f), onde p é uma palavra e f o número
de vezes que ela aparece no artigo
Notícias sobre Economia
Agrupamento de Documentos
• Um bom algoritmo de agrupamento deve
ser capaz de identificar estes dois grupos
baseado na semelhança entre palavras
que aparecem nos artigos
Detecção de Anomalias
• Tarefa de identificar observações cujas
características sejam significativamente
diferente do resto dos dados
• Tais observações são conhecidas como
anomalias ou fatores estranhos.
• O objetivo de um algoritmo de detecção
de anomalias é descobrir as anomalias
verdadeiras e evitar rotular erroneamente
objetos normais como anômalos
Detecção de Anomalias
• Em outras palavras, um bom detector de
anomalias deve ter alta taxa de detecção
e uma baixa taxa de alarme falso
• As aplicações de detecção de anomalias
incluem
– Detecção de fraudes – Intromissões na rede
– Padrões incomuns de doenças – Perturbações no meio ambiente
Detecção de Fraudes em
Cartões de Crédito
• Uma empresa de cartão de crédito registra as transações efetuadas por cada um dos donos de cartões de crédito junto com informações pessoais
• Já que o número de casos fraudulentos é
relativamente pequeno comparado ao número de transações legítimas, técnicas de detecção de anomalias podem ser aplicadas para criar um perfil de transações legítimas para os