Breaking

Post Top Ad

Your Ad Spot

domingo, 15 de diciembre de 2019

Microsoft Time Series en SQL Server

El siguiente tema en nuestra serie de minería de datos es el algoritmo popular, serie temporal. Dado que los usuarios comerciales desean pronosticar valores para áreas como producción, ventas, ganancias, etc., con un parámetro de tiempo, Time Series se ha convertido en una importante herramienta de minería de datos. Básicamente, permite analizar el comportamiento pasado de una variable a lo largo del tiempo para predecir su comportamiento futuro.

Componentes en series temporales

Una serie temporal consta de cinco componentes:
  • Tendencia: La tendencia es el movimiento de los valores. Por lo general, una serie dada tendrá una tendencia al alza o a la baja
  • Cíclico : Hacia arriba o hacia abajo el movimiento repetitivo de los valores durante un período de tiempo más largo
  • Estacional: similar al cíclico, pero puede haber múltiples movimientos de los valores en períodos de tiempo más cortos, como por hora, diario, semanal, mensual, etc.
  • Aleatorio: puede haber movimientos en los valores de los datos que son totalmente aleatorios pero que tendrán un impacto en la tendencia de la serie temporal. Un análisis de series de tiempo debe identificar estas excepciones y tenerlas en cuenta en las predicciones.
  • Cruzado: Otros factores pueden afectar la tendencia de una serie temporal. Por ejemplo, las ventas del artículo A pueden depender de factores estacionales, pero también pueden verse afectadas por las ventas del artículo B. Si tomamos como ejemplo la producción de un cultivo, dependerá de las tendencias de lluvia o temperatura.

Series de tiempo en SQL Server

Para demostrar el análisis de series temporales con SQL Server, utilizaremos la vista vTimeSeries en la base de datos de ejemplo AdventureWorksDW2017 . Aquí está el conjunto de datos de muestra:
Conjunto de datos de muestra para vTimeSeries
Utilizaremos solo las primeras cuatro columnas, que son ModelRegion, TimeIndex, Cantidad y Cantidad.
Como se discutió en el primer artículo , cree un proyecto de servicio de análisis de muestra con Visual Studio o SQL Server Data Tools (SSDT). Luego, cree una conexión de fuente de datos a la base de datos AdventureWorksDW2017 y agregue la vista vTimeSeries a la vista de fuente de datos.
A continuación, cree una Estructura de minería con la técnica de minería de datos de Microsoft Time Series. Selecciónelo de la lista disponible de técnicas de minería de datos.
Luego, seleccione los atributos necesarios para crear el modelo de Serie temporal. El modelo de serie temporal necesita dos parámetros obligatorios y un parámetro opcional. Requiere una sola columna de tiempo que será la clave para el modelo. Esto tiene que ser una columna con los mismos intervalos. Por ejemplo, si tiene datos mensuales, todo el conjunto de datos debe ser mensual y no debe contener diferentes intervalos de datos. Otra columna obligatoria es la columna que desea predecir a partir de la técnica de Series temporales. Esta debe ser una variable continua y numérica, como ventas, temperatura, cantidad, etc.
Opcionalmente, puede definir varias series en una serie única. Por ejemplo, en una serie de tiempo de ventas, es posible que desee analizar la tendencia por región. Por lo tanto, la región será una clave adicional y opcional.
Aquí está la configuración de los parámetros en la serie temporal:
Parámetros específicos para la técnica de series temporales de Microsoft
En la configuración anterior, tanto la cantidad como la cantidad se configuran como columnas de entrada y predicción. Como se mencionó anteriormente, estas dos columnas deben ser variables numéricas y continuas. TimeIndex es la columna clave que se utiliza para identificar el componente de tiempo del conjunto de datos. ModelRegion es la columna de serie opcional desde la cual los usuarios pueden predecir las cantidades de Región y Modelo de producto y las cantidades de ventas.
La siguiente imagen muestra los tipos de datos, en caso de que el usuario quiera cambiarlos:
Tipos de datos para atributos seleccionados en el modelo de serie temporal
Sin embargo, en este ejemplo, puede dejar los tipos de datos predeterminados tal como están. Con eso, se realiza la creación del modelo de serie temporal y el modelo de minería de datos debe procesarse.
Veamos la tendencia de la serie temporal con las predicciones:
Predicciones futuras en el análisis de series temporales.
En el gráfico, las predicciones se muestran mediante líneas punteadas. Una cosa importante para recordar es que la serie temporal no comprende los ciclos de índice de tiempo. Solo usa el número que sigue al anterior. Por ejemplo, después de 201212, el siguiente número será 201213, no la designación de calendario 201301.
Desde la configuración disponible en la parte superior del Visor de modelos de minería, el usuario tiene la opción de ver más información.
Al activar Mostrar desviación , puede ver las desviaciones de los valores pronosticados para juzgar la precisión de su modelo. Una desviación menor significa mayor precisión. Las desviaciones se muestran en la siguiente imagen:
Mostrar desviaciones en series temporales
En la pestaña Modelos de minería , puede establecer los atributos predictivos para Predict o PredictOnly como se muestra a continuación:
Configurar Predict o Predict Only.
Predict significa que el atributo se usa para predecir, y el valor predicho se usa para predecir los siguientes valores, mientras que el parámetro PredictOnly significa que el atributo se usa solo para la predicción, y el valor predicho no se usa para las próximas predicciones.

