Publicado

- 6 min tiempo de lectura

Cómo predecir las ventas con machine learning

Cómo predecir las ventas con machine learning

Predecir ventas es una de las tareas más importantes para cualquier negocio, especialmente para las PYMEs que buscan optimizar inventarios, evitar sobreproducción y aprovechar al máximo sus recursos. Aunque muchas empresas todavía confían en Excel o en la intuición para tomar estas decisiones, la realidad es que el Machine Learning ofrece una manera más precisa, escalable y adaptativa de predecir el futuro.

En este artículo, te mostraré un ejemplo práctico, simple pero poderoso, que puedes seguir paso a paso usando un notebook interactivo de Google Colab. Vamos a predecir ventas utilizando un dataset minorista realista de Kaggle y un modelo básico de regresión lineal.

¡Comencemos!


Por qué usar Machine Learning en lugar de Excel o intuición

Es posible que pienses: “¿Realmente necesito Machine Learning para predecir ventas? ¿No basta con una fórmula de Excel o un poco de experiencia?”. Es una pregunta válida, pero aquí tienes la respuesta:

  1. Machine Learning maneja la complejidad mejor:
    Si bien Excel puede ayudarte con datos simples, cuando tienes muchas variables (como estacionalidad, promociones o categorías de productos), los modelos de Machine Learning destacan porque pueden encontrar patrones ocultos que no son evidentes a simple vista.

Paso a paso: Explorando el notebook interactivo

Este es un ejemplo muy básico, pero te ayudará a dar tus primeros pasos con Machine Learning para predecir ventas. Puedes seguir el tutorial con nuestro notebook de Google Colab:
👉 Abrir el notebook aquí

1. Descarga del dataset

Utilizamos la herramienta kagglehub para descargar automáticamente un dataset minorista desde Kaggle. Este dataset contiene información como categorías de productos, ventas por cliente, y precios.

Descarga del dataset

Nota: Si ves un mensaje de advertencia (“Warning: Looks like you’re using an outdated kagglehub version”), no te preocupes. El dataset se descarga correctamente.


2. Exploración inicial de los datos (EDA)

Antes de construir un modelo, exploramos los datos para entender su estructura. Aquí puedes ver las primeras filas del dataset, que incluyen columnas como:

  • Fecha de la transacción.
  • Género y edad del cliente.
  • Categoría del producto, cantidad y monto total de la venta.
Exploración de datos

El análisis de los gráficos proporciona una base sólida para evaluar si la regresión lineal es un buen modelo para este dataset y cómo comunicar los resultados. Aquí está el desglose:


Mapa de calor de correlación

  • Interpretación:

    • La correlación entre Price per Unit y Total Amount es fuerte (0.85), lo que sugiere que es una variable clave para predecir las ventas totales.
    • La correlación entre Quantity y Total Amount es moderada (0.37), por lo que también aporta información útil, aunque no tanto como el precio.
    • La correlación entre Quantity y Price per Unit es insignificante (0.02), indicando que son variables independientes.
  • Conclusión: La regresión lineal tiene sentido para este dataset, pero la predicción dependerá principalmente de Price per Unit. Si las predicciones futuras no capturan variaciones en Price per Unit, el modelo podría dar resultados planos.

Mapa de calor de correlación

3. Entrenamiento del modelo de Machine Learning

Para este ejemplo, utilizamos un modelo de regresión lineal para predecir las ventas totales. La fórmula básica es:

Donde:

  • : Es la variable que queremos predecir (monto total de las ventas).
  • : Es el intercepto (el punto donde la línea cruza el eje ).
  • : Son los coeficientes que representan el peso de cada variable.
  • : Son las variables independientes (como mes, cantidad de productos, etc.).
  • : Es el error o ruido no explicado.

Explicación simple:
Imagina que estás trazando una línea que conecta las variables como “cantidad” y “precio por unidad” con las ventas totales. La línea aprende cómo estas variables influyen en las ventas para hacer predicciones futuras.

Métricas del modelo

Evaluamos el modelo utilizando:

  • MAE (Error Absoluto Medio): Promedio del error en las predicciones:
  • R² (Coeficiente de Determinación): Mide qué tan bien el modelo se ajusta a los datos reales.

Aquí están los resultados del modelo:

MAE: 174.054
R²: 0.856357

4. Gráfico de residuales

Interpretación:

La distribución de los residuales muestra que hay cierta variabilidad en los errores, pero están razonablemente centrados alrededor de 0. Sin embargo, hay algunos valores extremos, lo que indica que el modelo puede no estar capturando correctamente todos los patrones.

Conclusión: La regresión lineal parece ser adecuada, pero un modelo más complejo (e.g., árboles de decisión o boosting) podría manejar mejor los valores extremos.

Gráficos de Residuales

5. Tendencia de ventas mensuales

  • Interpretación:

    • Hay un patrón estacional claro, con picos en ciertas épocas del año (e.g., mayo y diciembre).
    • Este patrón estacional no es algo que la regresión lineal capte de forma inherente, ya que no incorpora información temporal explícita.
  • Conclusión: Si el objetivo es capturar estacionalidad, un modelo de series temporales (como ARIMA o Prophet) podría ser más adecuado.

Tendencia de ventas mensuales

6. Gráfico de predicciones vs. valores reales

  • Interpretación:

    • La línea roja muestra la relación ideal entre predicciones y valores reales. La mayoría de los puntos están cerca de la línea, lo que indica que el modelo tiene un buen desempeño.
    • Sin embargo, para valores altos, las predicciones son menos precisas, posiblemente debido a la simplicidad del modelo.
  • Conclusión: Este gráfico demuestra que el modelo funciona razonablemente bien, pero hay margen de mejora para casos extremos.

    Gráfico de predicciones vs. valores reales

Visión general

La regresión lineal es un modelo razonable para este dataset reducido, especialmente porque Price per Unit tiene una fuerte correlación con Total Amount. Sin embargo, para mejorar:

  • Considera usar un modelo más avanzado, como Random Forest, si el objetivo es capturar valores extremos.
  • Si la estacionalidad es importante, explora modelos de series temporales.

Por qué Machine Learning es la mejor opción

Este ejemplo básico demuestra que incluso un modelo sencillo de Machine Learning supera lo que podrías lograr con Excel o intuición. Aunque no es perfecto, el modelo:

Encuentra patrones ocultos en los datos.

  • Aprende de la experiencia para mejorar.
  • Es escalable y se adapta a negocios con grandes volúmenes de datos.

¿Estás listo para llevar tu negocio al siguiente nivel con Machine Learning? Si necesitas ayuda para implementar estas soluciones, visita: 👉 ViaLabs Digital.

¡No pierdas la oportunidad de transformar tus datos en decisiones inteligentes! 🚀

Artículos relacionados

Agente de IA para pymes: calcula si merece la pena implantarlo

Agente de IA para pymes: calcula si merece la pena implantarlo

SEO para IA: cómo preparar tu web para que ChatGPT entienda mejor tu empresa

SEO para IA: cómo preparar tu web para que ChatGPT entienda mejor tu empresa

Infraestructura segura para proyectos web e IA: Google Cloud, Docker y Cloudflare

Infraestructura segura para proyectos web e IA: Google Cloud, Docker y Cloudflare

Ver 18 artículos más
Raúl Jáuregui

Machine Learning aplicado a negocio

Soy Raúl Jáuregui, consultor de I+D+i y también trabajo en proyectos de ML orientados a producción real, no solo prototipos. Si quieres pasar de experimento a sistema robusto, hablemos.

Ver servicio