Classificadores de base para impulsionar

8

Algoritmos de reforço, como o AdaBoost , combinam vários classificadores 'fracos' para formar um único classificador mais forte. Embora em teoria o aumento deva ser possível com qualquer classificador de base, na prática parece que os classificadores baseados em árvore são os mais comuns.

Por que é isso? Quais propriedades dos classificadores de árvore os tornam mais adequados para esta tarefa? Existem outros classificadores de base que também se beneficiam muito com o aumento? Pergunto com problemas de classificação em mente, mas também estaria interessado em respostas relativas a aplicações de regressão.

Martin O'Leary
fonte

Respostas:

10

Tenho certeza de que você está correto e que não há razão que exija necessariamente o uso de árvores de decisão em vez de outros classificadores. Dito isto, acho que existem algumas razões pelas quais elas são frequentemente usadas. A velocidade é um fator: aumentar pode exigir o treinamento de muitos classificadores. Se cada uma for uma rede neural gigante de várias camadas, todo o procedimento será muito lento.

Mais importante, acho que as árvores de decisão são "boas o suficiente". Como toda a idéia por trás do impulsionamento é agrupar classificadores fracos , não há um grande incentivo para uma solução pesada que possa exigir mais ajustes (por exemplo, mexer nos hiperparâmetros e no kernel para SVMs).

Finalmente, as árvores de impulso e decisão são, pelo menos na minha cabeça, um pouco conceitualmente semelhantes (por exemplo, adicione um nó / construa um novo classificador). Muitas das coisas de aprendizado do conjunto parecem usar árvores. Eu acho que você poderia ter uma "floresta aleatória" de alunos de Naive Bayes, se realmente quisesse.

Matt Krause
fonte
1
Eu não estava totalmente certo sobre isso, mas esta discussão chega a conclusões semelhantes: stats.stackexchange.com/questions/13597/...
Matt Krause
Eu acho que a velocidade pode ser um arenque vermelho aqui - na maioria das vezes eu prefiro ter um classificador mais preciso do que algo que é um pouco mais rápido de treinar. Afinal, o tempo de CPU é bastante barato hoje em dia.
Martin O'Leary
É verdade, embora o apelo do aumento seja que você possa obter previsões rápidas e precisas com métodos que normalmente só podem fornecer previsões rápidas. Dito isto, eu deveria ter enfatizado-los nesta ordem: Good enough> Velocidade> tudo o que está acontecendo na minha cabeça :-)
Matt Krause
Entendo o que você está dizendo, mas ainda sinto que "bom o suficiente" é uma resposta pouco satisfatória. No entanto, entendo a falta de mexer com parâmetros hiper.
Martin O'Leary
9

Existem algumas características que podem adicionar insights à compreensão dos métodos de conjunto.

Ensacamento

Provavelmente, o método mais simples de ensemble, ensacamento, que nada mais é do que uma coleção de classificadores homogêneos semelhantes, criados com base em dados de treinamento reamostrados e mantidos juntos por um método de combinação, melhora a variação causada pela instabilidade nos classificadores de base, calculando a média de suas saídas. O conjunto aproveita essa instabilidade para abordar o componente de variação do erro do classificador de base e, em menor grau, seu viés.

Você pode pensar em ensacamento como fornecendo um grau significativo de suavização ao que de outra forma seria um classificador base "fraco" muito instável. Uma razão, além de sua tendência à eficiência computacional, o motivo pelo qual os classificadores fracos são escolhidos é que eles exibem maior diversidade, o que é uma característica benéfica para conjuntos.

Se você visualizar um conjunto ensacado cheio de classificadores estáveis ​​muito fortes, eles terão um alto grau de concordância em suas classificações de exemplos apresentados ao ensemble. De fato, todos votam da mesma maneira. Um comitê no qual todos os membros votam da mesma forma tem pouca utilidade sobre qualquer membro do comitê.

Portanto, para trabalhar efetivamente, um conjunto deve abraçar um grau de diversidade entre seus membros. Claramente, um comitê de membros que emite opiniões quase aleatórias também não é de grande utilidade. Portanto, procura-se uma posição intermediária entre esses extremos.

Na prática, como não existe uma teoria completa sobre o assunto, esse compromisso é encontrado usando métodos empíricos, como validação cruzada ou ensaios clínicos. Eles são usados ​​para medir uma força adequada para o classificador de base.

Como essa busca por um conjunto ótimo normalmente envolve parâmetros de ajuste dos classificadores de base e do próprio conjunto, é desejável que o número desses parâmetros seja mantido o menor possível. Caso contrário, a dimensionalidade do espaço de pesquisa de parâmetros significa rapidamente que encontrar o mínimo global é computacionalmente intratável. As árvores de decisão são uma escolha popular porque, como foi mencionado, elas podem ser usadas efetivamente sem necessariamente ajustar qualquer um de seus parâmetros.

