Compartir a través de


Predicciones de serie temporal mediante datos de reemplazo (Tutorial intermedio de minería de datos)

En esta tarea, creará un nuevo modelo basado en los datos de ventas mundiales. A continuación, creará una consulta de predicción que aplique el modelo de ventas mundial a una de las regiones individuales.

Creación de un modelo general

Recuerde que usted analizó los resultados del modelo de minería de datos original y descubrió grandes diferencias entre regiones y entre líneas de producto. Por ejemplo, las ventas en Norteamérica eran fuertes para el modelo M200, mientras que las ventas del modelo T1000 tampoco lo hacían. Sin embargo, el análisis es complicado por el hecho de que algunas series no tenían muchos datos o que los datos se iniciaron en un momento dado diferente. También faltaban algunos datos.

Serie que predice la cantidad de M200 y T1000

Para solucionar algunos de los problemas de calidad de los datos, decide combinar los datos de las ventas de todo el mundo y usar ese conjunto de tendencias de ventas generales para crear un modelo que se pueda aplicar para predecir las ventas futuras en cualquier región.

Al crear predicciones, usará el patrón generado por el entrenamiento en los datos de ventas mundiales, pero reemplazará los puntos de datos históricos por los datos de ventas de cada región individual. De este modo, se conserva la forma de la tendencia, pero los valores previstos se alinean con las cifras históricas de ventas de cada región y modelo.

Realización de predicciones cruzadas con un modelo de serie temporal

El proceso de uso de datos de una serie para predecir tendencias en otra serie se denomina predicción cruzada. Puede usar la predicción cruzada en muchos escenarios: por ejemplo, puede decidir que las ventas de televisión son un buen indicador de la actividad económica general y aplicar un modelo entrenado en ventas de televisión a datos económicos generales.

En la minería de datos de SQL Server, se realiza una predicción cruzada mediante el parámetro REPLACE_MODEL_CASES dentro de los argumentos de la función PredictTimeSeries (DMX).

En la siguiente tarea, aprenderá a usar REPLACE_MODEL_CASES. Usará los datos de ventas mundiales combinados para crear un modelo y, a continuación, creará una consulta de predicción que asigne el modelo general a los datos de reemplazo.

Se supone que ya está familiarizado con cómo crear modelos de minería de datos y, por tanto, se han simplificado las instrucciones para compilar el modelo.

Para crear una estructura de minería de datos y un modelo de minería de datos mediante los datos agregados

  1. En el Explorador de soluciones, haga clic con el botón derecho en Estructuras de minería de datosy, a continuación, seleccione Nueva estructura de minería de datos para iniciar el Asistente para minería de datos.

  2. En el Asistente para minería de datos, realice las siguientes selecciones:

    • Algoritmo: Serie temporal de Microsoft

    • Use el origen de datos que creó anteriormente en esta lección avanzada como origen del modelo. Consulte Advanced Time Series Predictions (Tutorial intermedio de minería de datos).

      Vista del origen de datos: AllRegions

    • Elija las columnas siguientes para la clave de serie y la clave de hora:

      Hora clave: Fecha de reporte

      Clave: Región

    • Elija las siguientes columnas para Input y Predict:

      SumaCantidad

      SumAmt

      AvgAmt

      AvgQty

    • En Nombre de la estructura de datos de minería, escriba: All Regions

    • En Nombre del modelo de minería de datos, escriba: All Regions

  3. Procesa la nueva estructura y el nuevo modelo.

