Universidade Federal de Ouro Preto UFOP Programa de

  • Slides: 37
Download presentation
Universidade Federal de Ouro Preto (UFOP) Programa de Pós-Graduação em Ciência da Computação (PPGCC)

Universidade Federal de Ouro Preto (UFOP) Programa de Pós-Graduação em Ciência da Computação (PPGCC) Reconhecimento de Padrões Introdução David Menotti www. decom. ufop. br/menotti

Objetivos • Introduzir os conceito básicos de reconhecimento de padrões por meio de um

Objetivos • Introduzir os conceito básicos de reconhecimento de padrões por meio de um exemplo de um sistema de classificação clássico. 2

Introdução • Pense em ações simples que realizamos no nosso dia-a-dia, e na complexidade

Introdução • Pense em ações simples que realizamos no nosso dia-a-dia, e na complexidade envolvida, como por exemplo: Interpretar placas de trânsito 3

Introdução Ler um jornal: Diferentes Fontes, Figuras, Gráficos, Ilustrações, etc. . . 4

Introdução Ler um jornal: Diferentes Fontes, Figuras, Gráficos, Ilustrações, etc. . . 4

Introdução • Agora imagine como implementar essas simples ações em um sistema de computador!

Introdução • Agora imagine como implementar essas simples ações em um sistema de computador! • Complicado? • O que seria necessário? – Adquirir a imagem, ler, entender (classificar), tomar uma ação. 5

Introdução • Diferentes abordagem para Reconhecimento de Padrões. – Estatística – Estrutural – Sintática

Introdução • Diferentes abordagem para Reconhecimento de Padrões. – Estatística – Estrutural – Sintática 6

Um Exemplo • Para ilustrar a complexidade desse tipo de sistema, considere o seguinte

Um Exemplo • Para ilustrar a complexidade desse tipo de sistema, considere o seguinte exemplo: – Uma indústria recebe dois tipos de peixe: Salmão e Robalo. Os peixes são recebidos em uma esteira, e o processo de classificação é manual. – A industria gostaria de automatizar esse processo, usando para isso uma câmera CCD. 7

Um Exemplo (cont) 8

Um Exemplo (cont) 8

Um Exemplo (cont) • Primeiramente devemos encontrar as características que distinguem um salmão de

Um Exemplo (cont) • Primeiramente devemos encontrar as características que distinguem um salmão de um robalo. – Altura, largura, coloração, posição da boca, etc. . . • Características (Features): Qualquer medida que se possa extrair de um determinado objeto. 9

Um Exemplo (cont) • Características podem ser: – Simbólicas. – Numéricas (Continuas ou binárias).

Um Exemplo (cont) • Características podem ser: – Simbólicas. – Numéricas (Continuas ou binárias). • Ruídos (Erros): – Conceito originário da teoria das comunicações; – Podem estar presente no objeto. • Uma mancha no peixe, por exemplo. – Devidos ao sistema de aquisição. • Iluminação por exemplo. 10

Um Exemplo (cont) • Dado as diferenças entre as populações de Salmão e Robalo,

Um Exemplo (cont) • Dado as diferenças entre as populações de Salmão e Robalo, podemos dizer que cada uma possui um modelo específico. • Modelo: Um descritor, geralmente representado através de uma função matemática. – Bom modelo é capaz de absorver ruídos. 11

Sistema Clássico Aquisição Pré-Processamento Segmentação Extração de Características Classificação Salmão Robalo 12

Sistema Clássico Aquisição Pré-Processamento Segmentação Extração de Características Classificação Salmão Robalo 12

Sistema Clássico – Pré-processamento • Simplificação do sinal capturado pela câmera. – Ex: Eliminação

Sistema Clássico – Pré-processamento • Simplificação do sinal capturado pela câmera. – Ex: Eliminação de alguns ruídos. – Processamento digital de imagens. • Tornar os processos subsequentes mais simples e rápidos. 13

Sistema Clássico – Segmentação • Isolar os objetos de interesse na imagem. – No

Sistema Clássico – Segmentação • Isolar os objetos de interesse na imagem. – No nosso exemplo, encontrar o que é peixe e o que não é peixe. – Processamento Digital de Imagens • Filtros, morfologia matemática, etc. . . 14

Sistema Clássico – Segmentação • Segundo nível de segmentação. – Encontrar e segmentar os

Sistema Clássico – Segmentação • Segundo nível de segmentação. – Encontrar e segmentar os objetos de interesse detectados na primeira fase da segmentação. 15

Sistema Clássico – Extração de Características • A imagem do objeto de interesse é

Sistema Clássico – Extração de Características • A imagem do objeto de interesse é enviada para o módulo de extração de características. – Reduzir a complexidade através da extração de certas “características” ou “propriedades”. 16

Sistema Clássico – Classificação • As características (valores) são passadas para o classificador, o

Sistema Clássico – Classificação • As características (valores) são passadas para o classificador, o qual toma uma decisão – No nosso exemplo: Salmão ou Robalo. • Mas que tipo de características devemos usar? 17

Conceitos básicos de classificação • Suponha que alguém nos diga que: – Robalos geralmente

Conceitos básicos de classificação • Suponha que alguém nos diga que: – Robalos geralmente são maiores que salmões. – Isso nos dá uma direção para modelar nosso problema, ou seja, – Se o peixe ultrapassa um tamanho t, então ele é um robalo, caso contrário, é um salmão. – Mas como determinar t ? ? 18

Conceitos básicos de classificação • Podemos selecionar alguns exemplares (base de treinamento) de peixe

