J'ai essayé le DRQN pour des observations partielles, mais j'ai eu l'erreur :
ValueError : le tenseur de préfixe doit être un scalaire ou un vecteur, mais vu le tenseur : Tensor("Placeholder_2:0", dtype=int32)
self.state_in = rnn_cell.zero_state(self.batch_size, tf.float32)
J'ai trouvé qu'il y avait 3 lignes consécutives :
self.batch_size = tf.placeholder(dtype=tf.int32)
self.convFlat = tf.reshape(slim.flatten(self.conv4),[self.batch_size,self.trainLength,h_size])
self.state_in = rnn_cell.zero_state(self.batch_size, tf.float32)
je change la ligne :
self.batch_size = tf.placeholder(dtype=tf.int32)
dans:
self.batch_size = tf.placeholder(dtype=tf.int32,shape=[])
Et il fonctionne.
Merci!!!! Je pensais à coup sûr que le code était voué à l'échec, par https://github.com/tensorflow/tensorflow/issues/10213
Mais ce correctif est correct et a fonctionné pour moi aussi !
J'espère vraiment que @awjuliani pourra corriger dans le code (modifier littéralement une ligne), merci monsieur !
Je viens de faire le changement ! Merci de l'avoir signalé.
Commentaire le plus utile
J'ai trouvé qu'il y avait 3 lignes consécutives :
self.batch_size = tf.placeholder(dtype=tf.int32)
self.convFlat = tf.reshape(slim.flatten(self.conv4),[self.batch_size,self.trainLength,h_size])
self.state_in = rnn_cell.zero_state(self.batch_size, tf.float32)
je change la ligne :
self.batch_size = tf.placeholder(dtype=tf.int32)
dans:
self.batch_size = tf.placeholder(dtype=tf.int32,shape=[])
Et il fonctionne.