Métodos de imputación y cuándo utilizarlos
Inhaltsverzeichnis
Por qué debemos preocuparnos por los valores perdidos
En nuestro trabajo como científicos de datos, a menudo trabajamos con datos de series temporales y aplicaciones para pronósticos (=previsión). Como en todos los proyectos "clásicos" de aprendizaje automático, en las previsiones suelen faltar datos con los que tenemos que lidiar.
En el caso de las previsiones, los valores perdidos son especialmente problemáticos porque los modelos suelen contener características que dependen del tiempo. Las características dependientes del tiempo suelen ser características retardadas o estacionales. Si los patrones de estas características se rompen, los modelos tienen dificultades para aprenderlos. Además, la mayoría de los métodos clásicos de previsión, como los modelos ARIMA, no pueden tratar automáticamente los valores que faltan.
El primer paso importante para tratar los valores que faltan en las series temporales es, como suele ocurrir, analizar los datos. Estos pasos de análisis pueden ayudar a determinar si los datos faltan por casualidad o no. Si los valores no faltan por casualidad y dependen del contexto específico de la previsión, los métodos automatizados no suelen poder manejar los efectos y se necesita experiencia para tratar estos casos.
Un ejemplo de datos omitidos no aleatorios es la predicción de ventas en comercios, en la que siempre faltan datos los días festivos. En estos días, las ventas son nulas, y en los días anteriores y posteriores al festivo, las ventas suelen aumentar. Un método para superar este problema podría ser incluir en el modelo características como "día festivo" o "día posterior al festivo".
Un ejemplo de ausencia aleatoria de datos podrían ser los accidentes o errores ocurridos durante la transferencia de datos del sistema operativo a un almacén de datos. Estos accidentes no dependían de los datos y ocurrieron al azar en un momento determinado. Si, por el contrario, se trata de un error que se produce regularmente a determinadas horas del día o de la semana, se trataría de nuevo de datos que no faltan por azar.
Básicamente, es importante prestar atención a los siguientes detalles al realizar el análisis:
- ¿Cuál es el porcentaje de datos que faltan en relación con el total?
- ¿Se producen las lagunas a intervalos regulares?
- ¿Cuál es la longitud de los huecos?
Los métodos de imputación más importantes y lo que hay que tener en cuenta al utilizarlos
La mayoría de los métodos que enumeramos aquí son bien conocidos y ya se han utilizado en artículos científicos y otros Fuentes en línea bien descritos. En este artículo, queremos sobre todo comparar los distintos métodos y dar consejos sobre cuándo utilizar cada uno de ellos.
El primer método, y con diferencia el más sencillo, para tratar los datos que faltan es eliminarlos. Esta solución puede ser útil para algunos problemas clásicos de aprendizaje automático, pero normalmente no para las series temporales. Como ya se ha mencionado, esto rompe los patrones de las series temporales y el modelo aprende a partir de patrones erróneos. No obstante, es posible seleccionar sólo la parte "sana" del conjunto de datos si esto tiene sentido con respecto a los objetivos previstos. Por ejemplo, una solución factible podría ser descartar la primera mitad de la serie de datos si la calidad es mejor a partir de entonces (por ejemplo, porque el proceso de recogida de datos cambió en un momento determinado). Esta opción sólo es posible si disponemos de datos suficientes para entrenar los modelos.
Cuando la eliminación de datos no es una opción, tenemos que utilizar algunos métodos de imputación, es decir, métodos para rellenar los valores que faltan. Una familia de métodos de imputación utiliza el Valor medio. En este caso, la idea es rellenar los valores que faltan con la media global, local o estacional para obtener un valor de sustitución adecuado. Cada uno de estos métodos es útil en contextos diferentes, en función de la tendencia y la estacionalidad de los datos. Otra opción es rellenar los valores que faltan con el valor anterior o siguiente disponible, lo que se denomina el adelante resp. relleno hacia atrás se hace referencia.
La última familia de métodos de imputación que queremos mencionar aquí es la interpolación, es decir, la inserción de los valores que faltan en el rango de observación de una serie temporal. Esta interpolación puede ser lineal, polinómica o spline, lo que define el tipo de curva utilizada para modelizar los datos. Una interpolación lineal también puede ajustarse en función de la estacionalidad (en lo sucesivo se denominará ajustada linealmente). Otro método de interpolación consiste en utilizar Holt-Winters, un suavizado exponencial de tercer grado que captura el nivel (primer grado), la tendencia (segundo grado) y la estacionalidad (tercer grado) de la interpolación lineal de los desfases.
El árbol de decisión que figura a continuación resume nuestras decisiones y consolida la regla empírica que utilizamos más a menudo. Aunque es una buena guía, necesitamos comprobarlo con métricas más precisas y la prueba del ojo, es decir, trazamos los valores imputados de distintos métodos para comprobar cuál se ajusta mejor al patrón de la serie temporal y ayuda a los modelos a hacer predicciones más precisas.
Evaluación de la calidad de los métodos de imputación
Para comprender mejor los pasos que seguimos normalmente al imputar valores perdidos, veamos un ejemplo concreto. Partimos de un conjunto de datos completo y creamos artificialmente valores perdidos en él para comparar los valores imputados con los reales. Tenemos un conjunto de datos del Reto de la previsión de la demanda de artículos en tienda utilizado en Kaggle, que contiene cinco años de datos de ventas de 50 artículos diferentes en 10 tiendas distintas. Como ya se ha mencionado, el conjunto de datos está limpio y no contiene valores perdidos. Para reducir la complejidad, agregamos los datos a una frecuencia mensual.
Hemos desarrollado una función que inserta aleatoriamente un porcentaje predefinido de valores perdidos en la serie temporal, con la opción de parametrizar los huecos (número y longitud máxima). Con esta función podemos probar diferentes porcentajes de datos que faltan y longitudes de los intervalos. En este ejemplo, hay seis lagunas, la más larga de tres meses y faltan 10 % de la serie temporal.
Como el conjunto de datos contiene ahora valores perdidos, aplicamos algunos de los métodos enumerados anteriormente y los contrastamos con los datos reales visualizándolos y comparándolos con métricas. En el siguiente ejemplo, sólo hemos aplicado esto a una de las series temporales del conjunto de datos, mientras que en un proyecto real probablemente estaríamos tratando con muchas más series temporales.
En el gráfico siguiente puedes ver los conjuntos de datos de ventas del artículo 7 de la tienda 1. La línea naranja describe los datos completos que tenemos. La línea azul muestra los datos que hemos eliminado del conjunto para nuestros experimentos. Las pequeñas cruces de distintos colores muestran los valores imputados calculados con distintos métodos. Se puede observar que los métodos de imputación lineal ajustada y de Holt-Winters captan mejor las variaciones de nuestra serie temporal. Como los datos contienen una tendencia y estacionalidad, los dos métodos que tienen en cuenta la tendencia y la estacionalidad obtienen mejores resultados. Esto confirma la regla empírica que hemos mostrado en la figura anterior.
Como nuestro objetivo es obtener el mejor resultado de previsión para periodos futuros, queremos medir el impacto de los distintos métodos de imputación en un modelo de previsión. Por lo tanto, ajustamos el mismo modelo de previsión para cada método y comparamos los errores para el conjunto de prueba (el último año de la serie) utilizando las siguientes métricas clásicas de evaluación de la regresión:
- El error medio absoluto simétrico en porcentaje (sMAPE) o la desviación media absoluta en porcentaje, que expresa la precisión como una relación. Es muy intuitivo, pero puede llegar a ser muy grande debido a una pequeña desviación del error (para un conjunto de denominadores pequeños).
- El error medio absoluto (MAE), que mide la diferencia entre las previsiones individuales y el valor real, es más fácil de interpretar.
A continuación se presentan los resultados del modelo de previsión para los distintos métodos de imputación. Como ya se ha indicado en el gráfico anterior, se observa que el método Holt-Winters y la imputación lineal ajustada ofrecen mejores resultados de previsión que el método de la media. Sin embargo, también se observa que los resultados del método de la media estacional son comparables a los del método lineal ajustado. Esto confirma que hay que probar y comparar varios métodos en lugar de basarse únicamente en la regla empírica. Además, vemos que ambas métricas muestran el mismo resultado, lo que refuerza nuestra conclusión.
Por supuesto, sólo se trataba de un modelo para una serie temporal, y en un ejemplo realista normalmente probaríamos distintos modelos de previsión para distintas series temporales. En este artículo queríamos centrarnos en los distintos métodos de imputación y su evaluación.
Conclusión y consejos de uso
En resumen, siempre hay que empezar con un análisis de los datos de las series temporales e investigar si los datos faltan por casualidad o si existen ciertos patrones. En este último caso, hay que intentar encontrar explicaciones con la ayuda de los propios conocimientos o consultando a expertos en la materia. Por ejemplo, a la hora de analizar los datos, hay que preguntarse ya si las lagunas se producen a intervalos regulares, cuál es su duración y cuál es el porcentaje de datos que faltan en relación con el total. Responder a estas preguntas suele aportar información y ayuda a encontrar soluciones específicas o métodos de imputación adecuados según nuestra regla empírica.
Aunque la regla presentada es una buena guía y punto de partida para elegir el método de imputación adecuado, también es necesario evaluarla siempre con cuidado. Es enormemente importante y útil combinar una evaluación visual con otra analítica, como con cualquier modelo de previsión.
En la evaluación visual debe tenerse cuidado para determinar qué método se ajusta mejor al patrón de la serie temporal. Para la evaluación analítica, los valores imputados de los distintos métodos de imputación pueden utilizarse para entrenar modelos de previsión y evaluarlos en un conjunto de prueba de los datos. Este enfoque es útil porque el objetivo de la imputación es lograr buenos resultados de previsión. Las métricas de previsión habituales, como MAE o SMAPE, pueden ser útiles para la evaluación, pero la métrica adecuada depende siempre de los objetivos empresariales específicos.
0 comentarios