Reconhecimento de Padrões Tipos de Aprendizagem David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa.

Slides:



Advertisements
Apresentações semelhantes
Paulo Sérgio Rodrigues PEL205
Advertisements

INTELIGÊNGIA COMPUTACIONAL
ANÁLISE DISCRIMINANTE
Mineração de Dados Avaliação de Classificadores
Araken de Medeiros Santos Anne Magály de Paula Canuto
Agrupamento (clustering)
Adaptive Resonance Theory Carpenter & Grossberg
AULA 03 PERCEPTRON SIMPLES.
Aprendizado de Máquina
Prof. Júlio Cesar Nievola
Classificadores em Dados não Balanceados
Reconhecimento de Padrões Tipos de Aprendizagem
Reconhecimento de Padrões Classificadores Lineares
Reconhecimento de Padrões Segmentação
Medida do Tempo de Execução de um Programa
Reconhecimento de Padrões Seleção de Características
Reconhecimento de Padrões Receiver Operating Characteristics (ROC)
Reconhecimento de Padrões EigenFaces
Reconhecimento de Padrões Teoria da Decisão Bayesiana David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa.
Reconhecimento de Padrões Teoria da Decisão Bayesiana
Reconhecimento de Padrões Dissimilaridade
Universidade Federal de Ouro Preto (UFOP)
Reconhecimento de Padrões PCA David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa de Pós-Graduação em Ciência.
Reconhecimento de Padrões Aprendizagem Supervisionada (KNN)
Reconhecimento de Padrões Inteligência de Enxame
Reconhecimento de Padrões Principal Component Analysis (PCA) Análise dos Componentes Principais David Menotti, Ph.D. Universidade.
Reconhecimento de Padrões Segmentação
Iana Alexandra Alves Rufino
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Suellen Silva de Almeida Victor Hugo Cunha de Melo Jean Carlos Mendes
Aprendizado de Máquina
Alexandre Xavier Falcão & David Menotti
CLUSTERING: UMA REVISÃO AOS ALGORITMOS BÁSICOS
Aprendizagem de Máquina - Agrupamento
Finding and Evaluating Community Structure in Networks
Agrupamentos / Clustering
Aprendizado Baseado em Instâncias – Algoritmo k-NN
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Laís Araújo Lopes de Souza
K-Means / Clustering.
Sistemas Operacionais
Clustering Estudo de métodos computacionais para encontrar os grupos naturais existentes nos dados. Processo também conhecido por Segmentação ou por Aprendizagem.
INF 1771 – Inteligência Artificial
Aula 6 - Método não-experimental ou de seleção não-aleatória
O Processo de KDD Data Mining SUMÁRIO - AULA1 O processo de KDD
MEDIDAS DE DESEMPENHO Classificação SUPERVISIONADA
Aprendizagem de Máquina - Agrupamento Prof. Sérgio Queiroz Slides inicialmente preparados pelo Prof. Ricardo Prudêncio, aos quais foram feitas modificações.
Análise de padrões de uso em grades computacionais oportunistas
REDES NEURAIS ARTIFICIAIS Mapa Auto-Organizável de Kohonen (Self-Organizing Map - SOM) pertence a classe de redes neurais não-supervisionadas que se baseiam.
Aula 8. Classificação Não Supervisonada por Regiões
ADMINISTRAÇÃO FINANCEIRA
Análise de Agrupamentos Marcílio Souto DIMAp/UFRN.
Revisão 2° Bimestre Inteligência Artificial. Redes Neurais.
Locus Localização Eudes Cavalcanti.
Recuperação Inteligente de Informação
Probabilidade e Estatística para Avaliação de Desempenho
Classificação/Categorização Christian Diego – cdad Icamaan Viegas – ibvs.
Regressão e Previsão Numérica.
Classificação de Texto Baseada na aula de Henrique Borges e Ícaro Medeiros Alterada por Flávia Barros.
Clustering Algorithms for Gene Expression Analysis Pablo Viana Fagner Nascimento.
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG Classificação Não Supervisionada As instâncias não são previamente classificadas Um algoritmo de classificação.
Luana Bezerra Batista Redes Neurais Luana Bezerra Batista
Disciplina Engenharia da Qualidade II
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
Comportamento Assintótico
Laboratório de Classificação Supervisionada Laboratório de Geoprocessamento do Departamento de Engenharia de Transportes da EPUSP setembro de 2011.
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 12 Aprendizado não Supervisionado Mapas auto-organizáveis Max Pereira.
Transcrição da apresentação:

Reconhecimento de Padrões Tipos de Aprendizagem David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa de Pós-Graduação em Ciência da Computação (PPGCC)

Objetivos Introduzir diferentes tipos de aprendizagem – Supervisionada Métodos paramétricos e não paramétricos. – Não Supervisionada – Incremental – Com Reforço

