6 votos

Modelos predictivos longitudinales

Tengo que construir un modelo predictivo y estoy buscando algunas ideas sobre el enfoque. Tengo un gran conjunto de datos de entrenamiento de los saldos de los clientes (piense en una cuenta de ahorros) en el momento t=1 a 36 que representan los promedios mensuales durante tres años. Quiero construir un modelo para predecir el valor de la cuenta de un cliente en t=4..36 utilizando sólo la información disponible al final de t=3. Por lo tanto, se trata de un problema de tipo predictivo, pero no en el sentido de las series temporales en las que se observa una secuencia de datos significativamente más larga que el horizonte temporal que se intenta predecir.

Estoy pensando en enfocar esto como un modelo de riesgo discreto, donde se crea una fila en el conjunto de datos para cada combinación de cliente/mes (así que aquí cada cliente tiene 33 filas en los datos y una variable llamada t toma los valores 4 a 36). Para cada mes se repiten las variables de "estado inicial" del cliente conocidas al final del mes 3. Esta es la configuración del llamado datos del periodo de la persona .

A continuación, aprendería un modelo de regresión sobre estos datos utilizando los datos del estado inicial y 't'.

No se tendría en cuenta el hecho de que los clientes se repiten en los datos. Esto funciona para un modelo de riesgo en tiempo discreto, pero mi pregunta es si esto es correcto para una regresión lineal o un algoritmo de aprendizaje automático (por ejemplo, una red neuronal). ¿Hay alguna forma mejor?

ADD : En concreto, me pregunto si un modelo de este tipo fallará si no tiene en cuenta explícitamente las medidas repetidas y la correlación entre filas (los mismos clientes en varios valores de "t"). Cuando se trata de un modelo predictivo, ¿cómo se podría tener en cuenta esto?

4voto

Jeff Bauer Puntos 236

Esta es la fase 1 de mi respuesta. Primero quiero asegurarme de que entiendo el modelo. Tomemos un solo cliente, digamos el cliente $i$ y denotar por $s_{it}$ su saldo de ahorro mensual. Por lo que escribe el OP, el modelo parece ser (para un cliente y asumiendo linealidad por el momento)

$$ s_{it} = g(a_1t,a_2t^2, a_3t^3,..) + X_{i3}\beta + u_{it},\qquad t=4,...,36$$

...donde $g(b_1t,b_2t^2, b_3t^3,..)$ representa diversas variables temporales (que entran de forma aditiva), y $X_{i3}$ es la matriz que incluye los "datos del estado inicial" (del período de tiempo $3$ ). ¿Es esta una representación exacta de la idea general? Si lo es, tengo una pregunta y una observación:
Pregunta: ¿qué ocurre con los datos del periodo 1,2,3? ¿No se utilizan de alguna manera (aparte de $X_{i3}$ )?

Observación: Si todos los regresores en $X_{i3}$ son invariables en el tiempo, entonces su efecto sobre $ s_{it}$ no pueden separarse: forman un "intercepto" compuesto.

A la espera de los comentarios de la OP.

FASE 2
Dadas las aclaraciones del OP (aunque, debo señalar que no es "por simplicidad" que un invariable en el tiempo regresor "no cambia con t"), exploremos el posible modelo

$$ s_{it} = \sum_{l=1}^{k}a_lt^l + X_i\beta + u_{it},\qquad t=4,...,36$$

Mi comentario anterior se mantiene: lo que sea está en $X_i$ ya sea con regresores específicos para el cliente $i$ o incluso productos de estos regresores, etc., o incluso algunas variables colectivas de períodos $1,2,3$ en la medida en que son invariables en el tiempo para el período de tiempo $4,...,36$ Entonces, sus efectos sobre la variable dependiente no pueden separarse. Además, $X_i$ es conocido y si se miden en las mismas unidades que la variable dependiente, entonces su suma debe restarse de la variable dependiente, no pertenecen al lado derecho de la ecuación.

