92 votos

¿Cómo aplicar redes neuronales para predicción de series de tiempo?

Soy nuevo en el aprendizaje de la máquina, y he estado tratando de averiguar cómo aplicar las redes neuronales para el pronóstico de serie temporal. He encontrado de recursos en relación a mi consulta, pero me parece ser todavía un poco perdido. Creo que una explicación básica sin demasiado detalle, sería de ayuda.

Digamos que tengo algunos de los precios de los valores para cada mes durante un par de años, y quiero predecir nuevos valores de precios. Yo podría obtener una lista de precios de los últimos meses, y luego tratar de encontrar tendencias similares en el pasado el uso de K-Vecino más Cercano. Yo podría utilizar la tasa de cambio o alguna otra propiedad de las tendencias pasadas para intentar predecir nuevos precios. Cómo puedo aplicar red neuronal para este mismo problema es lo que estoy tratando de averiguar.

111voto

christy Puntos 51

Esta es una receta sencilla que puede ayudarle a empezar a escribir código y probar ideas...

Supongamos que usted tiene un plan de datos mensual registrado a lo largo de varios años, por lo que tiene 36 valores. Supongamos también que sólo se preocupan por la predicción de un mes (valor) de antemano.

  1. Análisis exploratorio de datos: Aplicar algunos de los tradicionales análisis de series de tiempo métodos para estimar el retraso de la dependencia en los datos (por ejemplo, auto-correlación parcial y de auto-correlación de las parcelas, de transformaciones, de diferenciación). Digamos que usted encuentre un mes determinado del valor se correlaciona con los últimos tres meses de datos, pero no mucho más allá de eso.
  2. La partición de los datos en el entrenamiento y los conjuntos de validación: Tome la primera a 24 puntos de su formación de valores y el resto de los puntos como el conjunto de validación.
  3. Crear la red neuronal de diseño: voy a tomar los últimos tres meses los valores de los insumos y desea predecir el próximo mes valor. Por lo tanto, necesita de una red neuronal con una capa de entrada que contiene tres nodos y una capa de salida que contiene un nodo. Probablemente, usted debe tener una capa oculta con al menos un par de nodos. Por desgracia, recogiendo el número de capas ocultas, y su respectivo número de nodos, no es algo por lo que hay pautas claras. Me gustaría empezar poco a poco, como 3:2:1.
  4. Crear la formación de patrones: Cada patrón de entrenamiento será de cuatro valores, con los tres primeros corresponden a los nodos de entrada y la última definición de lo que el valor correcto es que el nodo de salida. Por ejemplo, si los datos de entrenamiento son los valores de $$x_1,x_2\dots,x_{24}$$ a $$el patrón 1: x_1,x_2,x_3,x_4$$ $$patrón 2: x_2,x_3,x_4,x_5$$ $$\dots$$ $$patrón de 21: x_{21},x_{22},x_{23},x_{24}$$
  5. Entrenar la red neuronal en estos patrones
  6. La red de prueba en el conjunto de validación (meses 25-36): de Aquí se pasa en los tres valores de la red neuronal de necesidades para la capa de entrada y ver lo que el nodo de salida se establece en. Así que, para ver el comportamiento de la red neuronal entrenada puede predecir mes 32 del valor que va a pasar en valores para los meses 29, 30 y 31 de la

Esta receta es, obviamente, de alto nivel y que puede rayar la cabeza al principio, cuando tratando de mapa de su contexto en las diferentes bibliotecas de software/programas. Pero, esperemos que esta esboza el punto principal: es necesario crear la formación de los patrones que razonablemente contienen la estructura de las correlaciones de la serie que están tratando de previsión. Y si las previsiones con una red neuronal o un modelo ARIMA, el trabajo exploratorio para determinar lo que la estructura es a menudo es el más difícil y toma mucho tiempo parte.

En mi experiencia, las redes neuronales pueden proporcionar una gran clasificación y pronóstico de la funcionalidad, pero la configuración de tiempo de consumo. En el ejemplo anterior, usted puede encontrar que el 21 de formación de patrones no es suficiente; los datos de entrada diferentes transformaciones conducen a un mejor/peor de los pronósticos; variando el número de capas ocultas y los nodos de la capa oculta afecta en gran medida las previsiones; etc.

Yo recomiendo mirar el neural_forecasting sitio web, que contiene toneladas de información en la red neuronal de previsión de las competiciones. Las Motivaciones de la página es especialmente útil.

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