A magia da aprendizagem em conjunto

Oi, Habr! Convidamos engenheiros de dados e especialistas em aprendizado de máquina para uma aula de demonstração gratuita “Saída de modelos de ML em um ambiente industrial usando o exemplo de recomendações online”. Publicamos também o artigo Luca Monno - Head of Financial Analytics da CDP SpA.

Um dos métodos de aprendizado de máquina mais úteis e simples é o Ensemble Learning. Ensemble Learning é o método por trás do XGBoost, Bagging, Random Forest e muitos outros algoritmos.

Existem muitos artigos excelentes sobre Towards Data Science, mas escolhi duas histórias (primeiro и segundo) que eu mais gostei. Então, por que escrever outro artigo sobre EL? Porque eu quero te mostrar como funciona com um exemplo simples, o que me fez entender que não há mágica aqui.

Quando vi EL em ação pela primeira vez (trabalhando com alguns modelos de regressão muito simples), não pude acreditar no que via e ainda me lembro do professor que me ensinou esse método.

Eu tinha dois modelos diferentes (dois algoritmos de treinamento fracos) com métricas fora da amostra R² igual a 0,90 e 0,93, respectivamente. Antes de olhar o resultado, pensei em obter um R² em algum lugar entre os dois valores originais. Em outras palavras, eu acreditava que EL poderia ser usado para fazer um modelo funcionar não tão mal quanto o pior modelo, mas não tão bem quanto o melhor modelo poderia funcionar.

Para minha grande surpresa, simplesmente calcular a média das previsões rendeu um R² de 0,95. 

No começo comecei a procurar o erro, mas depois pensei que poderia haver alguma mágica escondida aqui!

O que é aprendizagem em conjunto

Com EL, você pode combinar as previsões de dois ou mais modelos para produzir um modelo mais robusto e de melhor desempenho. Existem muitas metodologias para trabalhar com conjuntos de modelos. Aqui abordarei os dois mais úteis para dar uma visão geral.

Com regressão é possível calcular a média do desempenho dos modelos disponíveis.

Com classificações Você pode dar aos modelos a oportunidade de escolher rótulos. A etiqueta escolhida com mais frequência é aquela que será escolhida pelo novo modelo.

Por que EL funciona melhor

A principal razão pela qual EL tem melhor desempenho é que toda previsão tem um erro (sabemos disso pela teoria da probabilidade), combinar duas previsões pode ajudar a reduzir o erro e, portanto, melhorar as métricas de desempenho (RMSE, R², etc.). d.).

O diagrama a seguir mostra como dois algoritmos fracos operam em um conjunto de dados. O primeiro algoritmo tem uma inclinação maior do que o necessário, enquanto o segundo tem quase zero (possivelmente devido ao excesso de regularização). Mas conjunto mostra resultados muito melhores. 

Se você observar o indicador R², então para o primeiro e segundo algoritmo de treinamento será igual a -0.01¹, 0.22, respectivamente, enquanto para o conjunto será igual a 0.73.

A magia da aprendizagem em conjunto

Há muitas razões pelas quais um algoritmo pode ser um modelo ruim, mesmo em um exemplo básico como este: talvez você tenha decidido usar regularização para evitar overfitting, ou tenha decidido não descartar algumas anomalias, ou talvez tenha usado regressão polinomial e tenha errado grau (por exemplo, usamos um polinômio de segundo grau, e os dados do teste mostram uma assimetria clara para a qual o terceiro grau seria mais adequado).

Quando EL funciona melhor

Vejamos dois algoritmos de aprendizagem trabalhando com os mesmos dados.

A magia da aprendizagem em conjunto

Aqui você pode ver que combinar os dois modelos não melhorou muito o desempenho. Inicialmente, para os dois algoritmos de treinamento, os indicadores R² foram iguais a -0,37 e 0,22, respectivamente, e para o conjunto acabou sendo -0,04. Ou seja, o modelo EL recebeu o valor médio dos indicadores.

Contudo, há uma grande diferença entre estes dois exemplos: no primeiro exemplo, os erros do modelo foram correlacionados negativamente, e no segundo, foram correlacionados positivamente (os coeficientes dos três modelos não foram estimados, mas foram simplesmente escolhidos pelo autor como exemplo.)

Portanto, o Ensemble Learning pode ser usado para melhorar o equilíbrio de viés/variância em qualquer caso, mas quando Os erros do modelo não estão positivamente correlacionados, o uso de EL pode levar a um melhor desempenho.

Modelos homogêneos e heterogêneos

Muitas vezes EL é usado em modelos homogêneos (como neste exemplo ou floresta aleatória), mas na verdade você pode combinar diferentes modelos (regressão linear + rede neural + XGBoost) com diferentes conjuntos de variáveis ​​explicativas. Isso provavelmente resultará em erros não correlacionados e melhor desempenho.

Comparação com diversificação de portfólio

EL funciona de forma semelhante à diversificação na teoria do portfólio, mas tanto melhor para nós. 

Ao diversificar, você tenta reduzir a variação do seu desempenho investindo em ações não correlacionadas. Uma carteira de ações bem diversificada terá um desempenho melhor do que a pior ação individual, mas nunca melhor do que a melhor.

Para citar Warren Buffett: 

“A diversificação é uma defesa contra a ignorância; para alguém que não sabe o que está a fazer, [a diversificação] faz muito pouco sentido.”

No aprendizado de máquina, EL ajuda a reduzir a variância do seu modelo, mas pode resultar em um modelo com desempenho geral melhor que o melhor modelo original.

Resumir

Combinar vários modelos em um é uma técnica relativamente simples que pode levar à solução do problema de viés de variância e à melhoria do desempenho.

Se você tem dois ou mais modelos que funcionam bem, não escolha entre eles: use todos (mas com cautela)!

Você está interessado em se desenvolver nessa direção? Inscreva-se para uma aula de demonstração gratuita “Saída de modelos de ML em um ambiente industrial usando o exemplo de recomendações online” e participar reunião online com Andrey Kuznetsov — Engenheiro de aprendizado de máquina no Grupo Mail.ru.

Fonte: habr.com

Adicionar um comentário