Conceitos básicos de classificação • Podemos selecionar alguns exemplares (base de treinamento) de peixe e verificar seus tamanhos. • Suponha que após analisarmos nossa base de treinamento, tenhamos os seguintes histogramas 19

Conceitos básicos de classificação robalo Usando somente a medida de tamanho, não podemos separar

Conceitos básicos de classificação robalo Usando somente a medida de tamanho, não podemos separar de maneira confiável nossas duas classes de peixes. Portanto, devemos tentar outras características. salmão t 20

Conceitos básicos de classificação salmão robalo Como podemos notar, essa característica é muito mais

Conceitos básicos de classificação salmão robalo Como podemos notar, essa característica é muito mais confiável, mas não é perfeita. Robalos que serão classificados como salmão. x Outra característica: Medida de Claridade (coloração) Noção de CUSTO 21

Conceitos básicos de classificação • Suponha que os clientes da nossa indústria aceitem um

Conceitos básicos de classificação • Suponha que os clientes da nossa indústria aceitem um pedaço de salmão embalado junto com robalo, mas o contrário é inaceitável. • Devemos então alterar nossa fronteira para que isso não aconteça. 22

Conceitos básicos de classificação salmão robalo Custo maior, uma vez que mais salmões serão

Conceitos básicos de classificação salmão robalo Custo maior, uma vez que mais salmões serão classificados como robalos x Erro Bayesiano 23

Conceitos básicos de classificação • Isso sugere que existe um custo associado com a

Conceitos básicos de classificação • Isso sugere que existe um custo associado com a nossa decisão. • Nossa tarefa consiste em encontrar uma regra de decisão que minimize o custo. – Isso é o papel central da Teoria da Decisão. – Também pode ser visto como um problema de otimização. 24

Conceitos básicos de classificação • Como minimizar o custo? – Buscar outras características. •

Conceitos básicos de classificação • Como minimizar o custo? – Buscar outras características. • Suponha que a claridade seja a melhor. – Podemos utilizar duas características ao mesmo tempo. Vetor de características bi-dimensional. 25

Conceitos básicos de classificação robalo altura salmão claridade Nossa base de treinamento em um

Conceitos básicos de classificação robalo altura salmão claridade Nossa base de treinamento em um gráfico de dispersão 26

Conceitos básicos de classificação • Nosso problema consiste em encontrar a fronteira de decisão

Conceitos básicos de classificação • Nosso problema consiste em encontrar a fronteira de decisão que minimize o custo. • Modelo mais simples: – Separação linear, y = ax+b – Algoritmos tradicionais: • Perceptron, Funções Discriminantes Lineares. 27

Conceitos básicos de classificação robalo altura salmão claridade 28

Conceitos básicos de classificação robalo altura salmão claridade 28

Conceitos básicos de classificação • Essa regra fornece uma boa fronteira de decisão, entretanto

Conceitos básicos de classificação • Essa regra fornece uma boa fronteira de decisão, entretanto pode ser melhorada. – Adicionar mais características, como por exemplo, dimensões do peixe, posição relativa dos olhos, etc. . . , poderiam ajudar. • Quanto mais características, mais base de treinamento será necessária. – Maldição da dimensionalidade. 29

Conceitos básicos de classificação • Suponha que não dispomos de mais características. • Solução:

Conceitos básicos de classificação • Suponha que não dispomos de mais características. • Solução: – Construir um modelo mais complexo do que um modelo linear. 30

Conceitos básicos de classificação altura salmão robalo Fronteira muito mais complexa. Separação perfeita! Um

Conceitos básicos de classificação altura salmão robalo Fronteira muito mais complexa. Separação perfeita! Um exemplo (salmão) de teste claridade 31

Conceitos básicos de classificação • Apesar de complexo, esse modelo é pior do que

Conceitos básicos de classificação • Apesar de complexo, esse modelo é pior do que o modelo linear. • A principal característica de um modelo deve ser a sua capacidade de generalizar. • Modelos muito complexos geralmente não generalizam bem, pois decoram a base de treinamento (over-fitting). 32

Conceitos básicos de classificação • Por outro lado, modelos muito simples tendem a generalizar

Conceitos básicos de classificação • Por outro lado, modelos muito simples tendem a generalizar demais (underfitting). • Na aprendizagem de máquina, veremos técnicas para evitar over- e under-fitting, ou seja, construir fronteiras de decisão nem tão simples e nem tão complexas. 33

Conceitos básicos de classificação robalo altura salmão claridade 34

Conceitos básicos de classificação robalo altura salmão claridade 34

Taxas • Um sistema pode ser avaliado usando diferente taxas. • A mais comuns

Taxas • Um sistema pode ser avaliado usando diferente taxas. • A mais comuns são – – Taxa de rec = (N_rec/Total_Img) * 100 Taxa de Erro = (N_err/Total_Img) * 100 Taxa de Rej = N_rej/Total_img) * 100 Confiabilidade = (Taxa de Rec / (Taxa Rec + Taxa de Erro)) * 100 35

Exercício • Planeje um sistema que inspecione automaticamente uma linha de produção de biscoitos.

Exercício • Planeje um sistema que inspecione automaticamente uma linha de produção de biscoitos. Os seguintes aspectos devem ser observados: 1. Forma (redondo) e tamanho (2 cm de raio). 2. Integridade (Quebrado, mordido, etc) 3. Quantidade de recheio (pelo menos 3 marcas de chocolate). ¨ Considere todos os aspectos, desde a aquisição da imagem até a classificação. 36

37

37