Aprendizagem Supervisionada Alguém (um professor) fornece a identificação (rótulos) de cada objeto da base de dados. – Métodos Paramétricos: Assumem que a distribuição dos dados é conhecida (distribuição normal por exemplo) – Métodos Não-Paramétricos: Não consideram essa hipótese.

Aprendizagem Supervisionada Em muitos casos não se tem conhecimento da distribuição dos dados. Consequentemente, utilizar um método paramétrico pode não ser adequado. Distribuição Normal

Aprendizagem Supervisionada Um algoritmo não-paramétrico para aprendizagem supervisionada é o k-NN (k Nearest Neighbor). Consiste em atribuir a um exemplo de teste x a classe do seu vizinho mais próximo.

k-NN Significado de k: – Classificar x atribuindo a ele o rótulo representado mais frequentemente dentre as k amostras mais próximas. – Contagem de votos. Uma medida de proximidade bastante utilizada é a distância Euclidiana:

Distância Euclidiana x = (2,5) y = (3,4) 1.41

Distância Euclidiana

k-NN: Um Exemplo A qual classe pertence este ponto? Azul ou vermelho? não se pode afirmar vermelho – 5,2 - 5,3 vermelho – 5,2 - 5,3 - 6,2 azul – 3,2 - 2,3 - 2,2 - 2,1k=7 k=5 k=1 k=3 Calcule para os seguintes valores de k: A classificação pode mudar de acordo com a escolha de k.

Matriz de Confusão Matriz que permite visualizar as principais confusões do sistema. Considere um sistema com 3 classes, 100 exemplos por classe. c1c2c3 c1100 c2100 c % de classificação c1c2c3 c19010 c2100 c3595 Erros de classificação 10 exemplos de C1 foram classificados como C2

Matriz de Confusão The entries in the confusion matrix have the following meaning in the context of our study: a is the number of correct predictions that an instance is negative (TN), b is the number of incorrect predictions that an instance is positive (FP), c is the number of incorrect of predictions that an instance negative (FN), and d is the number of correct predictions that an instance is positive (TP) Several standard terms have been defined for the 2 class matrix: The accuracy (Acc) - Acc = ( a + d ) / ( a + b + c + d ) The Recall or true positive rate (TP) - TPR = d / ( c + d ) The false positive rate (FP) - FPR = b / ( a + b ) The true negative rate (TN) - TNR = a / ( a + b) The false negative rate (FN) - FNR = c / (c+d) The Precision (P) - P = d / (b+d) F-score = 2 ( R x P ) / ( R + P )

Exercício Implementar em C um kNN. – Mostrar a taxa de reconhecimento do sistema para k= {1,3,5,7} – Mostrar a matriz de confusão. – Analisar o impacto da base de aprendizagem na taxa de reconhecimento.

Aprendizagem Não-Supervisionada O que pode ser feito quando se tem um conjunto de exemplos mas não se conhece as categorias envolvidas?

Como classificar esses pontos? Por que estudar esse tipo de problema?

Aprendizagem Não-Supervisionada Primeiramente, coletar e rotular bases de dados pode ser extremamente caro. – Ex: Gravar voz é barato, mas rotular todo o material gravado é caro. Segundo, muitas vezes não se tem conhecimento das classes envolvidas. – Trabalho exploratório nos dados (ex. Data Mining.)

Aprendizagem Não-Supervisionada Pré-classificação: – Suponha que as categorias envolvidas são conhecidas, mas a base não está rotulada. – Pode-se utilizar a aprendizagem não- supervisionada para fazer uma pré-classificação, e então treinar um classificador de maneira supervisionada.

Clustering É a organização dos objetos similares (em algum aspecto) em grupos. Quatro grupos (clusters)

Cluster Uma coleção de objetos que são similares entre si, e diferentes dos objetos pertencentes a outros clusters. Isso requer uma medida de similaridade. No exemplo anterior, a similaridade utilizada foi a distância. – Distance-based Clustering

k-Means Clustering É a técnica mais simples de aprendizagem não supervisionada. Consiste em fixar k centróides (de maneira aleatória), um para cada grupo (clusters). Associar cada indivíduo ao seu centróide mais próximo. Recalcular os centróides com base nos indivíduos classificados.

Algoritmo k-Means 1.Determinar os centróides 2.Atribuir a cada objeto do grupo o centróide mais próximo. 3.Após atribuir um centróide a cada objeto, recalcular os centróides. 4.Repetir os passos 2 e 3 até que os centróides não sejam modificados.

k-Means – Um Exemplo Objetos em um plano 2D

k-Means – Um Exemplo Passo 1:Centróides inseridos aleatoriamente

k-Means – Um Exemplo Passo 2: Atribuir a cada objeto o centróide mais próximo

k-Means – Um Exemplo Passo 3: Recalcular os centróides

k-Means – Um Exemplo Impacto da inicialização aleatória.

k-Means – Um Exemplo Impacto da inicialização aleatória Fronteira Diferente

k-Means – Inicialização Importância da inicialização. Quando se têm noção dos centróides, pode-se melhorar a convergência do algoritmo. Execução do algoritmo várias vezes, permite reduzir impacto da inicialização aleatória.

