Los árboles de decisión te dejan con una decisión difícil (#jajajajajaja no jodas#)… Un árbol profundo con muchas hojas se ajustará demasiado porque cada predicción proviene de datos históricos de solo las pocas casas en su hoja. Pero un árbol poco profundo con pocas hojas tendrá un desempeño deficiente porque no logra capturar tantas distinciones en los datos sin procesar.
Incluso las técnicas de modelado más sofisticadas de la actualidad se enfrentan a esta tensión entre el ajuste insuficiente y el ajuste excesivo. Sin embargo, muchos modelos tienen ideas inteligentes que pueden conducir a un mejor rendimiento. Veremos el bosque aleatorio como ejemplo.
El bosque aleatorio usa muchos árboles y hace una predicción promediando las predicciones de cada árbol componente. Por lo general, tiene una precisión predictiva mucho mejor que un árbol de decisión único y funciona bien con los parámetros predeterminados. Si continúa modelando, puede aprender más modelos con un rendimiento aún mejor, pero muchos de ellos son sensibles para obtener los parámetros correctos.
from sklearn.ensemble import RandomForestClassifier
modelo = RandomForestClassifier()
modelo.fit(train_X, train_y)
resultado = modelo.score(test_X, test_y)
print(resultado)
Con este codigo obtendran valores cercanos al 96% o 97%.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?