RNN MNISTのチュートリアルで詰まった話

RNNをtensorflowで構築して、一度途中でプログラムを中断して、また改めてプログラムを走らせたときに以下のエラーが出た(spyder python-3.6使用):

ValueError: Variable rnn/lstm_cell/kernel already exists, disallowed. Did you mean toset reuse=True or reuse=tf.AUTO_REUSE in VarScope? Originally defined at:

File “/home/masahiro/myreserch/rnn_mnist.py”, line 24, in RNN

outputs, states = rnn.static_rnn(lstm_cell, x, dtype=tf.float32) 

File “/home/masahiro/myreserch/rnn_mnist.py”, line 32, in <module> 

preds = RNN(x) File “/home/masahiro/anaconda3/envs/research/lib/python3.6/site-packages/spyder_kernels/customize/spydercustomize.py”, line 108, in execfile exec(compile(f.read(), filename, ‘exec’), namespace)

よくわからないが、調べてみるとグラフ変数が残っているのが良くないみたいなので、2つの解決策があるようだ。

1:まず、シンプルに、コンソールを再起動。

2:グラフをリセットする

tf.Session(tf.reset_default_graph())

上記のコードをプログラムの最初に書いておく。

これで普通に使えるようになりました。

コメント

タイトルとURLをコピーしました