um curso sobre reconhecimento de padrões e redes neurais
TRANSCRIPT
HP – UFCG Analytics Abril-Maio 2012
Um curso sobre
Reconhecimento de Padrões e Redes Neurais Por
Herman Martins Gomes [email protected]
Programa
Introdução ao Reconhecimento de Padrões com foco em Redes Neurais
Visão
Geral (2H)
Reconhecimento
Estatístico de Padrões (3H)
Redes Neurais (15H)
•Estimação de Densidades •Análise Discriminante •Avaliação de Performance •Extração e Seleção de Características
Reconhecimento
Estatístico de Padrões (3H)
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 (X1) e do número médio de cerdas distais (X2) conforme tabela ao lado
X1 X2 X1 X2
5,92 5,12 4,56 4,045,92 5,36 5,04 4,446,36 5,24 5,44 4,886,40 5,16 5,48 4,206,44 5,64 5,60 4,646,56 5,56 5,64 4,966,64 5,36 5,64 4,966,68 4,96 5,72 5,046,72 5,48 5,76 4,806,72 5,08 5,96 5,086,76 5,60 6,00 4,88
Raça A Raça B
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 w0 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 |w0| / |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 Hiperplano
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 p1, ..., pC (conjunto de treinamento) para cada uma das C classes w1, ... wC
• O classificador de distância mínima mapeia um padrão x na classe wi associada com o ponto pi 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 ni protótipos na classe wi (i=1,...,C), a função discriminante para a classe wi é dada por
– Em que gij é 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:
– φ= (φ11(x), . . . , φD (x))
T é um vetor função de x – Se D=p (o número de características em x) e
φi1(x) = xi então tem-se uma função discriminante linear
Conceitos Fundamentais
• Função Discriminante Generalizada – A função discriminante é linear nas funções φi 1 mas não em xi – 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
Densidade Normal
Estimação de Densidades
30 observações
Estimação de Densidades
Função densidade de probabilidade estimada (assumindo distribuição normal)
OK
Estimação de Densidades
Uma Densidade Bimodal
Estimação de Densidades
30 observações
Estimação de Densidades
Função densidade de probabilidade estimada (assumindo distribuição normal)
No Good!
Estimação de Densidades
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 gi > gi 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)
Classe predita
Classe predita
Classe verdadeira Classe verdadeira Treinamento Teste
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
Normalizar
Ajustar
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 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 H0 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
Hipótese nula (H0) é
verdadeira Hipótese nula (H0) é falsa
Rejeitar a hipótese nula Erro tipo I (Falsos Positivos – FP)
Saída correta (Verdadeiros Positivos - TP)
Falha em aceitar a hipótese nula
Saída correta (Verdadeiros Negativos – TN)
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
50% 25% 25%
seleção aleatória
• 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
Avaliação de Performance
N padrões
treinamento teste Treinar em (N - 1) padrões padrão
k
• K-fold Cross Validation
Avaliação de Performance
k-partições
treinamento teste Treinar em (k - 1) partições Teste
• 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)
Avaliação de Performance
complexidade
Erro de treinamento
Erro de teste/validação Pontos de treinamento
Pontos de teste/validação
parar o treinamento
? Dúvidas
•Extração e Seleção de Características
Reconhecimento
Estatístico de Padrões (3H)
Próximos Passos
•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
Redes Neurais
(15H)
Próximos Passos