• Nenhum resultado encontrado

Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Introdução

N/A
N/A
Protected

Academic year: 2021

Share "Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Introdução"

Copied!
20
0
0

Texto

(1)

Reconhecimento de Padrões

Introdução

Luiz Eduardo S. Oliveira, Ph.D. http://lesoliveira.net

Universidade Federal do Paraná Departamento de Informática

Objetivos

• Introduzir os conceito básicos de

reconhecimento de padrões através de um exemplo de um sistema de

(2)

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

Introdução

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

(3)

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.

Introdução

• Diferentes abordagem para

Reconhecimento de Padrões. – Estatística

– Estrutural – Sintática

(4)

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 recebido em uma esteira, e o processo de classificação é manual.

– A industria gostaria de automatizar esse processo, usando para isso uma câmera CCD.

(5)

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.

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.

(6)

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.

Sistema Clássico

Aquisição Pré-Processamento Classificação Salmão Robalo Segmentação Extração de Características

(7)

Área Multidisciplinar

Algoritmos/ Estrutura de Dados Reconhecimento de Padrões Processamento De Imagens Aprendizagemde Máquina Estatística

Álgebra Linear &

Geometria Computação Evolutiva Domínio da Aplicaçã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 subseqüentes mais simples e rápidos.

(8)

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...

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.

(9)

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”.

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?

(10)

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 ??

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

(11)

Conceitos básicos de classificação

t

salmã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.

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.

(12)

Conceitos básicos de classificação

• Suponha que os clientes da nossa

industria 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.

Conceitos básicos de classificação

salmão robalo

Custo maior, uma vez que mais salmões serão classificados como robalos

x

(13)

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.

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.

=

1

x

x

x

(14)

Conceitos básicos de classificação

Nossa base de treinamento em um gráfico de dispersão salmão robalo

al

tu

ra

claridade

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:

(15)

Conceitos básicos de classificação

salmão robalo al tu ra claridade

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.

(16)

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.

Conceitos básicos de classificação

salmão robalo

al

tu

ra

claridade Fronteira muito mais complexa.

Separação perfeita!

Um exemplo (salmão) de teste

(17)

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).

Conceitos básicos de classificação

• Por outro lado, modelos muito simples

tendem a generalizar demais (

under-fitting).

• 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.

(18)

Conceitos básicos de classificação

salmão robalo al tu ra claridade

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

(19)

Taxas

• Outra forma bastante utilizada para se avaliar classificadores são as curvas ROC (Receiver Operating

Characteristics)

– TP, TN (Diagonal principal da matriz) – FP, FN

(20)

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 (2cm 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.

Referências

Documentos relacionados

Dessa forma, diante das questões apontadas no segundo capítulo, com os entraves enfrentados pela Gerência de Pós-compra da UFJF, como a falta de aplicação de

int *pi // variável “pi” é ponteiro para inteiro float *pc // variável “pc” é ponteiro para float char *xy // variável “xy” é ponteiro para caracter. unsigned long int

duplamente encadeada com este valor caso o mesmo ainda não exista na lista, em ordem CRESCENTE, ou seja, sempre entre um nó contendo um valor menor e outro contendo um valor

 São TADs representados através de listas sequenciais.. (fixas) ou encadeadas (dinâmicas), em que a seguinte regra deve

função recursiva, mais recursos de memória são necessários para executar o programa, o que pode torná-lo lento ou. computacionalmente

 Caminho simples que contém todas as arestas do grafo (e,. consequentemente, todos os

Muitas vezes o agricultor quer tirar a soja o quanto antes da lavoura, pois segundo Holtz e Reis (2013), o maior tempo de permanência da soja na lavoura, traz um aumento das

Coletaram-se informações referentes à habilitação pro- fissional dos docentes; suas fontes de conhecimentos sobre a Guerra do Contestado; seu conhecimento referente aos redutos