Procesos Gaussianos para la generación de datos sintéticos

Los procesos Gaussianos son un tipo de modelo estadístico generativo, por lo tanto para cada punto se calcula no solo la predicción de él, si no su distribución (esto significa que cada punto tiene consigo un intervalo de confianza asignado, de valores esperados), son modelos complejos de crear y que requieren un trabajo previo para una adecuada elección de hiperparámetros pero, con un trabajo bien hecho, podemos crear un modelo muy bueno que se asemeje a los datos. Finalmente, son modelos flexibles que pueden ser usados con diferentes tipos de datos, entre ellos los datos espacio-temporales.

El modelo utiliza kernels, que son funciones para calcular la similitud entre diferentes datos xi, xj, dependiendo de esta similitud crea funciones de tal manera que estas funciones tienen valores parecidos de f(x) para x similares, estos kernels tienen también parámetros específicos de cada tipo de kernel.

Estos kernels tiene que tener una serie de propiedades, como ser simétricos (la similitud de x y x’ es la misma que la de x’ y x) y tener autovalores positivos. La correcta elección de estos kernels es muy importante para generar la función adecuada a los datos, ya que la selección de estos afectará a las características de la función.

Estos kernels se pueden sumar y multiplicar para aproximar diferentes funciones y crear kernels mas complejos. (por ejemplo, un kernel exponencial al que le sumamos un kernel periódico, por lo tanto obtenemos algo como:

La existencia de tantos Kernels diferentes genera un problema complejo de crear, ya que es necesario elegir los kernels adecuadamente y crear el modelo dependiendo de las necesidades de los datos.

Cada Kernel tiene sus parámetros específicos, que son los parámetros que el modelo entrenará.

Este tipo de funciones se pueden utilizar para generar datos temporales en dos ámbitos diferentes:

  • Generar futuros datos en el tiempo: Al saber la función que siguen los datos podemos generar datos de momentos que no han sucedido todavía, sin embargo estos datos tendrán una incertidumbre mas elevada
  • Generar Series temporales similar: Al tener la función con su respectivo intervalo de confianza, podemos elegir una de las funciones que este dentro de ese intervalo y generar datos a partir de ella

¡Os continuaremos presentando modelos en el Blog!