Maison >développement back-end >Tutoriel Python >Comment fonctionnent les pas de temps et les fonctionnalités dans les LSTM Keras ?
Comprendre les pas de temps et les fonctionnalités LSTM
Dans le code Keras donné, le tableau trainX a une forme de (échantillons, pas de temps, caractéristiques ). Cela signifie que les données sont remodelées en un tableau tridimensionnel, où la première dimension représente le nombre d'échantillons, la deuxième dimension représente le nombre de pas de temps et la troisième dimension représente le nombre de caractéristiques.
Dans le contexte du diagramme que vous avez fourni, chaque case verte représente un pas de temps et chaque case rose représente une fonctionnalité. Par conséquent, le code considère le cas « plusieurs contre un », où il existe plusieurs cases roses (caractéristiques) pour chaque case verte (pas de temps).
L'argument des caractéristiques devient pertinent lorsque l'on considère des séries multivariées, telles que modéliser simultanément deux valeurs financières. Dans ce cas, chaque fonctionnalité représenterait l'une des actions, et le nombre de fonctionnalités serait égal au nombre d'actions modélisées.
Comprendre les LSTM avec état
Les LSTM avec état n'enregistrent pas les valeurs de la mémoire des cellules entre les exécutions de lots. Au lieu de cela, ils conservent leur état en interne à travers les lots. Dans le cas du code fourni, où la taille du lot est de un, le LSTM mettra à jour son état interne en fonction de l'entrée actuelle et utilisera cet état pour traiter l'entrée suivante. En réinitialisant les états entre les exécutions d'entraînement, le LSTM est obligé de recommencer à zéro avec chaque lot.
Ce comportement est important pour des cas tels que la prévision des pas de temps futurs, où le modèle doit se souvenir du contexte des entrées passées. pour faire des prédictions précises.
Notes supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!