2017-04-15 92 views
0

我是新來的深度學習,並試圖執行此處寫的代碼 http://r2rt.com/recurrent-neural-networks-in-tensorflow-i.htmlAttributeError:'模塊'對象沒有屬性'setup_graph'

我想實現相同的代碼,但我得到的錯誤

no module name basic_rnn

而進口basic_rnn寫在代碼:

import basic_rnn 
def plot_learning_curve(num_steps, state_size=4, epochs=1): 
    global losses, total_loss, final_state, train_step, x, y, init_state 
    tf.reset_default_graph() 
    g = tf.get_default_graph() 
    losses, total_loss, final_state, train_step, x, y, init_state = \ 
    basic_rnn.setup_graph(g,basic_rnn.RNN_config(num_steps=num_steps, state_size=state_size)) 
    res = train_network(epochs, num_steps, state_size=state_size, verbose=False) 
    plt.plot(res) 

後來我改變basic_rnn = tf.contrib.rnn.BasicRNNCell, 然後我收到錯誤

'module' object has no attribute 'setup_graph'.

我假設我會在執行basic_rnn.RNN_config時再次出錯。 什麼是正確的語法? 我使用的版本tensorflow 1.0.0 請幫助

回答

0

你可以看一下作者提供的要點碼,r2rt: https://gist.github.com/anonymous/5fc9903990ecec5f09361934920bb999。儘管您需要稍微調整一下代碼才能運行。

基本上,你需要在basic_rnn.py中實現setuo_graph和RNN_config函數。但是由於原始博客正在比較的有三個版本的RNN,我認爲如果將RNN_config放在一個Python文件中會更好。

此外,我發現一些r2rt的代碼已被棄用,所以我修改了代碼並創建了自己的repo。如果您有興趣,請查看: https://github.com/innerfirexy/rnn-tf-r2rt

您可以在IPython的run_RNNs.py中運行代碼。我通過將RNN_config函數移動到train.py並給train_network一個配置參數來改變gist代碼。

相關問題