descoberta de conhecimento emrosalvo.oliveira/disciplinas/2013_1/... · 2013. 8. 13. ·...

29

Upload: others

Post on 17-Nov-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos
Page 2: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Descoberta de Conhecimento em Bancos de Dados - KDD

Professor: Rosalvo Ferreira de Oliveira Neto Disciplina: Inteligência Artificial

Page 3: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Tópicos

1. Definições

2. Fases do processo

3. Exemplo do DMC

4. Avaliação de classificadores

Page 4: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Descoberta de Conhecimento em Bancos de Dados - KDD

A descoberta de conhecimento em bancos de dados (Knowledge Discovery in Databases- KDD) é um processo que envolve desde a preparação da base de dados até a apresentação do conhecimento deles extraído pelas técnicas de mineração.

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Page 5: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Descoberta de Conhecimento em Bancos de Dados - KDD

KDD é uma atividade multidisciplinar que se fundamenta em 3 áreas da computação:

•Data WareHouse (DW): oferece os dados com a visão histórica adequada tanto à extração de conhecimento quanto à apresentação de resultados

•Data Mining (DM): agrupa os dados, otimiza classificações, estimativas e previsões faz associações e extrai o conhecimento implícito nos dados (regras do negócio)

•On-Line Analytical Processing (OLAP) / Mining (OLAM): Ambientes de consulta que apresentam os resultados tanto das consultas diretas ao Data WareHouse quanto das respostas da mineração dos dados contidos no Data WareHouse.

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Page 6: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Descoberta de Conhecimento em Bancos de Dados - KDD

A definição do termo Knowledge Discovery in Databases (KDD) foi introduzida por Fayyad et al. como parte de um processo ainda mais amplo de Data Mining.

Knowledge Discovery in Databases (KDD) ou Descoberta do Conhecimento em Bases de Dados é um processo não trivial, iterativo, interativo e com múltiplos estágios que manipula e transforma os dados no intuito de descobrir padrões relevantes. Fayyad et al. identificaram cinco estágios do processo de KDD:

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Page 7: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Tarefas Básicas de Data Mining

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Agrupamento • Identificação de grupos de indivíduos/registros que têm

perfis semelhantes

Regressão • Estimação de valores contínuos na resposta do sistema

Classificação • Decisão do sistema categorizando cada indivíduo/registro

em uma classe pré-definida

Extração de regras de associação e de classificação • Apresentação de relações entre as variáveis de entrada e

entre as variáveis de entrada e as respostas do sistema

Page 8: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Descoberta de Conhecimento em Bancos de Dados - KDD

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Page 9: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Seleção

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Seleção dos dados: também chamado de amostragem dos dados, é o processo que define quais serão os dados a serem minerados no projeto. Os dados podem ser selecionados das mais diversas fontes de dados, tais como: banco de dados relacional, arquivo texto legado, dentre outros.

Page 10: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Pré-processamento

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Pré-processamento dos dados: é nesta fase que os dados são organizados e as inconsistências e integração são tratadas.

Mudança de granularidade, Tratamento de Missing Value e OutLiers

Page 11: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Transformação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Transformação dos dados: que consiste na transformação dos dados brutos em dados transformados para aplicação da técnica inteligente. Esta fase depende do algoritmo a ser aplicado na fase seguinte.

Page 12: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Data Mining

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Data Mining: também conhecido como algoritmo de aprendizagem, esta fase aplica a técnica inteligente para extração do conhecimento. Na fase seguinte, é aplicado o algoritmo minerador, como por exemplo: redes neurais, árvores de decisão, análise de clustering, dentre outros.

Page 13: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Interpretação dos Resultados: Por fim, vem a fase de validação do conhecimento minerado, onde o especialista do domínio de aplicação é fundamental para homologação do conhecimento adquirido, pois nesta fase são validados todos os resultados obtidos no projeto

Page 14: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação de

Classificadores

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Page 15: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Existem poucos estudos analíticos sobre o comportamento de algoritmos de aprendizagem.

A análise de classificadores é fundamentalmente experimental.

Dimensões de análise:

•Taxa de erro

•Complexidade dos modelos

•Tempo de aprendizagem

Avaliação

Page 16: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Dois Problemas distintos:

Dados um algoritmo e um conjunto de dados:

