Bagging vs Boosting em Machine Learning: Diferença entre Bagging e Boosting

Publicados: 2020-11-12

Devido à proliferação de aplicativos de aprendizado de máquina e um aumento no poder de computação, os cientistas de dados implementaram algoritmos inerentemente aos conjuntos de dados. A chave para a qual um algoritmo é implementado é a maneira como o viés e a variância são produzidos. Modelos com baixo viés são geralmente preferidos.

As organizações usam técnicas de aprendizado de máquina supervisionado, como árvores de decisão, para tomar melhores decisões e gerar mais lucros. Diferentes árvores de decisão, quando combinadas, formam métodos conjuntos e fornecem resultados preditivos.

O principal objetivo de usar um modelo ensemble é agrupar um conjunto de alunos fracos e formar um aluno forte. A forma como isso é feito é definida nas duas técnicas: Bagging e Boosting que funcionam de forma diferente e são usadas de forma intercambiável para obter melhores resultados com alta precisão e exatidão e menos erros. Com métodos de conjunto, vários modelos são reunidos para produzir um modelo poderoso.

Esta postagem no blog apresentará vários conceitos de aprendizagem em conjunto. Primeiro, entender o método ensemble abrirá caminhos para métodos relacionados ao aprendizado e projetar soluções adaptadas. Além disso, discutiremos os conceitos estendidos de Bagging e Boosting para uma ideia clara para os leitores sobre como esses dois métodos diferem, suas aplicações básicas e os resultados preditivos obtidos de ambos.

Participe dos cursos on- line de aprendizado de máquina das principais universidades do mundo - mestrados, programas de pós-graduação executiva e programa de certificação avançada em ML e IA para acelerar sua carreira.

Índice

O que é um método de conjunto?

O ensemble é um método usado no algoritmo de aprendizado de máquina. Neste método, vários modelos ou 'aprendizes fracos' são treinados para corrigir o mesmo problema e integrados para obter os resultados desejados. Modelos fracos combinados corretamente fornecem modelos precisos.

Primeiro, os modelos básicos são necessários para configurar um método de aprendizado de conjunto que será agrupado posteriormente. Nos algoritmos Bagging e Boosting, é usado um algoritmo de aprendizado de base única. A razão por trás disso é que teremos alunos fracos e homogêneos à mão, que serão treinados de maneiras diferentes.

O modelo ensemble feito desta forma será eventualmente chamado de modelo homogêneo. Mas a história não termina aqui. Existem alguns métodos nos quais diferentes tipos de algoritmos de aprendizado básico também estão implícitos com aprendizes fracos heterogêneos fazendo um 'modelo de conjunto heterogêneo'. Mas neste blog, vamos lidar apenas com o antigo modelo de ensemble e discutir os dois métodos de ensemble mais populares aqui.

  1. Bagging é um modelo homogêneo de aprendizes fracos que aprende uns com os outros independentemente em paralelo e os combina para determinar a média do modelo.
  2. Boosting também é um modelo homogêneo de alunos fracos, mas funciona de forma diferente do Bagging. Neste modelo, os alunos aprendem sequencialmente e de forma adaptativa para melhorar as previsões do modelo de um algoritmo de aprendizagem.

Isso foi Bagging e Boosting de relance. Vamos olhar para ambos em detalhes. Alguns dos fatores que causam erros no aprendizado são ruído, viés e variância. O método ensemble é aplicado para reduzir esses fatores resultando na estabilidade e precisão do resultado.

Leia também: Ideias de projetos de aprendizado de máquina

Acondicionamento

Bagging é um acrônimo para 'Bootstrap Aggregation' e é usado para diminuir a variação no modelo de previsão. Bagging é um método paralelo que se adapta a diferentes aprendizes considerados independentemente uns dos outros, tornando possível treiná-los simultaneamente.

Bagging gera dados adicionais para treinamento a partir do conjunto de dados. Isso é obtido por amostragem aleatória com substituição do conjunto de dados original. A amostragem com substituição pode repetir algumas observações em cada novo conjunto de dados de treinamento. Cada elemento no Bagging é igualmente provável de aparecer em um novo conjunto de dados.

Esses conjuntos de dados múltiplos são usados ​​para treinar vários modelos em paralelo. A média de todas as previsões de diferentes modelos de conjunto é calculada. O voto majoritário obtido com o mecanismo de votação é considerado quando a classificação é feita. O ensacamento diminui a variação e ajusta a previsão a um resultado esperado.

Exemplo de ensacamento:

O modelo Random Forest utiliza Bagging, onde estão presentes modelos de árvore de decisão com maior variância. Faz seleção aleatória de recursos para cultivar árvores. Várias árvores aleatórias formam uma Floresta Aleatória.

Impulsionando

Boosting é um método de conjunto sequencial que ajusta iterativamente o peso da observação de acordo com a última classificação. Se uma observação for classificada incorretamente, aumenta o peso dessa observação. O termo 'Boosting' em uma linguagem leiga, refere-se a algoritmos que convertem um aluno fraco em um mais forte. Ele diminui o erro de viés e cria modelos preditivos fortes.

