Gradient Boosting de la Teoría a la Práctica (Parte 1)

Gradient Boosting Theory to Practice (Part 1)

Foto de Jens Lelie en Unsplash

El aumento de gradiente es una técnica ampliamente utilizada en el aprendizaje automático que se basa en una combinación de reforzamiento y descenso de gradiente.

El reforzamiento es un método de conjunto que combina múltiples aprendices débiles (o aprendices base) para crear un modelo predictivo sólido. Los modelos base se entrenan de forma secuencial, donde cada modelo se enfoca en corregir los errores cometidos por los modelos anteriores.

En el aumento de gradiente, cada modelo base se entrena para predecir los gradientes negativos de la función de pérdida con respecto a las predicciones de los modelos anteriores. Como resultado, agregar el nuevo aprendiz base entrenado al conjunto realiza un paso en la dirección del descenso más pronunciado hacia el mínimo de la pérdida. Este proceso es similar al descenso de gradiente, pero opera en el espacio de funciones en lugar del espacio de parámetros. Por lo tanto, se conoce como descenso de gradiente funcional.

Cuando los aprendices débiles son árboles de decisión, el método resultante se conoce como árboles de decisión aumentados por gradiente (GBDT) o máquina de aumento de gradiente (GBM).

El aumento de gradiente es uno de los mejores algoritmos que existen hoy en día para tratar con datos estructurales y ofrece resultados de vanguardia en muchos puntos de referencia de clasificación estándar. Junto con el aprendizaje profundo, es uno de los algoritmos más utilizados en competiciones de Kaggle.

El algoritmo de aumento de gradiente fue desarrollado originalmente por Jerome Friedman en 2001 [1]. Desde entonces, se ha extendido a una familia de algoritmos que incluye XGBoost, CatBoost y LightGBM. Estas variantes del algoritmo incorporan diversas mejoras que mejoran aún más el rendimiento y la escalabilidad del aumento de gradiente.

Este artículo cubre en profundidad la teoría y la implementación del aumento de gradiente. En la primera parte del artículo nos enfocaremos en los conceptos teóricos del aumento de gradiente, presentaremos el algoritmo en seudocódigo y discutiremos varias formas de regularizar el modelo. En la segunda parte, exploraremos las clases en Scikit-Learn que implementan el aumento de gradiente y las utilizaremos para resolver diferentes tareas de regresión y clasificación.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Buscar inteligentemente el contenido de Drupal utilizando Amazon Kendra

Amazon Kendra es un servicio de búsqueda inteligente impulsado por aprendizaje automático (ML). Amazon Kendra te ayud...

Aprendizaje Automático

Google DeepMind está trabajando en un algoritmo para superar a ChatGPT.

En un anuncio innovador, Demis Hassabis, el CEO del laboratorio de IA DeepMind de Google, presentó el desarrollo de u...

Inteligencia Artificial

Conoce DragonDiffusion un método de edición de imágenes de granulación fina que permite la manipulación estilo arrastrar en modelos de difusión.

Los modelos de difusión de texto a imagen a gran escala (T2I), que tienen como objetivo generar imágenes condicionada...