Florestas aleatórias

As florestas aleatórias, que são principalmente árvores de decisão em saco, aproveitam a instabilidade significativa das árvores ao injetar um forte componente estocástico [as permutações de um pequeno número de características / fatores em cada nó de decisão dentro de uma árvore] para criar diversidade dentro do conjunto. Como cada nó de uma árvore é apresentado com uma nova seleção aleatória de recursos, as árvores são altamente diversas. O conjunto então tem o efeito de calcular a variação e o viés da diversa coleção de árvores.

Para ser eficaz, uma "floresta aleatória" de classificadores ingênuos de Bayes, ou qualquer outro classificador de base estável, como SVMs, precisa da adição de elemento estocástico. Para classificadores estáveis, variações relativamente pequenas nos dados de treinamento, como as provenientes de ensacamento, levam a classificadores muito semelhantes.

Para aumentar a diversidade, outras abordagens poderiam ser aplicadas. Por exemplo, permutando os recursos mostrados para cada classificador base. Isso tem uma restrição de que a diversidade disponível significativa seja mantida para o número de combinações do conjunto de recursos. Uma vez esgotadas as combinações, não há novos classificadores disponíveis para o grupo que votariam diferentemente nos membros existentes.

Para problemas com relativamente poucos recursos, isso limita severamente o pool de classificadores disponível. Seria possível injetar outras fontes de aleatoriedade, digamos, sub-amostrando agressivamente os dados do treinamento. A evidência parece ser que, no caso geral, essa abordagem é inferior à mistura particular de preconceito e diversidade que uma floresta aleatória oferece.

É possível utilizar com sucesso outros classificadores de base instáveis, como perceptrons de múltiplas camadas (redes neurais) que possuem poucos nós e quantidades restritas de treinamento ou abordagens de preenchimento de espaço baseado em pontos, por exemplo, discriminação estocástica, para injetar diversidade nos métodos de conjuntos. Certamente, no caso de MLPs, é essencial um certo grau de ajuste dos parâmetros.

Impulsionar

O reforço tem uma abordagem diferente para a construção do conjunto do que o modelo aglomerado simples adotado por Bagging. Suponho que, conceitualmente, se você pensa em ensacamento como um modelo de conjunto plano, o impulso constrói um classificador em camadas.

Cada rodada de reforço escolhe um novo classificador dentre um conjunto de classificadores em potencial construídos a partir de dados de treinamento ponderados ou reamostrados, de acordo com as classificações incorretas da rodada anterior. O novo classificador é selecionado para minimizar o erro total do conjunto.

Isso contrasta fortemente com a falta de critérios de seleção remanescentes na construção aleatória de conjuntos florestais. Cada novo classificador de base é especificamente necessário para se concentrar nos pontos fracos do conjunto existente, com o resultado de que o aumento agressivo reduz erros de treinamento.

Nos estágios iniciais do aumento da construção de conjuntos, há poucos classificadores fracos e cada um é focado em diferentes áreas do espaço de treinamento, o efeito disso é reduzir principalmente o viés. À medida que o tamanho do conjunto aumenta, o escopo para a redução do viés diminui e o erro da variação é aprimorado.

O benefício da instabilidade no classificador de base para impulsionar é que, à medida que o conjunto cresce, o número de exemplos mal classificados restantes cai. É necessário um maior grau de diversidade para gerar um classificador que adote uma visão útil útil das amostras restantes em relação aos seus antecessores.

O poder dessa abordagem pode ser visto pelo fato de que resultados aceitáveis ​​podem ser alcançados apenas com tocos de decisão, embora os MLPs tenham se mostrado muito eficazes em geral.

Devido a esse foco constante nos exemplos mal classificados, a fraqueza do aumento é que ele pode ser suscetível a ruídos, em certa medida o logitboost tenta solucionar essa falha.

Sem almoço grátis

Vale lembrar que não existe uma grande teoria unificada do aprendizado de máquina e que os resultados de qualquer classificador em particular dependem muito do tipo de dados com os quais são usados. Portanto, a priori, não há nenhuma razão forte e rápida para afirmar que um tipo de classificador é superior a outro, além do consenso derivado de experiências anteriores com dados semelhantes e do utilitário geral mostrado por um algoritmo em uma variedade de conjuntos de dados. Para obter uma boa solução, convém experimentar algumas abordagens populares.

image_doctor
fonte
1 para mencionar NFL, mas eu diria que NFL é o 'grande teoria unificada' de aprendizagem de máquina, ou o mais próximo coisa tal como estamos sempre propensos a ver ...
John Doucette