Você está na página 1de 43

SISTEMAS BASEADOS EM

ENSEMBLES DE
CLASSIFICADORES
INTRODUO PROCESSO DE
TOMADA DE DECISES
Procuramos uma segunda, terceira ou quarta opinio.
Tratando de assuntos financeiros, mdicos, sociais entre
outros.
Atribumos pesos/valores a cada opinio;
Com a combinao das opinies se espera obter uma
opinio que seja a mais bem informada de todas;
O processo de consultar alguns especialistas antes de
tomar uma deciso um processo da natureza humana.
Apenas recentemente esse processo foi descoberto pela
comunidade de inteligncia computacional.
Ensemble based systems (EBS)
Tambm conhecido sobe vrios outros nomes:
Multiple
classifier systems, committee of classifiers, ou
mixture of experts.
Tem mostrado produzir resultados favorveis
comparados a sistemas com um nico especialista;
Bons resultados so encontrados em vrias

aplicaes em uma larga variedade de cenrios;


Projeto, implementao e aplicao de tais sistemas

so os principais tpicos desta aula.


Razes para Utilizar EBS
Razes Estatsticas
Quando se trabalha com Redes Neurais ou classificadores
automatizados:
Um bom desempenho no conjunto de treinamento no prediz um bom
desempenho de generalizao;
Um conjunto de classificadores com desempenhos similares no
conjunto de classificao podem ter diferentes desempenhos de
generalizao;
Mesmo classificadores com desempenhos de generalizao similares
podem trabalhar diferentemente;
A combinao das sadas produzidas pelos classificadores reduz
o risco de uma escolha infeliz por um classificador com um pobre
desempenho
No seguir apenas a recomendao de um nico especialista.
Razes para Utilizar EBS (cont.)
Grandes volumes de dados
Aquantidade de dados a serem analisados pode ser muito
grande para serem efetivamente manipulados por um nico
classificador;
Anlise de transmisso de gs para deteco de vazamento
podem gerar 10GB a cada 100km;
Projeto similar na UFPE, a cada minuto 2000 vetores com 300
dimenses so coletados;
DNA
Mais apropriados particionar os dados em sub-conjuntos e
treinar diferentes classificadores com diferentes parties
dos dados e ento combinar as sadas com uma inteligente
regra de combinao
Geralmente tal estratgia tem se mostrado a mais eficaz.
Razes para Utilizar EBS (cont.)
Pequenos volumes de dados
EBS tambm podem ser usados diretamente no trabalho em
problemas que possuem poucos dados;
A disponibilidade de dados para o treinamento de
classificadores de fundamental importncia para a
obteno de sucesso;
Quando h ausncia de dados de treinamento tcnicas de
re-amostragem podem ser utilizadas para a criao de
subconjuntos de dados aleatrios sobrepostos em relao
aos dados disponveis;
Cada subconjunto utilizado para treinar diferentes
classificadores e ento criar ensembles com desempenhos
comprovadamente melhores a modelos solo.
Razes para Utilizar EBS (cont.)
Dividir e Conquistar
Independente da quantidade de dados alguns problemas
so muito difceis de serem resolvidos por um dado
classificador:
Razes para Utilizar EBS (cont.)
Dividir e Conquistar
A fronteira de deciso que separa os dados de diferentes classes pode
ser muito complexa ou estar fora do escopo do classificador.
Razes para Utilizar EBS (cont.)
Dividir e Conquistar
A idia que o sistema de classificao siga a
abordagem dividir-para-conquistar;
O espao de dados dividido em pores menores e
mais fceis de aprender por diferentes
classificadores;
Assim a linha base da fronteira de deciso pode ser
aproximada por meio de uma combinao apropriada
dos diferentes classificadores.
Razes para Utilizar EBS (cont.)
Fuso dos dados
A natureza das caractersticas/atributos dos dados
heterognea;
Diagnsticos de distrbios neurolgicos: Exames de
sangue, Ressonncia Magntica, Eletro encefalograma
etc.
Desconhecimento das fontes e forma de coleta dos
dados;
Descoberta de caractersticas no consideradas na
rotulao dos dados do problema.
Razes para Utilizar EBS (cont.)
Seleo de modelo
Considerada a principal razo para o uso de EBS
Qual o classificador mais apropriado para um dado
problema de classificao?
Qual o tipo?: MLP, SVM, rvores de Deciso, Naive Bayes
etc.
Qual a configurao?: diferentes inicializaes, diferentes
amostragens dos dados, etc.
Os indivduos do EBS DEVEM exibir diversidade!
EBS - HISTRICO
Primeiro trabalho datado de 1979 por Dasarathy e
Sheela com discusso sobre o particionalmento do
espao de caractersticas usando dois ou mais
classificadores;
Em 1990, Hansen e Salamon mostraram que a
generalizao de uma rede neural pode melhorar
usando ensembles;
Surgimento dos algoritmos de Bagging, Boosting,
AdaBoost, novas abordagens, etc.
Livro sobre Combining Pattern Classifiers: Methods and
Algorithms por Ludmila I. Kuncheva em 2004.
EBS - Diversidade
O sucesso de um EBS, a habilidade em corrigir erros de
alguns de seus membros, depende fortemente da
diversidade do classificadores que o compem;
Cada classificador DEVE fazer diferentes erros em
diferentes instncias dos dados;
A idia construir muitos classificadores e ento
combinar suas sadas de modo que o desempenho final
seja melhor do que o desempenho de um nico
classificador;
A diversidade de classificadores pode ser obtida de
diferentes formas;
EBS DIVERSIDADE (CONT.)
Uso de diferentes conjuntos de dados de treinamentos:
Os subconjuntos so normalmente obtidos por meio de
tcnicas de resampling como bootstrapping ou bagging, na
maioria das vezes com reposio.
Classificadores Instveis so usados para garantir que as
fronteiras geradas pelos indivduos so adequadamente
diferentes, mesmo usando dados de treinamento
substancialmente similares;
Se os subconjuntos so gerados sem reposio ento o
processo se chama K-fold;
O conjunto de treinamento dividido em k blocos e cada
classificador treinado em k-1 deles;
EBS DIVERSIDADE (CONT.)
EBS DIVERSIDADE (CONT.)
Outra abordagem para se obter diversidade o uso
de diferentes parmetros de treinamento para
diferentes classificadores:
Redes Neurais
Usando diferentes conjuntos de pesos iniciais; numero de
camadas/nodos; funes de ativao; algoritmos de treinamento
e seus parmetros.
Usar diferentes tipos de classificadores;
Usar diferentes conjuntos de caractersticas;
A forma mais tratvel, usada e recomendada para
inserir diversidade em um EBS atravs da
manipulao do conjunto de treinamento.
EBS MEDIDAS DE DIVERSIDADE
Existem propostas para avaliar quantitativamente a
diversidades dos classificadores;
Uma das mais simples a medida por pares. Para T
classificadores podemos calcular T(T-1)/2 medidas de
diversidade pareadas, ento a diversidade total do
ensemble pode ser obtida pela mdia dos pares;
Dada duas hipteses Hi e Hj:

