3 votos

entender los resultados de lstm

Estoy siguiendo una introducción a las Redes Neuronales LSTM de este repo - https://github.com/jaungiers/LSTM-Neural-Network-for-Time-Series-Prediction

El autor propone varias formas de trazar y comprobar las predicciones. La que me confunde es su método en LSTM.py llamado predict_sequences_multiple. El código dice así:

def predict_sequences_multiple(model, data, window_size, prediction_len):
    #Predict sequence of 50 steps before shifting prediction run forward by 50 steps
    prediction_seqs = []
    for i in range(int(len(data)/prediction_len)):
        import pdb
        curr_frame = data[i*prediction_len]
        predicted = []
        for j in range(prediction_len):
            predicted.append(model.predict(curr_frame[newaxis,:,:])[0,0])
            curr_frame = curr_frame[1:]
            curr_frame = np.insert(curr_frame, [window_size-1], predicted[-1], axis=0)
        prediction_seqs.append(predicted)
    return prediction_seqs

Esencialmente, observa una ventana deslizante de 50 ticks en los datos, predice el siguiente valor de la secuencia, desliza la ventana a la derecha en uno e incluye el valor predicho como el elemento más reciente de la ventana deslizante, sobre el que vuelve a probar el modelo. De este modo, las predicciones del modelo se introducen en los datos de prueba. Soy bastante novato en la ciencia de datos y las predicciones de series temporales, pero no entiendo por qué alguien haría esto, ya que cualquier error en el modelo volvería a alimentarse a sí mismo. ¿Hay alguna razón específica para analizar los resultados de esta manera?

1voto

Utiliza la previsión multietapa recursiva para predecir más de una etapa en el futuro. Su suposición acerca de la alimentación de los errores de nuevo en el modelo es correcta, los errores se acumulan y aumentan exponencialmente de esta manera. Pero en el caso del código que has publicado esto se hace para trazar las líneas de tendencia y visualizar las predicciones del modelo.

https://machinelearningmastery.com/multi-step-time-series-forecasting/

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