Feature Learning for Image Classification via Multiobjective Genetic Programming Seminários de...
-
Upload
celia-azenha-vasques -
Category
Documents
-
view
217 -
download
0
Transcript of Feature Learning for Image Classification via Multiobjective Genetic Programming Seminários de...
Feature Learning for Image Classification via Multiobjective
Genetic Programming
Seminários de Inteligência Artificial
Felipe de Paula Wanderley Barros (FPWB)
Introdução•Classificação de Imagens
▫ Extração de Características (feature extraction) Diversos algoritmos para extração de
bordas, quinas, orientação, cores...
Introdução•Problema
▫Grande maioria de algoritmos tem sua eficácia restrita a domínios específicos de imagens.
Como determinar quais os melhores algoritmos a serem utilizados para a
extração de determinada característica?
Introdução•Proposta
▫Definir características de propósito geral e propor uma solução ótima capaz de extraí-las de quaisquer domínio de imagens.
Como encontrar essa solução ótima?
Introdução•Abordagem
▫Utilizando o conceito de Genetic Programming (GP), ser capaz de se aproximar de uma solução ótima.
Genetic Programming?
Genetic Programming (GP)•Conceitos
▫Operadores Primitivos.▫Evolução (Crossovers e Mutações).▫Best Fitness.
Genetic Programming (GP)•Conceitos
Trabalhos Relatos•Feature-Focused: Técnicas
especializadas na extração de características específicas.▫Essas técnicas são sensíveis a mudança
de domínio. Podem ser excelentes para alguns domínios de imagens, e péssimas em outros.
Trabalhos Relatos•Whole Scene-Focused: Técnicas que
avaliam a imagem por completo.▫Todas as referências citadas são utilizadas
em características hand-crafted. Ou seja, tiveram o seu ambiente de teste preparado para a sua utilização.
Trabalhos Relatos•Deep Learning: Técnicas utilizando
massivos conjuntos de dados para treinamento.▫Essas técnicas extraem as características
de maneira estática. Ou seja, não “aprendem” a melhor maneira de realizar a extração de características.
Trabalhos Relatos•Genetic Programming: Técnicas
utilizando o conceito de programação genética para caracterização de imagens.▫Todas com uma única finalidade. Enquanto
que o artigo propõe uma abordagem de multifinalidade. Além disso, o artigo é o único a utilizar a complexidade da árvore como parâmetro.
Metodologia
MOGP
Estrutura do Programa MOGP
Estrutura do Programa MOGP•O programa MOGP está dividido em 4
partes:▫Input▫Filtering▫Max-polling▫Concatenation.
Segundo o autor, essa estrutura imita a estrutura do córtex humano.
Estrutura do Programa MOGP•Input•Filtering•Max-Polling•Concatenation
Estrutura do Programa MOGP
Estrutura do Programa MOGP•Conjunto Final
▫Conjunto de características extraídas pelo sistema. Componentes Azul, Verde, Vermelho (Ib, Ig,
Ir) Intensidade de Tom Cinza (Igray) Coeficiente C atribuído aleatoriamente para
cada sub-árvore.▫A saída possui estas informações a respeito
do programa gerado {Ib, Ig,Ir, Igray, C}
Estrutura do Programa MOGP•Conjunto Final
Estrutura do Programa MOGP
Estrutura do Programa MOGP•Conjunto Funções
▫Definição das funções que podem ser utilizadas para compor as árvores do programa (nós).
▫Programas se diferenciam de acordo com a composição de funções.
▫Extrair Informações Significativas▫Simples e Eficiente (Partículas Atômicas)
Estrutura do Programa MOGP•Conjunto Funções
Estrutura do Programa MOGP•Conjunto Funções - Filtering Layer
▫24 Funções distintas.▫Denoising, Contorno, Orientação...▫Conjunto Fechado de Funções
Tamanho da Entrada = Tamanho da Saída
Composição Irrestrita de Funções!
Estrutura do Programa MOGP•Conjunto Funções - Filtering Layer
Estrutura do Programa MOGP•Conjunto Funções – Max-Polling Layer
▫5 Funções distintas.▫Etapa fundamental do reconhecimento de
imagens no córtex cerebral.▫Conjunto Fechado de Funções
Tamanho da Entrada != Tamanho da Saída, MAS
as imagens são restauradas ao tamanho original por interpolação.
Composição Irrestrita de Funções!
Estrutura do Programa MOGP•Conjunto Funções – Max-Polling Layer
Estrutura do Programa MOGP•Conjunto Funções – Concatenation
Layer▫Funções responsáveis pela fusão de
informação de cada árvore em um único vetor.
▫Possuem mesma saída (Descritor de Característica Final)
Estrutura do Programa MOGP•Conjunto Funções – Concatenation
Layer
Estrutura do Programa MOGP
Estrutura do Programa MOGP•Fitness Function
▫Maneira de medir/avaliar os programas gerados.
▫Duas medidas: Taxa de Erro. Complexidade dá Árvore
Estrutura do Programa MOGP•Fitness Function – Taxa de Erro
▫Avalia o programa N vezes sobre o conjunto de dados.
▫Conjunto de treinamento: ((1-N)/N)ths▫Cross-Validation com o restante dos dados.
(SVM ou KNN).▫Taxa de erro final é a média das taxas de
cada avaliação.
Estrutura do Programa MOGP•Fitness Function – Complexidade da
Árvore▫Conta-se o número de nós da árvore.▫Tentativa de evitar bloat.
Explosão da árvore do programa, aumentando complexidade, e causando overfitting.
Estrutura do Programa MOGP•Fitness Function
▫Como determinar qual a melhor árvore se baseando em duas medidas?
Fronteira de Pareto!
Estrutura do Programa MOGP•Fitness Function
Estrutura do Programa MOGP
Experimentos•Implementação do MOPG
▫200 Indivíduos e 70 Gerações.▫Operadores Genéticos: CrossOvers(90%) e
Mutações (10%).▫Tournament como seleção de indivíduos.▫0.5% de taxa de erro.
Experimentos•Divisão dos Conjuntos de Dados
Experimentos•Descrição dos Conjuntos de Dados
Caltech-101
MIT Urban and Nature Scene
CMU PIE Face Set
Jochen Triesch Static Hand Posture
Database II
Resultados
ResultadosÁrvore Gerada para o conjunto de dados Caltech-101
ResultadosÁrvore Gerada para o conjunto de dados CMU PIE face data set
Conclusões• Segundo os pesquisadores:
▫ O método demonstrou autonomia na extração de features, sem nenhum tipo de informação a respeito do domínio de imagens.
Tambem mostrou, de alguma forma, a escalabilidade dessa abordagem na tentativa de reconhecimento de objetos em larga-escala.
▫ Tambem aferiram que a arquitetura abordada é, de fato, consistente com a estrutura física do córtex visual humano.
Os pesquisadores atribuem o sucesso da abordagem principalmente à capacidade do algoritmo em extrair e fundir os componentes de cores das imagens automaticamente.
Dúvidas?