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

Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa

Embed Size (px)

Citation preview

Page 1: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de Padrões

Combinando Classificadores

David Menotti, Ph.D.www.decom.ufop.br/menotti

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

Page 2: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 2

Introdução

• O uso de vários classificadores é uma estratégia bastante utilizada para aumentar o desempenho de sistemas de reconhecimento de padrões.

• A ideia é que os erros sejam minimizados através do uso de múltiplos classificadores ao invés de um único classificador.– Resultados teóricos e experimentais demonstram a

viabilidade do uso de múltiplos classificadores.• Diferentes arquiteturas• Diferentes características

Page 3: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 3

Introdução

• Combinação– Classificadores “handcrafted” que são

posteriormente combinados para resolver um dado problema.

• Ensembles– Classificadores gerados automaticamente por

um algoritmo qualquer• Bagging, boosting, seleção de características,

subespaços, etc...

Page 4: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 4

Introdução

• O uso de múltiplos classificadores aparece na literatura com diferentes nomes– Fusão de classificadores– Combinação de classificadores– Mistura de classificadores – Pool– Ensembles– Comitês – Etc...

Page 5: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 5

Paralelo vs Série

• Múltiplos classificadores podem ser combinados paralelamente ou em série.

• Paralelo– Os classificadores C1, ... Cn, produzem

decisões sobre um padrão desconhecido– Todas essas decisões são então enviadas

para um método de fusão que produzirá o resultado final.

Page 6: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 6

Combinação: Paralelo

C1

C2

Cn

Fusão

Estrutura ParalelaProdutoMédiaMaxMin

SomaClassificador

Page 7: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 7

Combinação: Série

• Uma alternativa para a combinação paralela é a combinação em série.– A cada estágio do sistema existe somente um

classificador atuando no sistema.

• A combinação em série pode ser dividida em duas abordagens– Redução das classes– Re-avaliação

Page 8: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 8

Combinação: Série

• Redução de classes– A cada estágio do sistema o número de

classes candidatas é reduzida

• Re-avaliação – Padrões rejeitados em níveis anteriores são

re-avaliados. – Se o nível de confiança do classificador é

baixo o padrão deverá ser avaliado no nível seguinte.

Page 9: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 9

Combinação: Série

Redução do custo computacional

cust

o

Baixo

Alto

A ideia é que a maioria dos padrõessejam classificados nos primeirosníveis, onde o custo computacionalé mais baixo.

Page 10: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 10

Saída dos Classificadores

• Em geral, as saídas produzidas por classificadores podem ser divididas em três níveis– Abstrato

• O classificador gera apenas o rótulo da classe escolhida.

– Ranking • O classificador gera uma lista ordenada com as possíveis

classes.

– Probabilidades / scores• Além da lista ordenada, as probabilidades ou scores

também são geradas.

Page 11: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 11

Métodos de Fusão

• O método de fusão mais simples de ser implementado é o voto majoritário– Bastante utilizado com classificadores abstratos.– Fácil implementação

• Se o classificador fornecer uma lista ordenada, outros métodos estão disponíveis– Borda Count– Seleção dinâmica de classificadores

• Pesos diferentes.

Page 12: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 12

Métodos de Fusão (cont)

• O uso de lista de hipóteses ordenadas (ranking) é interessante quando a classe correta não aparece como a principal escolha (Top 1) do classificador.

• Mas está próxima da saída correta – Top 2 ou 3.

• Bastante interessante para problemas com grandes léxicos.

Page 13: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 13

Métodos de Fusão (cont)

• Um método bastante usando nesses casos é o Borda Count

Classe Rank

1 5

2 4

3 3

4 2

5 1

Classe Rank

4 5

2 4

5 3

1 2

3 1

Classe Rank

2 5

4 4

3 3

1 2

5 1

Classe Rank

2 13

4 11

1 9

3 7

5 5

Classificador 1 Classificador 2 Classificador 3 Resultado

Page 14: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 14

Métodos de Fusão (cont)

• Se classificadores geram estimação de probabilidade a posteriori, podemos utilizar outros métodos de fusão, tais como– Produto– Soma– Max– Min– Média

Page 15: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 15

Produto

• É uma regra bastante severa para combinar classificadores

