0 / 0
Volver a la versión inglesa de la documentación
Previsión de ventas por catálogo
Última actualización: 12 dic 2024
Previsión de ventas por catálogo

Este tutorial proporciona un ejemplo de una empresa de catálogos, que está interesada en prever las ventas mensuales de su línea de ropa de hombre, basándose en 10 años de sus datos de ventas.

En el tutorial Pronosticar la utilización del ancho de banda, usted aprendió cómo el Modelador Experto puede decidir cuál es el modelo más apropiado para sus series de tiempo. Ahora, es el momento de examinar más detenidamente los dos métodos disponibles a la hora de elegir un modelo: el suavizado exponencial y el ARIMA.

Para ayudarle a elegir un modelo adecuado, es recomendable representar primero la serie temporal. La inspección visual de una serie temporal puede, por lo general, serle de gran ayuda a la hora de elegir. En concreto, debe preguntarse:
  • ¿Dispone la serie de una tendencia global? Si es así, ¿la tendencia parece constante o, por el contrario, parece desaparecer con el tiempo?
  • ¿Muestra la serie una estacionalidad? En caso afirmativo, ¿las fluctuaciones estacionales parecen crecer con el tiempo o parecen constantes en períodos sucesivos?

Pruebe el tutorial

En esta guía de aprendizaje, realizará estas tareas:

Ejemplo de flujo de modelización y conjunto de datos

Este tutorial utiliza el flujo Previsión de ventas por catálogo del proyecto de ejemplo. El archivo de datos utilizado es catalog_seasfac.csv. La siguiente imagen muestra el flujo del modelador de muestra.

Figura 1. Flujo del modelador de muestras
Flujo del modelador de muestras
La siguiente imagen muestra el conjunto de datos de muestra.
Figura 2. Muestra de datos
Muestra de datos

Tarea 1: Abrir el proyecto de ejemplo

El proyecto de muestra contiene varios conjuntos de datos y flujos de modelado de muestra. Si aún no tiene el proyecto de ejemplo, consulte el tema Tutoriales para crear el proyecto de ejemplo. A continuación, siga estos pasos para abrir el proyecto de ejemplo:

  1. En ' watsonx, en el menú Navegación ' Menú de navegación, seleccione Proyectos > Ver todos los proyectos.
  2. Haga clic en ProyectoSPSS Modeler.
  3. Haga clic en la pestaña Activos para ver los conjuntos de datos y los flujos del modelador.

Icono de punto de control ' Comprueba tu progreso

La siguiente imagen muestra la pestaña Activos del proyecto. Ya está preparado para trabajar con el flujo del modelador de ejemplo asociado a este tutorial.

Proyecto de ejemplo

volver a la parte superior

Tarea 2: Examinar los nodos Activo de datos y Tipo

La previsión de ventas por catálogo incluye varios nodos. Siga estos pasos para examinar los nodos Activo de datos y Tipo:

  1. En la pestaña Activos, abra el flujo del modelador Previsión de ventas por catálogo y espere a que se cargue el lienzo.
  2. Haga doble clic en el nodo catalog_seasfac.csv. Este nodo es un nodo de Activos de Datos que apunta al archivo catalog_seasfac.csv en el proyecto.
  3. Revise las propiedades del formato de archivo.
  4. Opcional: Haga clic en Vista previa de datos para ver el conjunto de datos completo.
  5. Haga doble clic en el nodo Tipo.
    1. Pulse en Leer valores.
    2. Para el campo men, verifique que el rol está configurado como Target.
    3. Compruebe que todos los demás campos tienen la función establecida en Ninguno.
    4. Pulse Guardar.
  6. Opcional: Haga clic en Vista previa de datos para ver el conjunto de datos filtrados.

Icono de punto de control ' Comprueba tu progreso

La siguiente imagen muestra el nodo Tipo. Ya está listo para visualizar los datos.

Nodo Tipo

volver a la parte superior

Tarea 3: Visualizar los datos