Onde a + b + c + Hj
d= correto
1. Hj incorreto
Hi correto a c
Hi incorreto b d
EBS MEDIDAS DE DIVERSIDADE (CONT.)
Correlao:a diversidade medida como a
correlao entre as sadas de dois classificadores

Q-Statistic

Qij = (ad bc)/(ad + bc)


Q assume valores positivos se as instncias
so corretamente classificadas por ambos os
classificadores e valores negativos caso
contrrio;
Assim como na correlao uma alta
diversidade obtida com 0.
EBS MEDIDAS DE DIVERSIDADE (CONT.)
Medidas de desacordo e falta dupla
Dij = b + c
DFij = d.

Entropia

N a cardinalidade da base; T numero de classificadores; [.]


operador ceiling e zeta o no. de classif. que classificam
incorretamente um padrao Xi
A entropia varia entre 0 e 1: 0 indica que todos os
classificadores so praticamente os mesmos e 1 indica uma alta
diversidade
Varincia de Kohavi-Wolpert similar a Dij.
EBS DOIS COMPONENTES CHAVE

Escolha da estratgia para a construo de um EBS


composto por classificadores o mais diverso quanto
possvel:
Algumasestratgias so: Bagging, Boosting, AdaBoost,
Stacked Generalization e Mixture of Experts.

Estratgia necessria para a combinao das


sadas de cada classificador que compem o EBS:
Combinao que deve amplificar a quantidade de
decises corretas e anular as ocorrncia das incorretas.
Criando um Ensemble
Como os classificadores sero gerados?
Como tais classificadores iro diferir entre eles?
Respostas -> determinaro a diversidade dos
classificadores = performance final do EBS;
Uma estratgia para gerao dos membros de um EBS
DEVE buscar uma melhora da diversidade;
No existe uma nica medida de diversidade aceita
uniformemente;
O aumento da diversidade em EBS tratado com um
problema de busca - com emprego de heursticas -
usando procedimentos de resampling ou seleo de
diferentes parmetros de treinamento.
Algoritmo Bagging
O primeiro algoritmo para a construo de EBS;
Possui uma implementao simples e intuitiva;
A diversidade obtida com o uso de diferentes
subconjuntos de dados aleatoriamente criados com
reposio;
Cada subconjunto usado para treinar um classificador
do mesmo tipo;
As sadas dos classificadores so combinadas por meio
do voto majoritrio com base em suas decises;
Para uma dada instncia, a classe que obtiver o maior
nmero de votos ser ento a resposta.
Algoritmo Bagging
ALGORITMO BAGGING - VARIAES

Random Forests
Usado para a construo de EBS com rvores de deciso;
Variao da quantidade de dados e caractersticas;

Usando rvores de deciso com diferentes inicializaes;

Pasting Small Votes


