Reconhecimento de Padrões

Documentos relacionados
Rede RBF (Radial Basis Function)

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

Reconhecimento de Padrões

Aprendizado de Máquinas. Seleção de Características

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning)

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Combinação de Classificadores (fusão)

SEMINÁRIO DOS ARTIGOS:

SUPPORT VECTOR MACHINE - SVM

2. Redes Neurais Artificiais

Inteligência Artificial

Algoritmos Genéticos

Introdução aos Algoritmos Genéticos

Aula 6 Mineração Streams Representação dos Dados. Profa. Elaine Faria UFU

Introdução ao Reconhecimento. Prof. Dr. Geraldo Braz Junior

3. Resolução de problemas por meio de busca

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

Modelos Evolucionários e Tratamento de Incertezas

Aprendizado de Máquina

Metodologia Aplicada a Computação.

Classificação Linear. André Tavares da Silva.

Aprendizado de Máquina (Machine Learning)

Introdução à Mineração de Dados com Aplicações em Ciências Espaciais

Métodos para Classificação: - Naïve Bayes.

KDD E MINERAÇÃO DE DADOS

Redes Neurais Artificial. Prática. Inteligência Artificial

Aprendizagem de Máquina

4 Implementação Computacional

1. Computação Evolutiva

Mineração de Dados em Biologia Molecular

Aprendizado de Máquina

INF 1771 Inteligência Artificial

Aprendizado de Máquina

Maldição da dimensionalidade

Aprendizagem de Máquina. Prof. Júlio Cesar Nievola PPGIA - PUCPR

Aprendizado de Máquinas. Classificadores Lineares

Uma Introdução a SVM Support Vector Machines. Obs: Baseada nos slides de Martin Law

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

Classificadores Lineares

Thiago Zavaschi Orientador: Alessandro Koerich Programa de Pós-Graduação em Informática (PPGIa) Pontifícia Universidade

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan

Thiago Marzagão 1. 1 Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21

Introdução a Algoritmos Genéticos

Aprendizado de Máquina

4 Construção dos Classificadores

INF 1771 Inteligência Artificial

Fundamentos de Inteligência Artificial [5COP099]

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmos Genéticos. Indivíduos em uma população competem por recursos e parceiros. Os indivíduos mais bem sucedidos em cada competição vão produzir

Aprendizado por Reforço usando Aproximação

Redes Neurais (Inteligência Artificial)

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Aprendizado de Máquina

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

Redes Perceptron e Multilayer Perceptron aplicadas a base de dados IRIS

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados

Informática Parte 19 Prof. Márcio Hunecke

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Aprendizado de Máquina

2. Redes Neurais Artificiais

Testes de software - Teste funcional

Codificação de Huffman

Buscas Informadas ou Heurísticas - Parte II

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

Transcrição:

Reconhecimento de Padrões André Tavares da Silva andre.silva@udesc.br

Roteiro da aula Conceitos básicos sobre reconhecimento de padrões Visão geral sobre aprendizado no projeto de classificadores Seleção de características

Modelos para reconhecimento de padrões Reconhecimento sintático As características são textuais e a classificação é uma análise gramatical (e.g., por árvores de decisão). Reconhecimento estatístico As características são normalmente numéricas (i.e., as textuais podem ser transformadas em números) e a classificação é uma análise estatística dos dados. Obs: Este curso se concentrará no reconhecimento estatístico, construído a partir de um conjunto Z={z 1,z 2,..,z N } de N objetos observados (dados).

Modelo matemático Cada objeto z j de Z é representado por um vetor x j = [x 1,x 2,...,x n ] t de características e conhecemos a classe w i, i=1,2,...,c, de cada objeto para fins de avaliação. O conjunto de dados Z deve ser dividido em três subconjuntos, Z 1, Z 2, e Z 3, denominados subconjuntos de treinamento, avaliação, e teste. O projeto de um classificador consiste em aprender com Z 1 e Z 2, e avaliar o classificador projetado com Z 3. A classificação visa associar um rótulo l(z j )=w i, da classe correspondente, para qualquer objeto z j em Z com base em x j.

Modelo Matemático Um classificador D pode ser visto como um conjunto de funções discriminantes G={g 1,g 2,...,g c } tais que: x g 1 g 2 g c g 1 (x) g 2 (x) g c (x) Máximo w i

Aprendizado supervisionado Utilizamos o conhecimento da classe w i correspondente de todos os elementos em Z 1 para encontrar os parâmetros do classificador. O conjunto Z 2 é usado para avaliar o classificador projetado (pseudo-teste). Dependendo do resultado, podemos trocar elementos entre Z 1 e Z 2 e repetir o treinamento e o pseudo-teste até obtermos um classificador final D para avaliação final com Z 3. Esta avaliação testa uma a uma as amostras em Z 3.

Aprendizado não-supervisionado Não utilizamos o conhecimento das classes dos objetos em Z 1. Resolvemos um problema de clustering (particionamento de Z 1 ) e projetamos um classificador com base neste resultado. O conjunto Z 2 é usado para testar este classificador e atualizar os elementos de Z 1 com trocas até a obtenção de um modelo final D. O conjunto Z 3 pode então ser usado para avaliarmos o classificador projetado. Obs: Note que o classificador não é necessariamente um algoritmo de clustering. Em mineração de dados, podemos desconhecer de fato as classes em Z. A avaliação fica a critério do usuário e/ou medidas para detecção e correção de possíveis outliers.

