Técnicas de Mineração de Dados na Agricultura Palestrante: Raquel Stucchi Boschi.
Transcript of Técnicas de Mineração de Dados na Agricultura Palestrante: Raquel Stucchi Boschi.
Técnicas de Mineração de Dados na Agricultura
Palestrante: Raquel Stucchi Boschi
2
O problema da explosão de dados.
Dados, informação e conhecimento.
O que é mineração de dados?
Estatística versus mineração de dados.
O processo de descoberta de conhecimento em banco de dados
(KDD).
Uma visão geral das tarefas de mineração.
Exemplos de aplicação na agricultura.
Índice
3
O Problema da Explosão de Dados
Avanços em diversas áreas tecnológicas Crescimento explosivo na capacidade de GERAR, COLETAR E ARMAZENAR dados.
Tipos de Dados:Científicos: satélites, sondas, pesquisas...
Sociais: censo, estudos de comportamento....
Comerciais e econômicos: transações bancárias, acesso a servidores...
Registro Simples!
4
Somos ricos em dados e pobres em informação e conhecimento.
O Problema da Explosão de Dados
MOTIVAÇÃO PARA MINERAÇÃO DE DADOS
Dados
Informação
Conhecimento
Operações
lógicas
Interpretações Uso inteligente da informação; é a
informação contextualizada e utilizada na prática.
Dado processado, com significado e contexto bem definido.
Algo bruto; é a matéria-prima da qual podemos extrair informação.
Dado, Informação e Conhecimento
Região NE = R$300
Faturamento de vendas
Dados
Região SE= R$1.000
Informação
Estabelecimento Parâmetro de comparação
Meta= R$300 Meta= R$2.000
Conhecimento
Ações a implementar, as decisões a tomar.
Operações
lógicas
Interpretações
7
O que é mineração de dados?
DadosConhecimento
Analista
Tarefas de Mineração de Dados
Processo de identificação de padrões válidos, novos, potencialmente úteis e compreensíveis embutidos em grandes volumes de dados, por meio da aplicação de algoritmos específicos (FAYYAD et al., 1996).
Padrões podem ser: expressões descrevendo parte dos dados; modelos aplicáveis aos dados.
O que é mineração de dados?
9
• Processamento de consultas (“query processing”);
• Sistemas Especialistas;
• Pequenos programas para análise estatística.
O que não é mineração de dados?
10
Estatística x Mineração
Estatística Mineração de Dados
Número de pontos analisado é pequeno
Número de pontos analisado é muito grande
É baseada em hipótese (rejeita ou aceita)
Atividade exploratória
Uma amostra dos dados é suficiente
Quanto maior a quantidade de dados, melhor.
Qual o maior conjunto de dados que você já analisou?
Fonte: http://www.kdnuggets.com/
Ferramentas mais utilizadas para Mineração de Dados
% usuários 2010
% usuários 2011Fonte: http://www.kdnuggets.com/
13
Exemplo 1DADOS Registros de venda de automóveis das concessionárias de uma
determinada marca em todo o país.
CONHECIMENTO DESCOBERTOSE (tipo = pick–up) E (sexo = M) E (idade < 28)
ENTÃO (acessórios = completo) (85%)
DECISÃO Lançar um novo modelo de pick-up com jogo completo de
acessórios e cores atrativas a jovens do sexo masculino.
14
Exemplo 2DADOSCadastro de 500 mil clientes de uma loja de roupas.
?
Campanha de Marketing
CONHECIMENTO DESCOBERTO7% dos clientes são casados;Faixa etária de 31 a 40 anos; e Pelo menos 2 filhos.
Importante: inicialmente não foi elaborada uma consulta para identificar clientes com esses perfis.
Mineração é uma atividade EXPLORATÓRIA !
Principais Fases do Processo de KDD
Dados
Selecionar um conjunto de dados para mineração
Principais Fases do Processo de KDD
Dados
Identificação/Eliminação de ruídos e dados faltantes
Pode consumir 60% ou mais do tempo no processo de KDD
Principais Fases do Processo de KDD
Dados
Identificar atributos relevantes, reduzir variáveis, normalizar valores de atributos, etc.
Principais Fases do Processo de KDD
Dados
Seleção da tarefa adequada e extração de padrões
Principais Fases do Processo de KDD
Visualização, transformação, filtro de padrões redundantes, etc.
20
NOVOS: os padrões descobertos devem possuir um certo grau de novidade.
ÚTEIS: os padrões descobertos devem ter potencial de conduzir a ações com utilidade.
COMPREENSÍVEIS: linguagem compreendida pelos usuários análise mais profunda.
Característica de padrões interessantes
Padrões interessantes representam
CONHECIMENTO
21
• Um padrão é interessante quando atende, de forma global, às qualidades desejadas:– Validade;– Novidade;– Utilidade;– Simplicidade.
• Padrões são dependentes do domínio de aplicação e do usuário!!
• Um padrão também é interessante quando valida uma hipótese que o usuário pretendia confirmar.
Característica de padrões interessantes
Tarefas na Mineração de Dados
Mineração de Dados
Tarefas Preditivas Tarefas Descritivas
Envolvem aprendizado com um conjunto de dados para posterior predição do atributo definido como meta.
Consistem na identificação de padrões inerentes a determinado banco de dados.
Mineração de Dados
Tarefas Preditivas
Classificação
Tarefas Descritivas
Associação Clusterização
Tarefas na Mineração de Dados
Clusterização
• Técnica inicial de exploração;
• Identificar um conjunto finito de clusters (agrupamentos);
• Os conjunto devem ser:– Mais homogêneo possível dentro de si;– Mais heterogêneo possível em relação a outro conjunto.
• Não é necessário identificar os agrupamentos desejados ou os atributos a serem utilizados
“Processo para organizar objetos em grupos nos quais seus membros sejam de alguma
forma similares”.
Clusterização
26
• Reconhecimento de padrões;
• Análise de dados climáticos;
• Agrupamento de pacientes com mesmos sintomas;
• Marketing e business: segmentação de mercado;
• Web: classificação de documentos;
• Uso da terra;
• Seguro.
Aplicações Gerais
27
Métodos baseados em particionamento
Muitos padrões nos dados Difíceis InterpretaçãoA “Clusterização” reduz a complexidade dentro de cada “Cluster”.
Registros Semelhantes
Algoritmo K-Means
Banco de dados DK cluster
k-means: algoritmoInput: k, D
Output: K centróides e os objetos de cada cluster
Escolha Inicial de “Centros de Cluster”
PASSO 1 Seleção “arbitrária” de “K” pontos para serem os “Centros de Cluster”
Associação de cada Registro aos “Centros de Cluster”
Atenção a esse Registro!
PASSO 2 Associar cada registro ao “Centro de Cluster” mais próximo.
Novos “Centros de Cluster” após 1a. Iteração
PASSO 3Calcular os novos “Centros de Cluster”
Média das coordenadas de todos os pontos associados a cada “Centro de Cluster”
Associações de Registros aos Novos “Centros de Cluster”
PASSO 4
Associar cada registro aos novos “Centros de Cluster”
PROCESSO ITERATIVOPassos 2, 3 e 4 são repetidos até que não ocorra mais mudanças no
conjunto de registros que compõem cada “Cluster”
k-means: algoritmo
Dist. intracluster Dist.
intercluster
OBSERVAÇÕES:
Normalização dos dados;
Necessidade de especificar k, a priori;
Experimentar vários k e avaliar o conjunto de “Clusters” obtido exceto no caso em que se tem alguma razão a priori para definição do k.
Melhor conjunto de “Clusters” padrão inesperado ações que possam vir a ser um diferencial competitivo.
k-means: algoritmo
Classificação
• Predição de um valor categórico (atributo meta).
• Tentativa de definição de modelos, regras.
conjunto de exemplos pré-classificados corretamente;
posterior classificação de exemplos novos e desconhecidos;
•Árvore de decisão técnica mais utilizada!
36
Dado um conjunto de registros (dataset):
Cada registro contém um conjunto de atributos, em que um dos
atributos é chamado classe.
O conjunto de dados é dividido em 2 subconjuntos:
conjunto de treinamento para construir o modelo;
conjunto de teste para validar o modelo;
– Divisão do dataset: conjunto de treinamento (2/3) e conjunto de
teste (1/3)
Classificação
Classificação – Conjunto de Exemplos
Atributos Preditivos Atributo MetaDataset
Conjunto de Treinamento
(2/3)
Conjunto de Teste
(1/3)
Conjunto de Treinamento
Conjunto de Teste
Indução
Criação do Modelo
Aplicação do Modelo
algoritmo usado
Modelo
Dedução
Classificação
Passo 1: encontrar um modelo para o atributo classe como uma função dos valores dos outros atributos.
Passo 2: registros não conhecidos devem ser associados à classe com a maior precisão possível.
Exemplo - Árvore de Decisão
Figura 3 - Exemplo de uma árvore de decisão (MONARD e BARANAUUSKAS, 2005).
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
nó raiz
nó folha
nó folha
Aplicando o modelo ao conjunto teste
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
Conjunto de TesteInício da raiz da
árvore
Aplicando o modelo ao conjunto teste
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
Conjunto de TesteInício da raiz da
árvore
Aparência Umidade Ventando Viajar?chuva 95 não ?
Aplicando o modelo ao conjunto teste
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
Conjunto de TesteInício da raiz da
árvore
Aparência Umidade Ventando Viajar?chuva 95 não ?
Aplicando o modelo ao conjunto teste
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
Conjunto de TesteInício da raiz da
árvore
Aparência Umidade Ventando Viajar?chuva 95 não ?
Aplicando o modelo ao conjunto teste
Aparência
ventandoumidade
vá
vá
váNão_vá Não_vá
sol
nublado
chuva
≤78 ≥78 sim não
Conjunto de TesteInício da raiz da
árvore
Aparência Umidade Ventando Viajar?chuva 95 não ?
Regras de Classificação
SE Aparência = sol E umidade ≤78 ENTÃO Classe = vá
Cada regra representa um nó folha
Antecedente Consequente
46
• Diagnóstico médico;
• Classificar transações de cartão de crédito como legítima ou fraudulenta;
• Avaliar riscos de empréstimos;
• Classificação de solos;
• Previsão de tempo, etc.
Classificação: Aplicações
47
• Aprendizado supervisionado (classificação)
– Conjunto de treinamento com atributo meta com classe pré-definida;
– Novas ocorrências são classificadas com base no conjunto de treinamento.
• Aprendizado não supervisionado (clusterização)
– Não existe classe pré-definida para nenhum dos atributos;
– Um conjunto de observações é dado com o propósito de se estabelecer a existência das classes ou clusters.
Classificação X Clusterização
48
Relevância no Pré-Processamento
Limpeza dos dados: reduzir os ruídos e valores faltantes (missing).
No mundo real, dados são imperfeitos.Derivado do próprio processo que gerou os dados;Derivado do processo de aquisição dos dados;Derivado do processo de transformação;Classes rotuladas incorretamente;Ex: Dados de chuva.
Relevância na análise (feature selection)– Remover atributos irrelevantes ou redundantes ( ex: CEP).
Problemas
• Prevalência de Classe– Problema com desbalanceamento de classes em conjunto de
exemplos
Exemplo: distribuição (C1,C2) = (99,75%;0,25%) Classe Majoritária (ou Prevalente) é C1 Classe Minoritária é C2
Classificador que classifique novos exemplos como C1 teria uma precisão de 99,75%.
E se a Classe C2 fosse, por exemplo, ocorrência de Geada...
Problemas
• Overfitting
Classificador Indução muito específica Superajuste dos dados de treinamento
Ruído nos dados;Excesso de procura.
Bom desempenho no conjunto de treinamento, mas um desempenho ruim em exemplos diferentes.
Problemas
• PodaTécnica para lidar com Overfitting e ruídoPré-PodaPós-Poda
Conjunto de Teste
Conjunto de Treinamento
Profundidade da árvore
Erro
Poda
52
Árvores de decisão: prós e contras
• VantagensCusto computacional é baixo;Muito rápido para classificar amostras desconhecidas;Fácil de interpretar árvores de tamanho pequeno;Precisão é semelhante a de outros métodos de classificação.
• Desvantagens“Overfitting”;O modelo nem sempre produz uma boa estimativa com
relação à execução da árvore para amostras desconhecidas;
Associação
Estuda o relacionamento entre itens de dados que ocorrem com uma certa freqüência;
É uma tarefa descritiva: identifica padrões em dados históricos;
A maioria dos algoritmos para mineração de regras de associação trabalha com banco de dados de transações;
Cada transação é composta por uma identificação e uma lista de itens.
53
Associação - Aplicações
• Associação de produtos em um processo de compra;
• Elaboração de catálogos de produtos;
• Layout de prateleiras (produtos relacionados tendem a ser colocados
perto nas prateleiras);
• Análise de seqüências de DNA;
• Análise de Web log (click stream), etc.
54
55
A maioria dos algoritmos para mineração de regras de associação trabalha com banco de dados de transações.
• Cada transação é composta por uma identificação (TID) e uma lista de itens.
Banco de Dados de Transações
Pão, Leite, Fralda, CervejaT4
Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3
Pão, Fralda, Cerveja, OvosT2
Pão, LeiteT1
Lista de ItensTID
Associação – Conceitos Básicos
56
Considere o banco de dados de transações:
Itens: = {Pão, Leite, Fralda, Cerveja, Ovos, Coca}.Banco de dados: D = {T1, T2, T3, T4, T5}.Exemplo de transação:
T3 = {Leite, Fralda, Cerveja, Coca}.
Associação – Conceitos Básicos
Pão, Leite, Fralda, CervejaT4
Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3Pão, Fralda, Cerveja, OvosT2
Pão, LeiteT1
Lista de ItensTID
57
Considere o banco de dados de transações:
Uma regra de associação é uma implicação da forma (X Y), onde X e Y são conjunto de itens e X Y = Ø.
• R1: {Cerveja} {Fralda}.• R2: {Cerveja, Pão} {Leite}.• R3: {Leite, Pão} {Fralda,Coca}.
Associação – Conceitos Básicos
Pão, Leite, Fralda, CervejaT4
Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3Pão, Fralda, Cerveja, OvosT2
Pão, LeiteT1
Lista de ItensTID
58
Conjuntos Frequentes (Itemsets)
Conjunto frequente (Itemset)Coleção de 1 ou mais itens. Ex: {Leite, Pão, Fralda}k-itemsetUm conjunto contendo k-itens
SuportePercentual das transações que contém um conjunto frequente.Exemplo: sup({Leite, Pão, Fralda}) =
Conjuntos frequentes Conjunto Suporte ≥ minsup (threshold).
Pão, Leite, Fralda, CervejaT4Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3Pão, Fralda, Cerveja, OvosT2Pão, LeiteT1Lista de ItensTID
Banco de Dados de Transações
2/5
59
Regras de AssociaçãoREGRA DE ASSOCIAÇÃO é uma implicação
X Y,onde X e Y são conjuntos de itens ( X Y = )
Métricas para Avaliar as Regras: Suporte (s)
Fração das transações que contém ambos X e Y.
Sup(X Y) = P(X Y) =
Confiança (c)Mede a frequência de itens Y que aparece nas transações que contêm X.
Conf(X Y) =
60
Regras de Associação
Pão, Leite, Fralda, CervejaT4Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3Pão, Fralda, Cerveja, OvosT2Pão, LeiteT1Lista de ItensTID
Banco de Dados de Transações
Exemplo: {Leite, Fralda Cerveja}
Sup = Freq (Leite, Fralda, Cerveja)
T
Conf = Freq (Leite, Fralda, Cerveja)
Freq (Leite, Fralda)
25
23
=
=
61
Etapas:
1. Geração dos Conjuntos Frequentes Gera todos os conjuntos frequentes cujo suporte minsup
2. Geração das Regras de Associação Gera regras de alta confiança a partir dos conjuntos frequentes.
A geração de todos os conjuntos frequentes é uma tarefa computacionalmente cara!
Mineração de Regras de Associação
62
Regras:{Cerveja} {Leite, Fralda} (s=0.4, c=0.67){Fralda} {Leite, Cerveja} (s=0.4, c=0.5) {Leite} {Fralda, Cerveja} (s=0.4, c=0.5){Leite, Fralda} {Cerveja} (s=0.4, c=0.67){Leite, Cerveja} {Fralda} (s=0.4, c=1.0){Fralda, Cerveja} {Leite} (s=0.4, c=0.67)
Observações: Todas as regras acima são originadas do mesmo conjunto frequente:
{Leite, Fralda, Cerveja}
Regras originadas do mesmo conjunto frequente têm o mesmo suporte, mas diferentes valores para confiança.
Exemplo de Regras
Pão, Leite, Fralda, CervejaT4Pão, Leite, Fralda, CocaT5
Leite, Fralda, Cerveja, CocaT3Pão, Fralda, Cerveja, OvosT2Pão, LeiteT1Lista de ItensTID
Banco de Dados de Transações
63
Geração de conjuntos frequentes
null
AB AC AD AE BC BD BE CD CE DE
A B C D E
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE
ABCD ABCE ABDE ACDE BCDE
ABCDE
Dados d itens, existem 2d possíveis conjuntos frequentes.
Ex: reticulado gerado para 5 itens
Encontre todas as regras que tem “Produto W” como consequente.
Exemplos de Aplicação
(Agrawal et al, 1993)
Encontre todas as regras que têm “Produto X” como antecedente
Encontre todas as regras que tem “Produto Y” como antecedente e “Produto Z” como consequente.
? W Alavancar venda de W!
X ?Se parar de vender “X” quais produtos podem ter as vendas reduzidas?
Y ZIdentificar os itens adicionais que podem ser vendidos em conjunto com o “Y” a fim de que aumente a chance de vender o “Z”
Regras com Informações de Alta Qualidade e Passíveis de Ação“Quem Compra Fralda às 5as. e 6as. Feiras, compra Cerveja junto”De posse do conhecimento, é relativamente fácil fazer uma pesquisa de campo e encontrar explicações para o conhecimento gerado
Ações Estratégicas: Design, Ofertas combinadas Localização de Produtos Complementares, etc.
Regras com Informações Triviais“Quem Compra Contratos de Manutenção Caros compra Equipamentos Cruciais para Desempenhar Suas Funções”Conhecimento geralmente conhecido (e óbvio) para quem é familiar com a área de aplicaçãoFrequentemente o conhecimento gerado é consequência de ações anteriores e não necessariamente conhecimento passível de ação
Exemplos de Aplicação
Regras com Resultados INEXPLICÁVEIS“Quando uma nova loja de materiais de construção abriu, produtos mais vendidos foram produtos para banheiro”Conhecimento difícil de ser compreendido e que frequentemente sugere a necessidade de uma investigação mais detalhada em busca de explicações para o fato.
Produtos foram colocados em lugares estratégicos? Havia algum desconto especial para esses produtos?
Exemplos de Aplicação
Quando se utiliza de Técnicas de Associação, na grande maioria das vezes os resultados encontrados são TRIVIAIS
ou INEXPLICÁVEIS !!!
Importante
Inclusão de Itens VirtuaisDias da Semana
Dias úteis X Feriados e Finais de SemanaPeríodo de Férias X Período de Aulas
Promoção X Preço NormalMeses do Ano
Período do Mês: Início, Meados ou Fim
Aplicações na Agricultura
Exemplos
Aplicações na Agricultura
• Definição de zonas homogêneas de chuva para estudo de veranicos e fenômenos extremos;
• Previsão de geadas e deficiência hídrica;
• Alerta de doenças de culturas agrícolas;
• Classificação de imagens de satélite para estimativa de produtividade;
• Previsão de safra;
Aplicações na Agricultura
• Estimativa da mortalidade de frangos com base em dados do ambiente;
• Classificação do solo;
• Modelos de predição da quantidade de água no solo.
Obrigada!