Además, por un comentario de OP en otra respuesta, parece que se hace una suposición de que los clientes exhiben un comportamiento similar: es decir, podríamos utilizar algunas cuentas para estimar la regresión, y luego utilizar los coeficientes estimados para predecir el comportamiento de _otras_ cuentas, presumiblemente de otros clientes.

Teniendo en cuenta todo lo anterior, nos encontramos con un modelo que se puede escribir $$ s_{it} - \sum_{j=1}^{m}x_{ij} = \sum_{l=0}^{k}a_lt^l + u_{it},\qquad t=4,...,36\qquad i=1,...,n$$

...donde $n$ es el número de clientes que componen la muestra de entrenamiento. Este modelo podría estimarse mediante uno de los muchos estimadores de datos de panel disponibles, dadas también las restricciones impuestas por la estructura de la especificación. Pero aunque los datos de panel permitirían una mejor estimación de los coeficientes implicados, la cuestión principal sigue siendo: estamos dependiendo únicamente de las potencias de $t$ para captar la variabilidad de la variable dependiente. Personalmente, no me "fío" de ese tipo de modelos: son un caso clásico en el que se podría obtener un "ajuste perfecto" añadiendo más y más potencias de $t$ -sólo para descubrir que este modelo "perfectamente ajustado" es el peor cuando se trata de la predicción fuera de la muestra.

¿Y entonces qué? Creo que el $VARMA$ El modelado (también discutido en otra respuesta) es una mejor manera de ir: a saber, un vector modelo de media móvil autorregresiva:

$$s_{it} - \sum_{j=1}^{m}x_{ij} = \phi(L)s_{it} + \psi(L)u_{it},\qquad t=4,...,36\qquad i=1,...,n$$

donde $\phi(L)$ y $\psi(L)$ son polinomios en el operador de retardo que opera en $t$ .

2voto

Owen Fraser-Green Puntos 642

Su comentario "Por lo tanto, se trata de un problema de tipo de previsión, pero no en el sentido de las series temporales en las que se observa una secuencia de datos significativamente más larga que el horizonte temporal que se intenta predecir" me causa cierta preocupación. Si observo 3 números digamos 8,10,12 ... el "mejor modelo" para predecir esta corriente para los próximos 33 períodos sería un modelo ARIMA/Función de Transferencia con un predictor causal(t) de la forma y(t)=6+2*t+a(t) . Por lo tanto, para mí se trata de un "problema típico de previsión de series temporales", ya que no es necesario (aunque es una buena sugerencia) que los datos utilizados para desarrollar un modelo sean "más largos" que la duración de la predicción. Por otra parte, una representación funcionalmente equivalente es y(t)=y(t-1)+2+a(t), y ambas dan lugar a las mismas previsiones.

A medida que se disponga de nuevas observaciones, por ejemplo, los cuatro valores 8,10,12,10 , lo mejor que se podría hacer sería identificar la última observación (valor=10) como una anomalía y la ecuación seguiría siendo la misma que se elaboró utilizando las tres primeras observaciones. En términos de generalidad, el "8" podría considerarse una anomalía para el patrón "10,12,10", lo que sólo ilustra el problema de los conjuntos de datos pequeños. Esta ambigüedad desaparecería a medida que la muestra observada fuera mayor.

Una de nuestras series temporales clásicas es 1,9,1,9,1,9,5,9, donde el "5", aunque está cerca de la media, no se acerca al valor esperado del "1".

La combinación de ARIMA (el término general) y las excepciones detectadas empíricamente (pulsos, nivel/escalón, pulsos estacionales/tendencias temporales locales) puede conducir a modelos útiles.

1voto

NN1983 Puntos 11

A tenor de su afirmación, tal vez le interese estudiar el modelo de Markov oculto. El documento de Paas y otros le dará una buena idea. Para modelar lo mismo, puedes mirar el paquete depmixS4 en R.

Algunas de sus limitaciones podrían ser que sólo puede utilizar información hasta el mes 3, lo que perjudicará su estimación.

Espero que esto ayude. Me gustaría saber si no he entendido bien su problema.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X