Como estimar a taxa de erro do algoritmo nesse

problema?

Dados dois algoritmos e um conjunto de dados:

A capacidade de generalização dos algoritmos é

igual?

Avaliação

Page 17: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Qual o desempenho do modelo aprendido?

Erro no conjunto de treinamento não é um bom

indicador em relação ao que vai ser observado no

futuro

Solução simples quando os dados são abundantes

dividir os dados em treinamento e teste

Avaliação

Page 18: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Treinamento e teste

Medida natural de desempenho para problemas de classificação: taxa de erro

•Sucesso: a classe da instancia é prevista corretamente

•Erro: classe da instancia é prevista incorretamente

•Taxa de erro: proporção dos erros em relação ao conjunto de exemplos

• Erro de re-substituição: erro calculado a partir do conjunto de treinamento

•Erro de re-substituição é otimista!

Avaliação

Page 19: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Conjunto de Teste: conjunto de exemplos independentes que não tiveram nenhum papel na construção do classificador

Suposição: os conjuntos de treinamento e teste são amostras representativas do problema em questão

Dados de teste e de treinamento podem ser de natureza diferente

Exemplo: classificadores construídos usando-se dados de clientes de duas cidades diferentes A e B

Para estimar o desempenho do classificador da cidade A em uma nova cidade, teste-o com os dados de B

Page 20: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

É importante que os dados de teste não sejam usados de nenhuma maneira para construir o classificador

Alguns algoritmos de aprendizagem operam em dois estágios

Estágio 1: construção da estrutura básica

Estágio 2: otimização do ajuste dos parâmetros

Procedimento correto: usar 3 conjuntos: treinamento, validação e teste

Validação: usado para otimizar os parâmetros

Page 21: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Estimação Holdout

O que fazer se os dados são limitados?

O método holdout reserva uma certa quantidade para teste e o restante para a aprendizagem usualmente, 1/3 para teste e 2/3 para treinamento

Problema: a amostra pode não ser representativa exemplo: uma classe pode estar ausente no conjunto de teste

Solução: amostragem estratificada: as classes são representadas com aproximadamente a mesma proporção tanto no teste como no treinamento

Page 22: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Holdout repetido

Estimação holdout pode ser realizada com mais confiança

repetindo-se o processo com diferentes sub-amostras

• Em cada iteração, uma certa proporção é selecionada

aleatoriamente para treino, com ou sem estratificação

• Uma taxa de erro global é calculada pela média das

taxas de erro nas iterações

Problema: os diferentes conjuntos de teste não são

mutuamente excludentes

Page 23: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Validação cruzada (validação cruzada k-fold)

• Os dados são divididos em k conjuntos de mesmo cardinal

• Cada subconjunto é usado como teste e o restante como treino

Validação cruzada evita conjuntos de teste com interseção

A taxa de erro global é a média das taxas de erro calculadas em cada etapa

Page 24: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Validação cruzada leave-one-out

• É uma forma particular de validação cruzada

• O número de folds é o número de exemplos

• O classificador é construído n vezes

• Não envolve sub-amostras aleatórias

• Computacionalmente custoso

• A estratificação não é possível

Page 25: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Bootstrap

Validação cruzada usa amostragem sem repetição

Bootstrap é um método de estimação que usa amostragem com reposição para formar o conjunto de treinamento

Retira-se uma amostra aleatória de tamanho n de um conjunto de n exemplos com reposição

Essa amostra é usada para o treinamento

os exemplos dos dados originais que não estão no conjunto de treino são usados como teste

É a melhor maneira quando o conjunto de dados é pequeno

Page 26: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Exemplos de medidas de desempenho

• Raiz do erro quadrático médio;

• A matriz “confusão”.

Page 27: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Raiz do erro quadrático médio

n

apap nn

22

11

Page 28: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos

Avaliação

Univasf – Inteligência Artificial – Prof.: Rosalvo Neto

Predicted class

Yes No

Classe Yes True False

Atual positive negative

No False True

positive negative

Matriz “confusão”

Page 29: Descoberta de Conhecimento emrosalvo.oliveira/Disciplinas/2013_1/... · 2013. 8. 13. · Validação cruzada (validação cruzada k-fold) • Os dados são divididos em k conjuntos