¿Ayuda el ensacado a prevenir el sobreajuste en los árboles de decisión?

¿El ensacado es útil para prevenir el sobreajuste en los árboles de decisión?

Comprender por qué los árboles de decisión son muy propensos al sobreajuste y sus posibles remedios

Foto de Jan Huber en Unsplash

Introducción

Los árboles de decisión son una clase de algoritmos de aprendizaje automático bien conocidos por su capacidad para resolver problemas de clasificación y regresión, y no podemos olvidar la facilidad de interpretación que ofrecen. Sin embargo, sufren de sobreajuste y pueden no generalizar bien si no se controlan adecuadamente.

En este artículo, discutiremos qué es el sobreajuste, hasta qué punto un árbol de decisión sobreajusta los datos de entrenamiento, por qué es un problema y cómo se puede abordar.

Luego, nos familiarizaremos con una de las técnicas de ensamble, es decir, el bagging, y veremos si se puede utilizar para hacer que los árboles de decisión sean más robustos.

Abordaremos lo siguiente:

  • Crear nuestro conjunto de datos de regresión utilizando NumPy.
  • Entrenar un modelo de árbol de decisión utilizando scikit-learn.
  • Comprender qué significa el sobreajuste al observar el rendimiento del mismo modelo en el conjunto de entrenamiento y el conjunto de prueba.
  • Discutir por qué el sobreajuste es más común en modelos no paramétricos como los árboles de decisión (y, por supuesto, aprender qué se entiende por el término no paramétrico) y cómo se puede prevenir utilizando regularización.
  • Comprender qué es la agregación de bootstrap (bagging en resumen) y cómo puede ayudar potencialmente con el sobreajuste.
  • Finalmente, implementaremos la versión de bagging del árbol de decisión y veremos si ayuda o no 🤞

¿Todavía te preguntas si vale la pena leerlo? 🤔 Si alguna vez te has preguntado por qué los Bosques Aleatorios suelen ser preferidos sobre los Árboles de Decisión estándar, este es el mejor lugar para comenzar, ya que los Bosques Aleatorios utilizan la idea del bagging además de algo más para mejorar los árboles de decisión.

¡Comencemos!

Primero configuraremos un cuaderno de Python e importaremos las bibliotecas necesarias.

import pandas as pdimport numpy as npimport plotly.graph_objects as gofrom sklearn.tree import DecisionTreeRegressorfrom sklearn import treefrom sklearn.model_selection import train_test_split

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

Investigadores de Amazon presentan Fortuna una biblioteca de IA para la cuantificación de la incertidumbre en el aprendizaje profundo

Los recientes avances en los campos de Inteligencia Artificial y Aprendizaje Automático han hecho la vida más fácil p...

Inteligencia Artificial

Investigadores de Google AI presentan MADLAD-400 un conjunto de datos de dominio web con tokens de 2.8T que abarca 419 idiomas.

En el campo en constante evolución del Procesamiento del Lenguaje Natural (NLP, por sus siglas en inglés), el desarro...

Ciencia de Datos

Mejorando la inferencia de PyTorch en CPU desde la cuantificación posterior al entrenamiento hasta el multihilo.

Acelere el tiempo de inferencia en CPU con la selección de modelos, la cuantización posterior al entrenamiento con ON...

Inteligencia Artificial

Conoce a GPS-Gaussian Un nuevo enfoque de inteligencia artificial para sintetizar nuevas perspectivas de un personaje de forma en tiempo real.

Una función esencial de los sistemas de cámaras de múltiples vistas es la síntesis de vistas novedosas (NVS), que int...

Inteligencia Artificial

Por qué Bankrate renunció a los artículos generados por IA

En enero, Bankrate y su sitio hermano, CNET, causaron sensación al publicar abiertamente cientos de artículos generad...