0

En examinant le RNN example chez Tensorflow, j'ai un problème avec la façon dont l'état initial est construit. Au moment de la construction du graphique, nous limitons le graphique pour gérer uniquement l'entrée d'une taille de lot. C'est un problème pour moi car je veux être en mesure de nourrir dans un seul exemple et obtenir une prédiction pour cet exemple unique.Tensorflow RNN exemple limité à la taille de lot fixe?

La partie du code qui limite c'est:

initial_state = state = tf.zeros([batch_size, lstm.state_size]) 

Alors ma question est de savoir comment puis-je développer l'exemple pour que je puisse utiliser une taille variable du lot afin que je puisse utiliser le même modèle pour la formation avec la taille de lot, puis utiliser un seul exemple pour les prédictions?

Répondre

2

Voici comment je fais cela. Vous pouvez passer la batch_size comme une variable comme ceci:

batch_size = tf.placeholder(tf.int32) 
init_state = cell.zero_state(batch_size, tf.float32) 

cell est l'une des cellules (RNN BasicLSTMCell, BasicGRUCell, MultiRNNCell, etc.). Cependant, si vous préservez l'état sur plusieurs lots qui ne fonctionneront pas puisque sa taille doit être constante.