Siga estos pasos para utilizar un nodo Gráfico de tiempo para visualizar los datos:

  1. Añade un nodo de trazado temporal:
    1. En la paleta de nodos, expanda la sección Gráficos.
    2. Arrastre el nodo Time plot al lienzo.
    3. Conecte el nodo Type al nuevo nodo Time plot.
  2. Haga doble clic en el nodo Time plot para establecer sus propiedades.
    1. En la sección Series, haga clic en Añadir columnas.
    2. Seleccione el campo hombres.
    3. Pulse Aceptar.
    4. Seleccione Usar etiqueta de campo de eje x personalizada.
    5. Para la etiqueta del eje X, seleccione la fecha.
    6. Desactive la opción Normalizar.
    7. Pulse Guardar.
  3. Pase el ratón por encima de la v. ' [men]. fecha del nodo ', y haga clic en el icono Ejecutar ' Icono de ejecución.
  4. En el panel Resultados y modelos, haga clic en los resultados con el nombre " [men] v. fecha ' para ver el gráfico.

    La serie muestra una tendencia ascendente general, es decir, los valores de la serie tienden a aumentar con el tiempo. La tendencia ascendente es aparentemente constante, lo que indica una tendencia lineal.

    La serie también tiene un marcado patrón estacional con máximos anuales en diciembre, como indican las líneas verticales del gráfico. Las variaciones estacionales parecen crecer con la tendencia ascendente de la serie, que sugiere que la estacionalidad es más multiplicativa que aditiva.

    Una vez que ha identificado las características de la serie, puede intentar modelarla. El método de suavizado exponencial es útil para hacer previsiones de las series que muestran una tendencia, estacionalidad o ambas. Como se ha visto anteriormente, estos datos presentan ambas características.

Icono de punto de control ' Comprueba tu progreso

La siguiente imagen muestra un gráfico. Ya está listo para construir el modelo.

Representación de gráfico de tiempo

volver a la parte superior

Tarea 4: Construir el modelo

Generar el modelo de suavizado exponencial que mejor se ajuste implica determinar el tipo de modelo (si debe incluir tendencia, estacionalidad o ambas cosas) y, a continuación, obtener los parámetros que mejor se ajusten al modelo elegido.

El gráfico de ventas de prendas para hombre a lo largo del tiempo sugiere un modelo con un componente de tendencia lineal y uno de estacionalidad multiplicativa. Esto implica un modelo de Winters. Primero, sin embargo, se explora un modelo simple (sin tendencia ni estacionalidad) y después un modelo de Holt (incorpora tendencia lineal pero no estacionalidad). lo que le permitirá practicar la identificación de los casos en los que un modelo no se ajusta bien a los datos, habilidad esencial para generar un modelo correctamente.

