A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo Classificadores Lazy.

Apresentações semelhantes


Apresentação em tema: "Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo Classificadores Lazy."— Transcrição da apresentação:

1 Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo Classificadores Lazy

2 História Método introduzido nos anos 50. Muito dispendioso computacionalmente. Só ganhou popularidade a partir dos anos 60, como o aumento da capacidadecomputacional dos computadores. Muito usado na área de Reconhecimento de Padrões.

3 Descrição do Método KNN Dados: Banco de Dados de m tuplas classificadas (a1,...,an,C) Uma tupla X = (x1,...,xn) não classificada Os valores dos atributos são normalizados. Valor normalizado = (v.real - MinA)/(MaxA – MinA) Calcula-se a distância de X a cada uma das tuplas do banco de dados. Pega-se as k tuplas do banco de dados mais próximas de X. A classe de X é a classe que aparece com mais frequência entre as k tuplas mais próximas de X.

4 Diferentes valores de K K = 1K = 2K = 3

5 Algumas questões Como calcular a distância entre duas tuplas ? Para atributos contínuos : distância Euclidiana d(x,y) = Σ n i=1 (xi – yi) 2 Para atributos categóricos Se xi = yi então xi – yi = 0 Se xi e yi são distintos: xi – yi = 1 Como lidar com valores incompletos (ausentes) ao calcular a distância entre duas tuplas X e Y ? Se xi e yi são ausentes: xi – yi = 1 Se xi é ausente e yi não: xi – yi = max { |1 – yi|, |0 – yi| } Como determinar o melhor valor de K (=número de vizinhos) ? Obtido repetindo-se os experimentos.

6 Vantagens e Desvantagens Performance Não constrói um modelo de classificação. Processo de classificação de uma tupla é lento. Classificadores Eager gastam tempo para construir o modelo. O processo de classificação de uma tupla é rápido. Sensível a ruídos KNN faz predição baseando-se em informações locais à tupla sendo classificada. Arvores de decisão, redes neurais e bayesianas encontram modelo global que se leva em conta todo o banco de dados de treinamento.

7 Exemplo IDIDADERENDAESTUDANTECREDITOCLASSE 1 30AltaNãoBomNão 2 30AltaSimBomNão AltaNãoBomSim 4> 40MédiaNãoBomSim 5> 40BaixaSimBomSim 6> 40BaixaSimExcelenteNão BaixaSimExcelenteSim 8 30MédiaNãoBomNão 9 30BaixaSimBomSim 10> 40MédiaSimBomSim 11 30MédiaSimExcelenteSim MédiaNãoExcelenteSim AltaSimBomSim 14> 40MédiaNãoExcelenteNão Compra-computador X = ( 30, Média,Sim,Bom)

8 Exemplo DistânciaVALOR d(X,1)1,41 d(X,2)1 d(X,3)1,73 d(X,4)1,41 d(X,5)1,41 d(X,6)1,73 d(X,7)1,73 d(X,8)1 d(X,9)1 d(X,10)1 d(X,11)1 d(X,12)1,73 d(X,13)1,41 d(X,14)1,73

9 Exemplo K = 5 Os 5 vizinhos mais próximos são X1 = ( 30AltaSimBom) Classe = Não X2 = ( 30MédiaNãoBom) Classe = Não X3 = ( 30BaixaSimBom) Classe = Sim X4 = ( > 40MédiaSimBom) Classe = Sim X5 = ( 30MédiaSimExc. ) Clase = Sim Logo, X é classificada na classe = Sim

10 Acurácia de Classificadores Como medir ?

11 Holdout Método Holdout Considera-se um banco de dados de amostras Divide-se em 2 partes : D1 e D2 D1 é 2 vezes maior do que D2 Acurácia= número de tuplas de D2 bem classificadas dividido pelo total de tuplas de D2 Subamostragem Randômica Variação do método Holdout Método Holdout é repetido k vezes Acurácia geral = média das acurácias em cada rodada

12 Cross-Validation Validação Cruzada (k-fold Cross-validation) Dados iniciais são particionados em k partes D1,..., Dk de tamanhos aproximados Treinamento e testes são executados k vezes. Em cada iteração i (i=1...k) Di é escolhido para teste e o restante das partições são utilizadas como treinamento. Cada tupla de amostra é utilizada o mesmo número de vezes como tupla de treinamento e uma única vez como tupla de teste. Acurácia de um classificador = número total de tuplas bem classificadas nas k iterações dividido pelo total de tuplas no banco de dados original. Acurácia de um preditor = Soma dos erros dividido nas k iterações dividido pelo total de tuplas no banco de dados original.

13 Variantes do Cross-validation Leave-one-out Caso especial de k-fold cross validation Cada Di tem um único elemento Em cada iteração somente 1 tupla é utilizada para teste. Cross-validation estratificada As folhas D1,..., Dk são tais que a distribuição das classes em cada folha é aproximadamente igual à distribuição nos dados iniciais. Ex: se em D a proporção de tuplas das classes C1 e C2 é de 2 para 1 então esta proporção é mantida em cada folha Di.

14 Bootstrap A cada vez que uma tupla é selecionada para participar do grupo de treinamento, ela volta novamente para o banco inicial, podendo ser novamente selecionada na próxima vez. Bancos de treinamento e testes podem conter tuplas repetidas.

15 .632 Bootstrap Banco de dados original com d tuplas Os sorteios de tuplas são realizados d vezes. Ao final de d sorteios temos um banco D1 de treinamento (boostrap sample) e um banco D2 de testes. A amostra de treinamento D1 tem exatamente d elementos.

16 .632 Bootstrap É bem provável que alguma tupla t do banco original ocorre repetida em D1. Qual a probabilidade de uma tupla não estar no banco de treinamento D1 no final dos d sorteios ? (1 – 1/d) d lim (1 – 1/d) d = 1/e (para d infinito) e = /e = 0,368 36,8% das tuplas não são escolhidas: formam o conj. D2 63,2% das tuplas são escolhidas: formam o boostrap D1

17 Acurácia medida com o Boostrap Repete-se o processo de amostragem k vezes Em cada vez construimos D1 e D2 e medimos a acurácia do classificador (ou preditor) M Acc(Mi) test-set = acurácia de M calculada na iteração i, com D2 como teste e D1 como treinamento Acc(Mi) train-set = acurácia de M calculada na iteração i, com dados originais como teste e D1 como treinamento. Acurácia(M) = Σ (0.632*Acc(Mi) test-set *Acc(Mi) train-set ) i = 1 k


Carregar ppt "Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo Classificadores Lazy."

Apresentações semelhantes


Anúncios Google