Dicas O classificador deve ser testado com várias bases de dados. Crie um diretório para cada base, subdiretórios para as classes, e copie os objetos (vetores de características) da base para o subdiretório correspondente. Faça um programa para selecionar aleatoriamente objetos de cada classe para formar os conjuntos Z 1, Z 2, e Z 3 em três arquivos com descritor e classe de cada objeto. Faça um segundo programa para projetar o classificador e um terceiro para testá-lo. As bases podem ser criadas artificialmente, obtidas de projetos, ou pela internet (http://archive.ics.uci.edu/ml/).

Características em Problemas Gerais Quantitativas Contínuas (comprimento, altura, peso) Discretas (número de buracos, número de gols) Qualitativas (muito usadas em reconhecimento sintático) Ordinal (grau de educação) Nominal (profissão, marca, modelo) Obs.: estamos interessados em características quantitativas.

x 2 Seleção de características A dificuldade está no fato que características isoladas podem ser irrelevantes, mas quando juntas melhoram a classificação. A seleção pode ser feita com base em todo o conjunto Z. x 1

Seleção de características Temos um problema de otimização, onde o espaço de busca é o conjunto de todas as combinações de características e a função objetivo é minimizar os erros de classificação. Neste sentido, qualquer técnica de otimização (heurística ou não) pode ser utilizada. Seja B k =(b 1,b 2,...,b n ) uma possível combinação de características para k=1, 2,...,C n,1 +C n,2 +...+C n,n, onde b j = 1 indica que a característica x j está incluída e b j = 0 indica que não. O problema consiste em encontrar a combinação B k que leva ao menor erro de classificação.

Algumas técnicas Seleção natural Seleção aleatória Seleção não-aleatória Forward and backward search Modelos baseados em classe favorita Seleção por Genetic Algorithms (GA) Seleção baseada em medidas de avaliação de clustering

Seleção natural Algumas características surgem naturalmente do problema. Por exemplo, características espectrais associadas ao pitch no reconhecimento de voz. Características de forma no reconhecimento de caracteres. Neste sentido, um bom método de seleção é usar de parcimônia.

Seleção aleatória Podemos selecionar aleatoriamente um subconjunto razoável de c combinações B k, construir c classificadores D k a partir de cada combinação B k e selecionar a combinação que gera o melhor classificador.

Busca forward Podemos testar cada característica individualmente e selecionar a melhor. Depois testar pares de características fixando a melhor da etapa anterior e selecionar o melhor par. Repetir o processo com três, quatro,..., até n características. No final selecionamos a melhor combinação entre todas testadas.

Busca backward Podemos testar B k =(1,1,...,1) primeiro. Verificar qual característica quando retirada piora menos ou até melhora o resultado. Repetir o processo até sobrar uma única característica. Escolher a melhor combinação entre todas testadas.

Modelo baseado em classe favorita Este modelo é usado em sistemas com múltiplos classificadores. Assumimos uma classe wi, i=1,2,...,c favorita para cada classificador D i. Para encontrar a combinação Bk,i mais adequada para D i nós definimos uma variável v i (z j ) para cada classe, onde v i (z j )=0 se z j não pertence a w i e v i (z j )=1 no caso contrário. Calculamos para cada wi, a correlação entre os valores de cada característica x k, k=1,2,...,n, e os valores de v i (z j ) para cada objeto z j de Z. As ni características com os maiores valores absolutos de correlação são selecionadas para B k,i. O classificador Di porém é projetado para reconhecer todas as classes usando B k,i.

Modelo baseado em algoritmos genéticos Este modelo é também adotado para sistemas com múltiplos classificadores. Cada combinação Bk é vista uma população. como um indivíduo (cromossomo) de Selecionamos uma população inicial de L indivíduos para projetar L classificadores. Mutações e crossing-over são feitos diretamente nos bits dos indivíduos. O fitness value de um indivíduo está relacionado com o desempenho de seu classificador, mas desejamos manter uma população com indivíduos diferentes (genótipo), que juntos produzem os melhores resultados de classificação (fenótipo).

Modelo baseado em separabilidade e compacticidade Um bom conjunto de características (descritor) Bk é aquele que separa mais as classes distintas mantendo os elementos de uma mesma classe bem agrupados. Medidas de avaliação de clustering buscam capturar estes conceitos de separabilidade e compacticidade de um descritor. Neste caso, podemos considerar a partição das classes em Z, uma dada métrica, e avaliar a medida (e.g., o corte normalizado) de cada descritor sobre esta partição, selecionando o descritor com o melhor valor de medida (e.g., corte mínimo).

Redução do número de características A redução de características (PCA, ICA) pode ser importante para eliminar características irrelevantes e melhorar a eficiência do classificador (curse of the high-dimensionality). x 2 y 1 x 1 Qual é o impacto que isto tem no desempenho do classificador e na eficiência do sistema como um todo?

Teorema de Cover (1965) Um problema complexo de classificação de padrões disposto não linearmente em um espaço de alta dimensão tem maior probabilidade de ser linearmente separável do que em um espaço de baixa dimensionalidade. Alguns classificadores, tais como RNA com Funções de Ativação de Base Radial e máquinas de vetor de suporte (SVM), exploram este teorema. O teorema se aplica mesmo que as classes não sejam separáveis no espaço de menor dimensão?