Siga estos pasos para construir un modelo simple de suavizado exponencial:

  1. Haga doble clic en el nodo Men (Time Series) para ver sus propiedades.
  2. Amplíe la sección Observaciones e intervalo de tiempo y configure estas propiedades:
    1. Compruebe que la Hora/Fecha está ajustada a la fecha.
    2. Compruebe que el Intervalo de tiempo está ajustado en Meses.
  3. Amplíe la sección Opciones de compilación - general y defina estas propiedades:
    1. Compruebe que el Método está ajustado a Suavizado exponencial.
    2. Compruebe que el Tipo de modelo es Simple.
  4. Pulse Guardar.
  5. Haga clic en Ejecutar todo 'Icono de ejecución.
  6. En el panel Salidas y modelos, haga clic en los resultados de salida con el nombre ' Gráfico de tiempo de [men $TS-men] v. fecha ' para ver el gráfico.
    El gráfico men representa los datos reales y $TS-men denota el modelo de serie temporal.
    Figura 3. Modelo de suavizado exponencial simple
    Modelo de suavizado exponencial simple

    Aunque el modelo simple muestra una tendencia ascendente gradual (y bastante marcada), no tiene en cuenta la estacionalidad. Puede rechazar este modelo sin ningún problema.

    Ahora prueba con un modelo lineal de Holt. Esto debería al menos modelizar la tendencia mejor que el modelo simple, aunque también es poco probable que capte la estacionalidad.

  7. Haga doble clic en el nodo Men (Time Series) y establezca estas propiedades:
    1. Amplíe la sección Opciones de construcción - general.
    2. Establezca el Tipo de modelo en Tendencia lineal de Holt.
    3. Pulse Guardar.
  8. Haga clic en Ejecutar todo 'Icono de ejecución.
  9. En el panel Salidas y modelos, haga clic en los resultados de salida con el nombre ' Gráfico de tiempo de [men $TS-men] v. fecha ' para ver el gráfico.

    El modelo de Holt muestra una tendencia ascendente más suave que el modelo simple, pero todavía no tiene en cuenta la estacionalidad, por lo que también puede omitir este modelo.

    Figura 4. Modelo de tendencia lineal de Holt
    Modelo de tendencia lineal de Holt

    Recordará que el primer gráfico de ventas de ropa masculina a lo largo del tiempo sugería un modelo que incorporase una tendencia lineal y estacionalidad multiplicativa. Por lo tanto, el modelo de Winters podría ser un candidato más adecuado.

  10. Haga doble clic en el nodo Men (Time Series) y establezca estas propiedades:
    1. Amplíe la sección Opciones de construcción - general.
    2. Establezca el tipo de modelo como multiplicativo de Winters.
    3. Pulse Guardar.
  11. Haga clic en Ejecutar todo 'Icono de ejecución.
  12. En el panel Salidas y modelos, haga clic en los resultados de salida con el nombre ' Gráfico de tiempo de [men $TS-men] v. fecha ' para ver el gráfico.

    Esto parece mejor. El modelo refleja tanto la tendencia como la estacionalidad de los datos. El conjunto de datos cubre un período de 10 años e incluye 10 picos estacionales que tienen lugar en diciembre de cada año. Los 10 picos presentes en los resultados predichos coinciden correctamente con los 10 picos anuales de los datos reales.

    Sin embargo, los resultados también subrayan las limitaciones del procedimiento Suavizado exponencial. Si se miran los picos ascendentes y descendentes, hay una estructura significativa que no se tiene en cuenta.

    Si le interesa principalmente el modelado de una tendencia a largo plazo con variaciones estacionales, el suavizado exponencial puede ser una buena opción. Para modelizar una estructura más compleja como ésta, hay que considerar la utilización del procedimiento ARIMA.

    Figura 5. Modelo multiplicativo de Winters
    Modelo multiplicativo de Winters

Icono de punto de control ' Comprueba tu progreso

La imagen siguiente muestra el flujo. Ya está preparado para construir un modelo ARIMA.

Panel de salidas y modelos

volver a la parte superior

Tarea 5: Construir un modelo ARIMA

Con el procedimiento ARIMA, puede crear un modelo de media móvil integrado autorregresivo (ARIMA) que sea adecuado para el modelado detallado de series temporales.

Los modelos ARIMA proporcionan métodos más sofisticados para crear modelos de los componentes de tendencia y estacionales que los modelos de suavizado exponencial y disponen de la ventaja añadida de poder incluir variables predictoras en el modelo.

Siguiendo con el ejemplo de la empresa de catálogos que quiere desarrollar un modelo de previsión, usted ha visto cómo la empresa ha recopilado datos sobre las ventas mensuales de ropa de hombre junto con varias series que podrían utilizarse para explicar parte de la variación de las ventas. Los posibles predictores incluyen el número de catálogos enviados por correo y el número de páginas del catálogo, el número de líneas telefónicas abiertas para realizar pedidos, el capital invertido en publicidad impresa, así como el número de representantes del servicio de atención al cliente.

¿Algunos de estos predictores son útiles para la previsión? ¿Es en realidad un modelo con predictores mejor que uno sin ellos? Utilizando el procedimiento ARIMA, puede crear un modelo de predicción con predictores, y ver si hay una diferencia significativa en la capacidad de predicción sobre el modelo de suavizado exponencial sin predictores.

Con el método ARIMA, puede afinar el modelo especificando los órdenes de autorregresión, diferenciación y media móvil, junto con las contrapartidas estacionales de estos componentes. Determinar manualmente los mejores valores para estos componentes puede ser un proceso largo que implica una buena cantidad de ensayo y error, por lo que, para este ejemplo, usted especifica que el Modelador Experto elija un modelo ARIMA por usted.