Parámetros del modelo

Los parámetros del modelo se utilizan para cambiar los parámetros para adaptarse al entorno de datos. Aunque los parámetros predeterminados proporcionan los mejores resultados, los usuarios tienen la opción de cambiarlos en consecuencia:
Parámetros del modelo para la técnica de series temporales

AUTO_DETECT_PERIODICTY

Este parámetro especifica un valor entre 0 y 1 utilizado para detectar la periodicidad de la serie temporal. Al establecerlo en 1, el algoritmo de serie temporal detectará automáticamente la periodicidad. Sin embargo, esto puede causar un problema de rendimiento durante la construcción del modelo. Establecer el valor en 0 indica que el algoritmo detectará solo los datos periódicos fuertes.

PRONÓSTICO_MÉTODO

FORECAST_METHOD especifica qué algoritmo de pronóstico se utiliza. Si se elige el método MIXED, crea modelos para los algoritmos de series temporales ARTXP y ARIMA, y sus resultados se combinarán durante la fase de predicción. En la edición estándar de SQL Server, los modelos se combinan utilizando una relación automática que favorece ARTXP para el corto plazo y ARIMA para la predicción a largo plazo. En ediciones superiores, como la edición Enterprise, los modelos se combinan y se ponderan de acuerdo con el valor establecido para PREDICTION_SMOOTHING. Cuando FORECAST_METHOD se establece en ARTXP o ARIMA, se ignora el valor del parámetro PREDICTION_SMOOTHING.

CONSEJO DE PERIODICIDAD

Este parámetro proporciona una pista al algoritmo en cuanto a la periodicidad de los datos para que el modelo de serie temporal funcione mejor. Aunque la serie temporal tiene la opción de identificar la periodicidad, es mejor proporcionar la periodicidad al modelo. Por ejemplo, si tiene datos con una periodicidad mensual, semanal y diaria, puede configurar PERODICITY_HINT como {12,7,1}.

MISSING_VALUE_SUBSTITUTION


Para las series temporales, no puede haber huecos en el conjunto de datos. Sin embargo, debido a varias razones prácticas, puede haber casos en los que no se puedan capturar todos los datos. SQL Server Time Series proporciona un método para sustituir los valores faltantes. El valor predeterminado es Ninguno, que es adecuado para un conjunto de datos sin valores faltantes. Los valores medios establecen la media de los valores existentes en los valores faltantes, mientras que la opción Anterior establece el valor faltante con los valores anteriores. Además, el usuario puede establecer un valor constante; Esto no es recomendable.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

Post Top Ad

Your Ad Spot

Páginas