k-Means – Um Exemplo 4 Centróides

Calculando Distâncias Distância Euclidiana Manhattan (City Block) x y x y

Calculando Distâncias Minkowski – Parâmetro r r = 2, distância Euclidiana r = 1, City Block

Calculando Distâncias Mahalanobis – Leva em consideração as variações estatísticas dos pontos. Por exemplo se x e y são dois pontos da mesma distribuição, com matriz de covariância C, a distância é dada pela equação – Se a matriz C for uma matriz identidade, essa distância é igual a distância Euclidiana.

A Importância das Medidas de Distâncias Suponha que dois exemplos pertencem ao mesmo cluster se a distância Euclidiana entre eles for menor que d. É obvio que a escolha de d é importante. Se d for muito grande, provavelmente teremos um único cluster, se for muito pequeno, vários clusters.

A Importância das Medidas de Distâncias Nesse caso, estamos definido d e não k.

Critérios de Otimização Até agora discutimos somente como medir a similaridade. Um outros aspecto importante em clustering é o critério a ser otimizado. Considere um conjunto composto de n exemplos, e que deve ser dividido em c sub- conjuntos disjuntos. Cada sub-conjunto representa um cluster.

Critérios de Otimização O problema consiste em encontrar os clusters que minimizam/maximizam um dado critério. Alguns critérios de otimização: – Soma dos Erros Quadrados. – Critérios de Dispersão

Soma dos Erros Quadrados É o mais simples e usado critério de otimização em clustering. Seja n i o número de exemplos no cluster D i e seja m i a média desse exemplos A soma dos erros quadrados é definida

Soma dos Erros Quadrados Adequado nesses casos - Separação natural Não é muito adequado para dados mais dispersos. Outliers podem afetar bastante os vetores médios m Je = grande Je = pequeno

Critérios de Dispersão Vetor médio do cluster i Vetor médio total Dispersão do cluster i Within-cluster Between-cluster

Critérios de Dispersão Relação Within-Between Caso ideal Baixo within (S w ) (boa compactação) Alto between (S b ) Clusters distantes um do outro.

Critérios de Dispersão Clusters dispersos Alto within Baixo between (S b ) Baixa distância entre os clusters. Caso não ideal

Critérios de Dispersão Podemos entender melhor os critérios de dispersão analisando o seguinte exemplo:

Diferentes clusters para c=2 usando diferentes critérios de otimização Erro Quadrado SwSw Relação S w /S b

Algumas Aplicações de Clustering Marketing: Encontrar grupos de consumidores com comportamento similares Biologia: Classificar grupos de plantas e animais. Bibliotecas: Organização de livros. Administração: Organização de cidades, classificando casas de acordo com suas características. WWW: Classificação de conteúdos.

Problemas Vetores de característica muito grandes: tempo de processamento elevado. Definição da melhor medida de distância: Depende do problema. As vezes é difícil, especialmente quando se trabalha com grandes dimensões. O resultado do clustering pode ser interpretado de diferentes maneiras.

k-Means - Simulação Um applet java para a simulação do k-Means pode ser encontrado na seguinte URL:

Aprendizagem Incremental Também conhecida com aprendizagem on- line. Interessante quando a aquisição de dados é difícil e cara. – Pequenos lotes de dados com o decorrer do tempo. – Podem não estar disponível em um futuro próximo.

Aprendizagem Incremental Isso torna necessário ter um classificador que aprenda incrementalmente. Processo incremental genérico:

Aprendizagem Incremental Dilema da Estabilidade-Plasticidade: – Aprender novas informações sem esquecer aquelas aprendidas anteriormente – Tipos clássicos de redes neuronais, tais como MLP não possuem essa propriedade. Catastrophic forgetting (quando novos dados são apresentados, aqueles aprendidos anteriormente são esquecidos).

Aprendizagem Incremental Um algoritmo de aprendizagem incremental deve possuir as seguintes propriedades: – Aprender a partir de novos dados. – Não necessitar dos dados antigos. – Preservar conhecimento adquirido. – Acomodar novas classes, introduzidas com os novos dados.

Aprendizagem Incremental Quais classificador tem essas características? – SOM (Self Organization Map) - Kohonen

SOM (Self Organization Map) Evolução do Tamanho da Vizinhança

SOM (Self Organization Map) Exemplo – Visualização de dados

Aprendizagem por Reforço ART (Adaptative Resonance Theory) Aprendizagem não supervisionada

ART (Adaptative Resonance Theory) Outros tipos de ART têm sido propostos nos últimos anos: – FAM, ARTMAP-IC, etc...

Aprendizagem com Reforço Aprendizagem com base na interação com o ambiente. Não se diz qual ação o classificador deve tomar. O classificador tenta diferentes ações e escolhe aquela que oferece um melhor retorno. – Tentativa-e-erro. Uso – Robótica. – Recuperação de Informação Baseada no Conteúdo