Segue a idia do bagging, mas voltado para grande
volumes de dados;
A base de dados dividida em subconjuntos chamados de
bites;
Trabalha com as instncias mais informadas.
Algoritmo Boosting
Criado em 1990 por Schapire considerado o
mais importante desenvolvimento na histria
recente da aprendizagem de mquina;
Tambm cria EBS por meio da re-amostragem dos
dados;
A re-amostragem estrategicamente criada para
prover o conjunto de treinamento mais informativo
para cada classificador;
Normalmente o EBS possui apenas trs
classificadores;
Comprovadamente a performance do EBS
melhor que a performance do melhor indivduo.
Algoritmo Boosting
Algoritmo AdaBoost
O Adaptive Boosting foi criado por Freund and
Schapire em 1997;
uma verso mais genrica do algoritmo de boosting
original;
Foram criados os AdaBoost.M1 e AdaBoost.R para
manipulao de mltiplas classes e para problemas de
regresso, respectivamente;
O AdaBoost gera um conjunto de hipteses e as
combina por meio da votao ponderada;
As hipteses so geradas por meio do treinamento de
classificadores usando uma distribuio dos dados
iterativamente ajustada.
Stacked Generalization
Como aprender a forma de erro e acerto dos
classificadores?
Como mapear as sadas dos classificadores em relao
as sadas verdadeiras?
Os classificadores do EBS so criados usando k-fold,
por exemplo;
As sadas desses classificadores so usadas como
entrada para um meta-classificador com o objetivo de
aprender o mapeamento entre as sadas e as classes
corretas;
Aps o treinamento do meta-classificador os
classificadores primrios so re-treinados.
Stacked Generalization
Mixture of experts
Similar ao Stacked Generalization aonde existe um
classificador extra ou meta-classificador;
Neste caso o classificador no segundo nvel usado
para atribuir pesos aos classificadores;
Atualiza a distribuio dos pesos que utilizada pelo
mdulo de combinao das decises;
O classificador secundrio normalmente uma gating
networks treinada com gradiente descendente ou
Expectation Maximization (EM);
Tem-se uma regra de combinao dinmica;
Os classificadores devem gerar sadas em valores
contnuos.
Mixture of experts
MTODOS DE COMBINAO
Mtodos Algbricos
Mdia
Mdia ponderada
Soma
Soma ponderada
Produto
Mximo
Mnimo
Mediana
Mtodos baseados em votao
Votao Majoritria
Votao Majoritria Ponderada
Borda count
Random Forests
Ensemble method specifically designed for decision
tree classifiers
Random Forests grows many classification trees

Ensemble of unpruned decision trees

Each base classifier classifies a new vector

Forest chooses the classification having the most


votes (over all the trees in the forest)
Random Forests
Utiliza dois tipos de aleatoriedade: Bagging e
Random input vectors
Cada rvore gerada usando amostras bootstrap do
conjunto de treinamento
Em cada n, o melhor split escolhido de uma amostra
de mtry atributos, ao invs de todos os atributos
Random Forests
Random Forest Algorithm
M input variables, a number m<<M is specified such
that at each node, m variables are selected at
random out of the M and the best split on these m is
used to split the node.
m is held constant during the forest growing

Each tree is grown to the largest extent possible


m=M
There is no pruning

Bagging using decision trees is a special case of

random forests when


Random Forest Algorithm
Out-of-bag (OOB) error
Boa preciso sem over-fitting

Algoritmo rpido; facilmente paralelizvel

Trata dados de alta dimensionalidade sem maiores

problemas
Only one tuning parameter mtry = , usually not
sensitive to it
EBS - Questes
Qual a melhor estratgia para insero de
diversidade?
Alguns
estudos o mtodo de boosting se mostra melhor na
mdia, porm muito sensvel a rudos e outliers;
Qual oNo Free
melhor Lunch
mtodo Theorem!
de combinao das decises?
Totalmente dependente do problema a ser resolvido;
Muitos preferente o uso da mdia, devido a sua
simplicidade e desempenho consistente;
Mtodo baseados em votao so cada vez mais
encontrados em trabalhos recentes.
EBS REAS EMERGENTES
Aprendizagem incremental
Aprender sem esquecer o que foi aprendido
Fuso de dados
Trabalhar com diferentes fontes de dados
Seleo de caractersticas
Encontrar a quantidade de caractersticas apropriadas
Error Correcting Outputs Codes
Decomposio de problemas multiclasses
Confidence Estimation
O quo segura a deciso tomada pelo EBS
Uso em ambientes dinmicos e para aprendizagem no
supervisionada
REFERNCIA BIBLIOGRFICAS
S. Haykin, Neural Networks: A Comprehensive
Foundation. Prentice Hall, 1999.
R. Polikar, Ensemble based systems in decision making,
IEEE Circuits and Systems Magazine, vol. 6, no. 3, pp.
2145, Quarter 2006.
L. Kuncheva, Combining pattern classifiers: methods and
algorithms. Wiley-Interscience, 2004.
T. Dietterich, Ensemble methods in machine learning, in
Proceedings of the First International Workshop on
Multiple Classifier Systems. London, UK: Springer-Verlag,
2000, pp. 115.

Você também pode gostar