HP UFCG Analytics Abril-Maio 2012 Um curso sobre Reconhecimento de Padrões e Redes Neurais Por Herman Martins Gomes hmg@dsc.ufcg.edu.br
Programa Visão Geral (2H) Reconhecimento Estatístico de Padrões (3H) Redes Neurais (15H) Introdução ao Reconhecimento de Padrões com foco em Redes Neurais
Reconhecimento Estatístico de Padrões (3H) Estimação de Densidades Análise Discriminante Avaliação de Performance Extração e Seleção de Características
Conceitos Fundamentais Funções Discriminantes Exercício prático Projetar empiricamente funções discriminantes para realizar a separação entre entre 2 raças de insetos a partir do número médio de cerdas primordiais (X 1 ) e do número médio de cerdas distais (X 2 ) conforme tabela ao lado Raça A Raça B X 1 X 2 X 1 X 2 5,92 5,12 4,56 4,04 5,92 5,36 5,04 4,44 6,36 5,24 5,44 4,88 6,40 5,16 5,48 4,20 6,44 5,64 5,60 4,64 6,56 5,56 5,64 4,96 6,64 5,36 5,64 4,96 6,68 4,96 5,72 5,04 6,72 5,48 5,76 4,80 6,72 5,08 5,96 5,08 6,76 5,60 6,00 4,88
Conceitos Fundamentais Funções Discriminantes Abordagem Bayesiana Vs. Análise Discriminante: a forma da função discriminante é especificada e não imposta pela distribuição de probabilidade subjacente Escolha por funções discriminantes Pode depender de conhecimento prévio sobre os padrões a serem classificados ou Pode ser uma função particular cujos parâmetros são ajustados via treinamento Muitos tipos diferentes de funções discriminantes estão disponíveis, como Funções lineares (combinação linear das características descrevendo um padrão) Funções não-lineares multiparamétricas, como as redes neurais do tipo Perceptron de Múltiplas Camadas
Conceitos Fundamentais Funções Discriminantes Discriminação também pode ser vista como um problema de regressão em que a variável dependente y é um indicador de classe e os regressores são os vetores x de padrões Muitos modelos de função discriminante levam a estimativas E[y x], que é o objetivo central da análise de regressão (apesar de que, em regressão, y não é necessariamente um indicador de classe) Assim, muitas das técnicas empregadas na otimização de funções discriminantes são igualmente aplicáveis a problemas de regressão
Conceitos Fundamentais Funções Discriminantes Lineares São combinações lineares dos componentes de x w e w 0 são respectivamente o vetor de pesos e o limiar Geometricamente, é um hiperplano com vetor normal na direção de w e uma distância perpendicular à origem igual a w 0 / w
Conceitos Fundamentais Funções Discriminantes Lineares A avaliação da função discriminante sobre um padrão x é uma medida da distância perpendicular desse padrão ao hiperplano origem Hiperplan o
Conceitos Fundamentais Funções Discriminantes Lineares Um classificador de padrões que emprega funções discriminantes lineares é chamado de máquina linear ou classificador linear Um caso especial de máquina linear é o classificador de distância mínima Dado um conjunto de pontos protótipos p 1,..., p C (conjunto de treinamento) para cada uma das C classes w 1,... w C O classificador de distância mínima mapeia um padrão x na classe w i associada com o ponto p i mais próximo a x
Conceitos Fundamentais Funções Discriminantes Lineares A distância Euclidiana ao quadrado é dada por Uma decisão é obtida pelo classificador de distância mínima comparando-se as expressões abaixo (para diferentes valores de i que indicam os protótipos das classes)
Conceitos Fundamentais Funções Discriminantes Lineares A função discriminante linear é expressa por em que: Logo, o classificador de distância mínima é uma máquina linear Se os pontos protótipo são as médias das classes, então tem-se um classificador de classe média
Conceitos Fundamentais Funções Discriminantes Lineares Exemplos de regiões de decisão para um classificador de distância mínima
Conceitos Fundamentais Funções Discriminantes Lineares por Partes Generalização do classificador de distância mínima para a situação em que há mais de um protótipo por classe Não necessariamente todos os protótipos que formam o conjunto de treinamento precisam ser utilizados (método dos k- vizinhos mais próximos) Supondo que existam n i protótipos na classe w i (i=1,...,c), a função discriminante para a classe w i é dada por Em que g i j é uma função auxiliar para permitir comparações com os diferentes protótipos de cada classe
Conceitos Fundamentais Funções Discriminantes Lineares por Partes Regiões de decisão resultantes (mosaico de Dirichlet ou diagrama de Voronoi) Linhas finas: delimitam regiões de vizinhos mais próximos para os conjuntos de protótipos Linhas espessas: delimitam regiões de separação entre as classes
Conceitos Fundamentais Função Discriminante Generalizada Também conhecida como máquina phi, é expressa da seguinte forma: φ= (φ 1(x),..., φ D (x)) T é um vetor função de x Se D=p (o número de características em x) e φ i 1(x) = x i então tem-se uma função discriminante linear
Conceitos Fundamentais Função Discriminante Generalizada A função discriminante é linear nas funções φ 1 i mas não em x i Uma função discriminante linear nem sempre conseguirá separar as classes (ver figura abaixo), apesar delas serem separáveis, contudo, se fizermos a transformação então as classes serão linearmente separáveis no espaço φ
Conceitos Fundamentais Função Discriminante Generalizada Algumas opções disponíveis para as funções φ i 1(x)
Estimação de Densidades Paramétrica A regra de discriminação pode ser construída a partir da estimação explícita das funções de densidade de probabilidade condicionadas à classe p(x ω j ) Uma possível abordagem é assumir um modelo paramétrico simples para as funções de densidade e estimar os parâmetros dos modelos a partir de um conjunto de treinamento
Estimação de Densidades Paramétrica Assumir uma certa distribuição (normal, exponencial, Weibull, etc.) Estimar os parâmetros da distribuição a partir das observações Utilizar a distribuição com os parâmetros estimados
Estimação de Densidades Densidade Normal
Estimação de Densidades 30 observações
Estimação de Densidades OK Função densidade de probabilidade estimada (assumindo distribuição normal)
Estimação de Densidades Uma Densidade Bimodal
Estimação de Densidades 30 observações
Estimação de Densidades No Good! Função densidade de probabilidade estimada (assumindo distribuição normal)
Estimação de Densidades Paramétrica Distribuição normal univariada Distribuição normal multivariada
Estimação de Densidades Paramétrica Classificador Gaussiano: o objetivo é associar o padrão x à classe com maior p(x ω j ) Após algumas manipulações da equação para a distribuição normal multivariada chega-se à regra para o classificador Gaussiano: Associar x a ω i se g i > g i para todo j i A fim de se poder utilizar este classificador é necessário estimar dos dados de treinamento
Estimação de Densidades Paramétrica Exemplo Prático: prever o grau de recuperação de pacientes com graves lesões na cabeça a partir de dados coletados imediatamente após as lesões idade agrupada em décadas (0-9, 10-19,..., 60-69, 70+) EMV score: respostas oculares, motoras e verbais numa escala de 7 níveis MRP score: sumário das respostas motoras nos 4 membros (numa escala de 1 a 7(normal) mudança na atividade neurológica nas primeiras 24h: de 1 para deteriorando-se, até 3 (boa) Pupilas: a reação das pupilas à luz (1 para não reativa ou 2 para reativa)
Estimação de Densidades Paramétrica Exemplo Prático: prever o grau de recuperação de pacientes com graves lesões na cabeça a partir de dados coletados imediatamente após as lesões Dados: 500 pacientes nos conjuntos de treino e teste distribuídos em 3 classes: (1) morto ou vegetativo, (2) severa desabilidade, e (3) moderada desabilidade ou boa recuperação Número de padrões em cada uma das três classes para os conjuntos de treino e de teste Treinamento: 259, 52,189 Teste: 250, 48, 202 Não há um balanceamento entre as classes e muitos padrões estavam ausentes, mas estes foram substituídos pelas médias das classes no treino e médias da população no teste
Estimação de Densidades Paramétrica Exemplo Prático: prever o grau de recuperação de pacientes com graves lesões na cabeça a partir de dados coletados imediatamente após as lesões Modelo: funções discriminantes para os dados de cada classe foram definidas conforme a regra do classificador Gaussiano
Estimação de Densidades Paramétrica Exemplo Prático: prever o grau de recuperação de pacientes com graves lesões na cabeça a partir de dados coletados imediatamente após as lesões Treinamento: cálculo das quantidades que denotam as estimativas de máxima probabilidade da média e da matriz de covariância para cada uma das classes As probabilidades a priori das classes foram definidas como sendo Um procedimento numérico precisou ser utilizado para calcular a inversa da matriz de covariância e seu determinante para cada classe
Estimação de Densidades Paramétrica Exemplo Prático: prever o grau de recuperação de pacientes com graves lesões na cabeça a partir de dados coletados imediatamente após as lesões Resultados: resultados em conjuntos de treinamento e teste para o classificador Gaussiano apresentados como matrizes de confusão (há um problema com a classe 2) Treinamento Classe verdadeira Teste Classe verdadeira Classe predita Classe predita
Estimação de Densidades Não-Paramétrica Nem sempre é possível assumir de forma correta a forma da função densidade de probabilidade Nestes casos, não se pode assumir que a densidade é caracterizada por um conjunto de parâmetros Em métodos não paramétricos, não há uma estrutura formal para a função de densidade Há muitos métodos disponíveis, dentro os quais, se destacam Histogramas K- vizinhos mais próximos (visto anteriormente nesta aula como uma função discriminante linear por partes)
Estimação de Densidades Não-Paramétrica Histogramas
Estimação de Densidades Não-Paramétrica Histogramas 30 observações
Estimação de Densidades Não-Paramétrica Histogramas 10 bins
Estimação de Densidades Não-Paramétrica Histogramas 10 bins Ajustar Normalizar
Estimação de Densidades Não-Paramétrica Histogramas 1920 observações
Estimação de Densidades Não-Paramétrica Estimativas por Kernels K(x) = Função kernel de área unitária h = Parâmetro de alargamento (suavização)
Estimação de Densidades Não-Paramétrica Estimativas por Kernels h=1 Kernel Retangular, h=1
Estimação de Densidades Não-Paramétrica Estimativas por Kernels h=1 Kernel Retangular, h=1
Estimação de Densidades Não-Paramétrica Estimativas por Kernels h=1 Kernel Retangular, h=1
Estimação de Densidades Não-Paramétrica Estimativas por Kernels Kernel Triangular, h=1
Estimação de Densidades Vantagens Métodos paramétricos: Propriedades teóricas bem fundamentadas Métodos não-paramétricos: Dispensam a escolha a priori de um tipo de distribuição Aplicabilidade mais ampla Simplicidade de uso
Estimação de Densidades Desvantagens Métodos paramétricos: Podem levar a resultados inadequados se a população não seguir a distribuição assumida Métodos não-paramétricos: Requerem um número maior de amostras para atingir a mesma qualidade de ajuste Maior dificuldade para o estabelecimento de propriedades formais
Avaliação de Performance Matriz de Confusão Múltiplas Classes Classe Verdadeira (Ground Truth) Classe 1 Classe2... Classe C Classe Predita Classe 1 Acerto 1 Erro 1,2 Erro 1,C Classe 2 Erro 2,1 Acerto 2... Erro 2,C... Classe C Erro C,1 Erro C,2 Acerto C
Avaliação de Performance Matriz de Confusão Duas classes Classe Verdadeira Positiva Negativa Classe Predita Positiva Verdadeiros Positivos (TP) Falsos Positivos (FP) Negativa Falso Negativos (FN) Verdadeiros Negativos (TN)
Avaliação de Performance Tipos de Erro e Relação com Testes Estatísticos A noção de erro estatístico envolve o estabelecimento de uma hipótese nula H 0 que usualmente corresponde a uma condição default da natureza do problema e.g. a assinatura é verdadeira, a região contém uma face, a pessoa é saudável etc. A hipótese alternativa tipicamente é a negação da hipótese nula
Avaliação de Performance Tipos de Erro e Relação com Testes Estatísticos Rejeitar a hipótese nula Falha em aceitar a hipótese nula Hipótese nula (H 0 ) é verdadeira Erro tipo I (Falsos Positivos FP) Saída correta (Verdadeiros Negativos TN) Hipótese nula (H 0 ) é falsa Saída correta (Verdadeiros Positivos - TP) Erro tipo II (Falsos Negativos FN)
Avaliação de Performance Tipos de Erro e Relação com Testes Estatísticos Taxa de erro tipo I (taxa de falsa aceitação) Também conhecida como tamanho (size) do teste, sendo denotado em Estatística por α (alpha) Usualmente equivale ao nível de significância do teste No caso de uma hipótese nula simples, α é a probabilidade de erro tipo I No caso de uma hipótese composta, α é o máximo de todas as possíveis probabilidades de erro tipo I Taxa de erro tipo II (taxa de falsa rejeição) Denotado em Estatística por β (beta) está relacionada à potência (power) de um teste de hipóteses
Avaliação de Performance Regiões de Acerto e Erro
Avaliação de Performance Medidas de Performance
Avaliação de Performance Curvas ROC Gráfico que relaciona as taxas de verdadeiro positivo e falso positivos à medida que um limiar de classificação é variado Objetivam avaliar o desempenho de classificadores sob diferentes condições operacionais
Avaliação de Performance Curvas ROC Exemplo
Avaliação de Performance Curvas ROC Exemplo
Avaliação de Performance Curvas ROC Outro Exemplo: Detecção de Faces
Avaliação de Performance Particionamento dos Dados Dados de treinamento para ajuste dos parâmetros livres dos classificadores Dados de validação para decidir quando parar o treinamento e evitar o overfitting Dados de teste para estimar como será a performance (taxas de acerto e de erro) do sistema num ambiente real Treinamento Validação Teste seleção aleatória 50% 25% 25%
Avaliação de Performance Particionamento dos Dados Problema em usar apenas um conjunto de teste Apenas um experimento de avaliação de performance será realizado Mesmo usando seleção aleatória dos padrões que irão compor os conjuntos, há o risco do conjunto de teste ser uma amostra muito fácil ou muito difícil de classificar
Avaliação de Performance Particionamento dos Dados Algumas soluções Leave-one-out Cross Validation Reservar um padrão k para teste, treinar com os N-1 restantes, avaliar a performance no padrão k, repetir o experimento para k=1,,n e reportar o erro/acerto médio K-fold Cross Validation Dividir o conjunto de dados em k partições (subconjuntos disjuntos) de mesma dimensão Reservar uma partição i para teste, treinar com as k-1 partições restantes, testar com a partição i, repetir o experimento para i = 1,...,k, e reportar o erro/acerto médio
Avaliação de Performance Leave-one-out Cross Validation teste padrão k treinamento Treinar em (N - 1) padrões N padrões
Avaliação de Performance K-fold Cross Validation teste Teste treinamento Treinar em (k - 1) partições k-partições
Avaliação de Performance O Problema do Overfitting (Super-especialização) Fatores como poucos dados de treinamento, modelo de classificação muito complexo (muitos parâmetros livres) treinado exaustivamente podem levar a erros de treinamento muito pequenos e a erros de teste elevados Emprego de um conjunto de validação pode ajudar quando o treinamento deve ser encerrado
Avaliação de Performance O Problema do Overfitting (Super-especialização) parar o treinamento Pontos de treinamento Erro de teste/validação Pontos de teste/validação Erro de treinamento complexidade
? Dúvidas
Próximos Passos Reconhecimento Estatístico de Padrões (3H) Extração e Seleção de Características
Próximos Passos Redes Neurais (15H) Processo de Aprendizagem Análise de Componentes Principais Perceptrons de Simples e Múltiplas Camadas Mapas Auto Organizáveis Redes Neurais Recorrentes Previsão e Análise de Séries Temporais