Je tensorflow 1.1.0MulticellRNN Erreur avec tensorflow
Et je suivais un tutoriel de base de https://github.com/ageron/handson-ml/blob/master/14_recurrent_neural_networks.ipynb sur multicellulaire (empilés) RNNs
Le code suivant génère une erreur bizarre et je ne peux pas comprendre pourquoi de la recherche.
import tensorflow as tf
n_inputs = 2
n_neurons = 100
n_layers = 3
n_steps = 5
X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])
basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)
multi_layer_cell = tf.contrib.rnn.MultiRNNCell([basic_cell for _ in range(n_layers)])
outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)
init = tf.global_variables_initializer()
Cela semble être le bon code, mais il obtient l'erreur:
ValueError: Tentative de réutilisation RNNCell avec une portée variable différente de sa première utilisation. La première utilisation de la cellule était avec la portée 'rnn/multi_rnn_cell/cell_0/basic_rnn_cell', cette tentative est avec la portée 'rnn/multi_rnn_cell/cell_1/basic_rnn_cell'. Veuillez créer une nouvelle instance de la cellule si vous souhaitez qu'elle utilise un ensemble de poids différent. Si auparavant vous utilisiez: MultiRNNCell ([BasicRNNCell (...)] * num_layers), changez pour: MultiRNNCell ([BasicRNNCell (...) pour _ in range (num_layers)]). Si vous utilisiez auparavant la même instance de cellule que la cellule directe et la cellule inverse d'un RNN bidirectionnel, créez simplement deux instances (une pour l'avant, une pour l'inverse). En mai 2017, nous commencerons à faire passer le comportement de cette cellule pour utiliser les poids stockés existants, le cas échéant, avec scope = None (ce qui peut entraîner une dégradation silencieuse du modèle, donc cette erreur persistera.)
J'ai mis en gras une partie que j'ai fait passer du code dans le Github. Avez-vous une idée de la raison pour laquelle cela continue à générer une erreur? L'aide est très appréciée!