Os pontos de dados previstos incorretamente em cada iteração são identificados e seus pesos são aumentados. O algoritmo Boosting aloca pesos para cada modelo resultante durante o treinamento. Um aluno com bons resultados de previsão de dados de treinamento receberá um peso maior. Ao avaliar um novo aluno, o Boosting acompanha os erros do aluno.

Exemplo de reforço:

O AdaBoost utiliza técnicas de Boosting, onde é necessário um erro 50% menor para manter o modelo. Aqui, o Boosting pode manter ou descartar um único aluno. Caso contrário, a iteração é repetida até alcançar um melhor aprendiz.

Semelhanças e Diferenças entre Bagging e Boosting

Bagging e Boosting, sendo ambos os métodos popularmente utilizados, possuem uma semelhança universal de serem classificados como métodos ensemble. Aqui vamos destacar mais semelhanças entre eles, seguidas das diferenças que eles possuem entre si. Vamos começar com as semelhanças, pois entendê-las facilitará a compreensão das diferenças.

Bagging e Boosting: Semelhanças

  1. Bagging e Boosting são métodos de conjunto focados em obter N alunos de um único aluno.
  2. Bagging e Boosting fazem amostragem aleatória e geram vários conjuntos de dados de treinamento
  3. Bagging e Boosting chegam à decisão final fazendo uma média de N alunos ou tomando a classificação de votação feita pela maioria deles.
  4. Bagging e Boosting reduzem a variação e fornecem maior estabilidade com a minimização de erros.

Leia: Modelos de aprendizado de máquina explicados

Bagging e Boosting: Diferenças

Como já dissemos,

Bagging é um método de mesclar o mesmo tipo de previsões. Boosting é um método de mesclar diferentes tipos de previsões.

O ensacamento diminui a variação, não o viés, e resolve problemas de ajuste excessivo em um modelo. Aumentar diminui o viés, não a variância.

No Bagging, cada modelo recebe um peso igual. No Boosting, os modelos são pesados ​​com base em seu desempenho.

Os modelos são construídos independentemente no Bagging. Novos modelos são afetados pelo desempenho de um modelo construído anteriormente no Boosting.

No Bagging, os subconjuntos de dados de treinamento são sorteados aleatoriamente com um substituto para o conjunto de dados de treinamento. No Boosting, cada novo subconjunto compreende os elementos que foram classificados erroneamente pelos modelos anteriores.

O ensacamento geralmente é aplicado onde o classificador é instável e possui alta variância. Boosting geralmente é aplicado onde o classificador é estável e simples e tem alto viés.

Bagging e Boosting: um resumo conclusivo

Agora que descrevemos detalhadamente os conceitos de Bagging e Boosting, chegamos ao final do artigo e podemos concluir como ambos são igualmente importantes em Data Science e onde a aplicação em um modelo depende dos conjuntos de dados fornecidos, sua simulação e as circunstâncias dadas. Assim, por um lado, num modelo Random Forest, utiliza-se Bagging, e o modelo AdaBoost implica o algoritmo Boosting.

O desempenho de um modelo de aprendizado de máquina é calculado comparando sua precisão de treinamento com a precisão de validação, que é obtida dividindo os dados em dois conjuntos: o conjunto de treinamento e o conjunto de validação. O conjunto de treinamento é usado para treinar o modelo e o conjunto de validação é usado para avaliação.

Você pode verificar o Programa PG Executivo do IIT Delhi em Machine Learning em associação com o upGrad . IIT Delhi é uma das instituições de maior prestígio na Índia. Com mais de 500 membros do corpo docente interno que são os melhores nos assuntos.

Por que ensacar é melhor do que impulsionar?

A partir do conjunto de dados, o bagging cria dados extras para treinamento. A amostragem aleatória e a substituição do conjunto de dados original são usadas para conseguir isso. Em cada novo conjunto de dados de treinamento, a amostragem com substituição pode repetir certas observações. Cada elemento Bagging tem a mesma chance de emergir em um novo conjunto de dados. Vários modelos são treinados em paralelo usando esses vários conjuntos de dados. É a média de todas as previsões de vários modelos de conjunto. Na determinação da classificação, é considerado o voto majoritário obtido no processo de votação. O ensacamento reduz a variação e ajusta a previsão para um resultado desejado.

Como são as principais diferenças de ensacamento e boosting?

Bagging é uma técnica para reduzir a variação de previsão produzindo dados adicionais para treinamento de um conjunto de dados, combinando repetições com combinações para criar vários conjuntos dos dados originais. Boosting é uma estratégia iterativa para ajustar o peso de uma observação com base na classificação anterior. Ele tenta aumentar o peso de uma observação se ela foi categorizada erroneamente. Boosting cria bons modelos preditivos em geral.

Quais são as semelhanças entre ensacar e impulsionar?

Bagging e boosting são estratégias de conjunto que visam produzir N aprendizes a partir de um único aprendiz. Eles amostram aleatoriamente e criam muitos conjuntos de dados de treinamento. Eles chegam à sua decisão final calculando a média de N votos dos alunos ou selecionando a posição de votação da maioria deles. Eles reduzem a variação e aumentam a estabilidade enquanto reduzem os erros.