• Basta que um dos classificadores não esteja de acordo com a decisão dos outros que o resultado final será penalizado.

)|( ik xP

Page 16: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 16

Soma

• Como o nome diz, a soma consiste em somar todas as estimações de todos os classificadores envolvidos.

• Não é drástica como o produto.

• Resultados experimentais [Kittler 98] mostram que a soma apresenta resultados bastante robustos.

)|( ik xP

Page 17: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 17

Min, Max

• Os resultados encontrados pelo Min, são bastante similares aos resultados encontrados com o produto.

• A regra do max considera somente o classificador que maximiza a estimação de probabilidade.

))|(min( ik xP

))|(max( ik xP

Page 18: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 18

Média

• Resultado médio de todos os classificadores.– Juntamente com a soma, geralmente produz os

melhores resultados [Kittler 98]

• Bem menos drástica que o produto, porém pode ser afetada por classificadores que predizem resultados errados – Outliers por exemplo.

)|(1

ik xPR

Page 19: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 19

Ensembles

• Um conjunto de classificadores gerado automaticamente

• Melhor desempenho do que um classificador único

• Baseado na idéia de diversidade– Quanto mais diversidade estiver presente no

ensemble, melhor será o resultado.• Métodos clássicos

– Bagging– Boosting– Seleção de características– Subespaços aleatórios

Page 20: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 20

Bagging

• Cria classificadores para o ensemble a partir de uma redistribuição do conjunto de treinamento.

• O conjunto de treinamento de cada classificador é gerado selecionando-se aleatoriamente os exemplos da base de aprendizagem com reposição.

Bases geradas por Bagging

Page 21: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 21

Bagging

• Como pode-se observar, alguns exemplos não são selecionados para algumas bases– Por exemplo, 4 na primeira base

• Isso faz com que provavelmente o classificador treinando com essa base tenha um erro maior do que o classificador treinado com a base original

• Na realidade a maioria dos classificadores bagging terão erro maior

Page 22: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 22

Bagging

• Entretanto, na média, Bagging deve superar o classificador treinado na base original.

• Bagging é bastante interessante para algoritmos de aprendizagem instáveis – Uma pequena mudança na base pode gerar

grandes mudanças nas predições do algoritmo

• Redes neuronais, árvores de decisão.

Page 23: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 23

Boosting

• O conjunto de treinamento de cada classificador é escolhido de acordo com o desempenho do classificador anterior.

• Os exemplos que são classificados erroneamente pelos classificadores anteriores são escolhidos mais frequentemente.

• Em outras palavras, novos classificadores são produzidos para mitigar o desempenho dos classificadores anteriores.

Page 24: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 24

Boosting

Suponha que nesse caso 1, seja um outlier, consequentemente umexemplo difícil de ser classificado.

Sendo assim, a tendência é que ele apareça com mais frequência na basede aprendizagem.

A implemetação mais comum de Boosting é o AdaBoost.

Page 25: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 25

Bias / Variância

• Como vimos até agora, o objetivo da aprendizagem não é construir uma representação exata dos dados, mas sim um modelo com alta capacidade de generalização.– Modelos com poucos parâmetros (underfitting)

apresentam fraco desempenho– Modelos com muitos parâmetros (overrfitting)

apresentam fraco desempenho

• Uma maneira de entender melhor o desempenho dos classificadores é decompor o erro em bias e variância.

Page 26: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menottiq 26

Bias / Variância

Page 27: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 27

Bias / Variância

• Bias– Mede a distância do resultado do

classificador do seu objetivo

• Variância– A variância entre os resultados dos

classificadores (quão frequente eles divergem)

• Bagging / Boosting – Capacidade de reduzir ambos os erros

Page 28: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 28

Seleção de Características

• Como visto anteriormente, os métodos de seleção de características tem como objetivo encontrar um subconjunto ótimo de características

• Vários subconjuntos ótimos ou quase ótimos podem existir.

• Ensemble Feature Selection– Consiste em utilizar diferentes subconjuntos gerados

durante a seleção de característica para construir um Ensemble

Page 29: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 29

Seleção de Características

010 20 30 40 50 60 70 80 90 100

10

20

30

40

50

60

70

80

90

100

weak

medium

strong

Number of Features

Err

or R

ate

(%)

Considere o conjunto de classificadores gerado pela seleção decaracterísticas baseado em algoritmos genéticos multi-objetivos.

Classificadoresfracos e médiosnão trazem benefícios

Page 30: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 30

Seleção de Características

1st Level Pareto 2nd-Level Population

1

2

n

Page 31: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 31

Subespaços Aleatórios

• Dado um conjunto inicial de características, essa técnica consiste em selecionar N característica aleatórias para construir um ensemble de tamanho M

1 2 3 4 5 6 7 8

1 3 4 67 832

4 5 6 8

3 5 6 7

Conjunto inicial

Subespaços

Fusão Decisão

Média

Page 32: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 32

Subespaços Aleatórios

• Experimentos mostram que os subespaços conseguem resultados melhores do que um único classificador treinado com o classificador inicial

• Quanto maior o tamanho do ensemble, maior é a complexidade, entretanto.

• A ideia é que a diversidade dos classificadores pode trazer benefícios para a decisão final.– Combinação de classificadores fracos

Page 33: Reconhecimento de Padrões Combinando Classificadores David Menotti, Ph.D.  Universidade Federal de Ouro Preto (UFOP) Programa

Reconhecimento de PadrõesUFOP-PPGCC - Prof. David Menotti 33

Referências Bibliográficas• Kittler, Hatef, Duin & Matas

On Combining Classifiers,IEEE Transactions on Pattern Analysis and Machine Intelligence,vol 20, n.3, pp.226-240, 1998.

• Ho,The Random Subspace Method for Constructing Decision Forests,IEEE Transactions on Pattern Analysis and Machine Intelligence,vol. 20, n.8, pp. 832-844, 1998.

• Kittler,Combining Classifiers: A theoretical framework, Pattern Analysis & Applications, vol.1, n.1, pp 18-27, 1998.

• Bishop,Pattern Recognition and Machine Learning,Springer, 2006, Capítulo 14.

• Duda, Hart & SortkPattern Classification, 2nd, Wiley & Sons, 2000, Capítulo 9 (9.5, 9.6 & 9.7).

• Theodoridis & Koutroumbas,Pattern Recognition,4th, Academic Press, 2009, Capítulo 4 (4.21 & 4.22)