GridSearchCV vs RandomizedSearchCV: cómo optimizar hiperparámetros sin disparar el coste

Cuando entrenamos un modelo de Machine Learning, normalmente existen diferentes valores que podemos modificar para controlar su comportamiento. Por ejemplo, podemos decidir la complejidad de los árboles de un Gradient Boosting, la velocidad con la que aprende el modelo o el número mínimo de observaciones que debe contener cada hoja. A estos valores los llamamos […]

Leer más

Multicolinealidad en Machine Learning: cómo detectarla y cuándo importa

Cuando trabajamos con un dataset podemos encontrarnos con variables que contienen información muy parecida. Por ejemplo, si tenemos el radio, el perímetro y el área de un objeto, es razonable esperar que exista una relación muy fuerte entre estas tres medidas. Cuando varias variables predictoras están fuertemente relacionadas entre sí hablamos de multicolinealidad. Esto puede […]

Leer más

Codificar categorías de alta cardinalidad sin morir en el intento

Cuando una variable categórica tiene muchísimas categorías (códigos de cliente, ciudades, SKU…), el One-Hot Encoding tradicional explota el número de columnas, consume memoria y puede sobre ajustar. En este post vemos tres enfoques prácticos para tratar la alta cardinalidad sin perder el control: 0- Dataset de ejemplo Como ejemplo, usaremos un dataset ficticio con una […]

Leer más

Persistencia de modelos en Python: cómo guardar tu modelo entrenado de Machine Learning

Entrenar un modelo de Machine Learning es un proceso muchas veces lento, por lo que no tiene sentido volver a entrenar el modelo cada vez que lo necesitemos en el futuro. Por suerte, una herramienta de SciKit Learn nos permite guardar nuestro modelo ya entrenado para utilizarlo cuando lo necesitemos. Vamos allá: 1. Guardar el […]

Leer más