DETECCIÓN DE ANOMALÍAS EN SERIES DE TIEMPO: EL CASO DEL PRECIO DE LA VIVIENDA
En Yals buscamos generar los mejores y más precisos analíticos para la industria inmobiliaria. Una forma de entender la dinámica del mercado en una zona específica es observando la evolución en el tiempo del precio de la vivienda.
Como parte de los productos analíticos de Yals, generamos series de tiempo de precio de vivienda para más de 44,000 colonias en el país. Estas series de tiempo se actualizan constantemente, por lo que hay un esfuerzo continuo para garantizar la calidad y consistencia de la información que desplegamos a los clientes.
Si bien, existe un proceso para garantizar la calidad de los datos que generan las series de tiempo, cuando se generan 44,000 existe la posibilidad de que existan anomalías. Estas anomalías generalmente se presentan como series de tiempo con variaciones de precio absurdas, ya sean apreciaciones y depreciaciones. Debido a la escala y periodicidad requerida, es imposible verificar manualmente la coherencia de nuestros resultados, por lo que se volvió necesaria la definición y adopción de una métrica de evaluación de calidad para nuestras series de tiempo.

Buscar variaciones anómalas para variables que están en constante cambio es un problema clásico en ingeniería, específicamente en un área llamada procesamiento de señales. Lo que se busca es detectar “ruido” en una “señal” que varía en el tiempo. Por ejemplo, el ruido que se escucha en la radio cuando está mal sintonizada. Las señales que típicamente son analizadas pueden ser sonido, corriente eléctrica, u ondas cósmicas. En este caso, nuestra señal representa precio de vivienda por m2 para cada colonia en México.
Para buscar ruido en nuestra señal de precios decidimos utilizar una métrica llamada Rango Dinámico (Dynamic Range), la cual mide la magnitud de la distorsión o ruido de una señal. La forma en que lo hace es comparando el máximo valor de la señal (precio máximo de una colonia) con un valor de referencia determinado. Típicamente, se utiliza como valor de referencia el valor RMS (Root Mean Square) de la señal a analizar. No obstante, en nuestro caso particular, obtener este valor de referencia plantea varias complicaciones:
- La frecuencia de las series de tiempo es muy baja (Trimestral), por lo que existen pocos datos en cada una de ellas. En estas condiciones, obtener un valor de RMS por colonia sería estadísticamente poco confiable.
- Al no poder obtener un valor RMS por colonia, hay que obtener uno que aplique a todas las colonias. No obstante, el precio tiene un rango muy amplio de variación entre colonias. Por ejemplo, $1,000 pesos de variación en precio por m2 pueden ser significativos en Apodaca, Nuevo León pero despreciables en Polanco, en la Ciudad de México.

Obtener un valor RMS que aplique a todas las colonias y que sea estadísticamente robusto implica utilizar la información de todas las colonias para el cálculo. Para esto se requiere estandarizar las series de tiempo de forma que sean comparables entre sí. Una forma de lograrlo es transformando la variable que está representada en la serie de tiempo; esto es, en lugar de medir directamente el precio por m2, medimos el cambio porcentual en precio con respecto al trimestre anterior. (Figura 2)
Esta transformación nos permite definir el cambio porcentual típico (RMS) de precio en un trimestre. Esto para todas las colonias de México. Con esto, calcular el Rango Dinámico de cada serie de tiempo se vuelve un proceso directo si se utiliza la definición mencionada.

Los resultados de nuestro caso de estudio arrojan que una serie de tiempo limpia debe tener un Rango Dinámico menor a 5 decibeles [dB]. Intuitivamente, 5 dB implica que el máximo valor de una serie de tiempo sobrepasa por hasta 77% a nuestro valor de referencia.

Si bien los resultados que arroja el Rango Dinámico son excelentes, los escépticos pueden argumentar que el precio de vivienda tiene un comportamiento sumamente regional, por lo que para buscar comportamientos anómalos en el precio, no es correcto utilizar un mismo valor de referencia para todo el país.
Para comprobar la validez de nuestros resultados, y refutar a los escépticos, utilizamos una segunda métrica de ruido llamada la Tasa de Señal a Ruido o Signal-to-noise-ratio (SNR), que se define como:

En este caso, obtuvimos el SNR individualmente para cada serie de tiempo, es decir observando únicamente la información de la colonia en cuestión. Al comparar el Rango Dinámico y el SNR, se observa que ambos se comportan de manera similar (Figura 4).

No obstante, en la Figura 4 se observan puntos con bajo SNR (señal supuestamente ruidosa) pero bajo Rango Dinámico (señal limpia). Este resultado aparentemente contraintuitivo se debe a que el SNR está siendo calculado con un menor número de observaciones y por ello es más propenso a error. El Rango Dinámico resulta ser una métrica más robusta en este caso de estudio.