A continuación, se construye un modelo mejor tratando algunas de las demás variables del conjunto de datos como variables predictoras. Los que parece más útil incluir como predictores son el número de catálogos enviados por correo (mail"), el número de páginas del catálogo (page), el número de líneas telefónicas abiertas para hacer pedidos (phone), la cantidad gastada en publicidad impresa (print) y el número de representantes del servicio de atención al cliente (service).

Siga estos pasos para construir un modelo ARIMA:

  1. Haga doble clic en el nodo Tipo para establecer sus propiedades.
    1. Compruebe que la función de los campos de correo, página, teléfono, impresión y servicio es Entrada.
    2. Compruebe que el papel de los hombres se establece en Target.
    3. Establezca el rol para todos los campos restantes en Ninguno.
    4. Pulse Guardar.
  2. Haga doble clic en el nodo Men (Time Series) y establezca estas propiedades:
    1. Amplíe la sección Opciones de construcción - general.
    2. Ajuste el Método a Modelador Experto.
    3. Establezca el Tipo de modelo en Sólo modelos ARIMA.
    4. Seleccione la opción El modelador experto considera los modelos estacionales.
      Figura 6. Elija sólo modelos ARIMA
      Elija sólo modelos ARIMA
    5. Pulse Guardar.
  3. Haga clic en Ejecutar todo 'Icono de ejecución.
  4. En el panel Salidas y modelos, haga clic en el modelo con el nombre men para ver los detalles del modelo.
    1. En la página Modelos, haga clic en men en la columna Destino.
    2. Haga clic en la página Información del modelo. Observe cómo, de los cinco predictores especificados, el modelizador experto ha seleccionado sólo dos como significativos para el modelo.
      Figura 7. El modelizador experto selecciona dos predictores
      El modelizador experto selecciona dos predictores
    3. Cierra las dos ventanas del modelo.
  5. En el panel Salidas y modelos, haga clic en los resultados de salida con el nombre ' Gráfico de tiempo de [men $TS-men] v. fecha ' para ver el gráfico.

    Este modelo es mejor que el anterior porque también captura el gran pico descendente, lo que lo convierte en el más adecuado hasta ahora.

    Figura 8. Modelo ARIMA con predictores especificados
    Modelo ARIMA con predictores especificados

    A continuación, puede perfeccionar aún más el modelo, pero es probable que las mejoras a partir de este punto sean mínimas. Ha establecido que el modelo ARIMA con predictores es preferible, así que utilice este modelo para prever las ventas del año siguiente.

  6. Cierra la ventana del gráfico.
  7. Haga doble clic en el nodo Men (Time Series) y establezca estas propiedades:
    1. Amplíe la sección Opciones del modelo.
    2. Seleccione la opción Extender registros al futuro y establezca el valor en " 12.
    3. Seleccione la opción Calcular valores futuros de entradas.
    4. Pulse Guardar.
  8. Haga clic en Ejecutar todo 'Icono de ejecución.
  9. En el panel Salidas y modelos, haga clic en los resultados de salida con el nombre ' Gráfico de tiempo de [men $TS-men] v. fecha ' para ver el gráfico.

    La previsión parece correcta. Como era de esperar, se observa una vuelta a los niveles normales de ventas tras el pico de diciembre, y una tendencia al alza constante en el segundo semestre, con ventas en general mejores que las del año anterior.

Icono de punto de control ' Comprueba tu progreso

La siguiente imagen muestra un gráfico utilizando el modelo ARIMA.

Representación de gráfico de tiempo

volver a la parte superior

Resumen

Ha modelado correctamente una serie temporal compleja, incorporando no sólo una tendencia ascendente, sino también variaciones estacionales y de otro tipo. También ha visto cómo, mediante la prueba y el error, puede lograr un modelo cada vez más preciso, que puede utilizar para prever ventas futuras.

En la práctica, tendrá que volver a aplicar el modelo a medida que se actualicen sus datos de ventas reales; por ejemplo, cada mes o cada trimestre, y elaborar previsiones actualizadas.

Próximos pasos

Ahora está preparado para probar otros tutorialesSPSS® Modeler.

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información