Para compilar la consulta de predicción y asignar los datos de reemplazo

  1. Si el modelo aún no está abierto, haga doble clic en la estructura AllRegions y, en el Diseñador de minería de datos, haga clic en la pestaña Predicción del modelo de minería de datos.

  2. En el panel Modelo de minería de datos, el modelo AllRegions ya debe estar seleccionado. Si no está seleccionado, haga clic en Seleccionar modelo y, a continuación, seleccione el modelo AllRegions.

  3. En el panel Seleccionar tablas de entrada, haga clic en Seleccionar tabla de casos.

  4. En el cuadro de diálogo Seleccionar tabla , cambie el origen de datos a Región del Pacífico T1000 y, a continuación, haga clic en Aceptar.

  5. Haga clic con el botón derecho en la línea de combinación entre el modelo de minería de datos y los datos de entrada y seleccione Modificar conexiones. Asigne los datos de la vista del origen de datos al modelo de la siguiente manera:

    1. Verifique que la columna ReportingDate en el modelo de minería de datos esté asignada correctamente a la columna ReportingDate en los datos de entrada.

    2. En el cuadro de diálogo Modificar asignación, en la fila de la columna modelo AvgQty, haga clic en Columna de tabla y, a continuación, seleccione T1000 Pacific.Quantity. Haz clic en Aceptar.

      Este paso asigna la columna que creó en el modelo para predecir la cantidad media a los datos reales de la serie T1000 para la cantidad de ventas.

    3. No asigne la región de columna del modelo a ninguna columna de entrada.

      Dado que el modelo agregó los datos a través de todas las series, no hay ninguna coincidencia para los valores de la serie, como T1000 Pacific, y se genera un error cuando se ejecuta la consulta de predicción.

  6. Ahora usted construirá la consulta de predicción.

    En primer lugar, agregue una columna a los resultados que genera la etiqueta AllRegions del modelo junto con las predicciones. De este modo, sabe que los resultados se basaron en el modelo general.

    1. En la cuadrícula, haga clic en la primera fila vacía, en Origen y, a continuación, seleccione Modelo de minería de datos AllRegions.

    2. En Campo, seleccione Región.

    3. En Alias, escriba Modelo usado.

  7. A continuación, agregue otra etiqueta a los resultados para poder identificar a qué serie corresponde la predicción.

    1. Haga clic en una fila vacía y, en Origen, seleccione Expresión personalizada.

    2. En la columna Alias , escriba ModelRegion.

    3. En la columna Criterios/Argumento , escriba 'T1000 Pacific'.

  8. Ahora configurará la función de predicción cruzada.

    1. Haga clic en una fila vacía y, en Origen, seleccione Función de predicción.

    2. En la columna Campo , seleccione PredictTimeSeries.

    3. En Alias, escriba Valores de predicción.

    4. Arrastre el campo AvgQty desde el panel Modelo de minería de datos a la columna Criterios/Argumento mediante la operación de arrastrar y colocar.

    5. En la columna Criterios/Argumento , después del nombre del campo, escriba el texto siguiente: ,5, REPLACE_MODEL_CASES

      El texto completo del cuadro de texto Criterios/Argumento debe ser el siguiente: [AllRegions].[AvgQty],5,REPLACE_MODEL_CASES

  9. Haga clic en Resultados.

Creación de la consulta de predicción cruzada en DMX

Es posible que haya observado un problema con la predicción cruzada: es decir, que para aplicar el modelo general a una serie de datos diferente, como el modelo de producto T1000 en la región de Norteamérica, debe crear una consulta diferente para cada serie, de modo que pueda asignar cada conjunto de entradas al modelo.

Sin embargo, en lugar de compilar la consulta en el diseñador, puede cambiar a la vista DMX y editar la instrucción DMX que creó. Por ejemplo, la siguiente instrucción DMX representa la consulta que acaba de compilar:

SELECT  
      ([All Regions].[Region]) as [Model Used],  
      ('T-1000 Pacific') as [ModelRegion],  
      (PredictTimeSeries([All Regions].[Avg Qty],5, REPLACE_MODEL_CASES)) as [Predicted Quantity]  
     FROM [All Regions]  
PREDICTION JOIN  
    OPENQUERY([Adventure Works DW2003R2], 'SELECT [ReportingDate] FROM  
      (  
       SELECT  ReportingDate, ModelRegion, Quantity, Amount   
       FROM dbo.vTimeSeries   
       WHERE (ModelRegion = N''T1000 Pacific'')  
       ) as [T1000 Pacific]    ')   
    AS t  
ON   
[All Regions].[Reporting Date] = t.[ReportingDate]   
AND   
[All Regions].[Avg Qty] = t.[Quantity]  

Para aplicar esto a un modelo diferente, basta con editar la instrucción de consulta para reemplazar la condición de filtro y actualizar las etiquetas asociadas a cada resultado.

Por ejemplo, si cambia las condiciones de filtro y las etiquetas de columna reemplazando "Pacific" por "Norteamérica", obtendrá predicciones para el producto T1000 en Norteamérica, en función de los patrones del modelo general.

Siguiente tarea de la lección

Comparación de predicciones para modelos de previsión (Tutorial intermedio de minería de datos)

Véase también

Ejemplos de consultas del modelo de serie temporal
PredictTimeSeries (DMX)