1. 程式人生 > 程式設計 >解決tensorflow新增ptb庫的問題

解決tensorflow新增ptb庫的問題

ptb資料集是語言模型學習中應用最廣泛的資料集,常用該資料集訓練RNN神經網路作為語言預測,tensorflow對於ptb資料集的讀取也定義了自己的函式庫用於讀取,在python 1.0定義了models檔案用於匯入ptb庫函式,然而當python升級後,匯入models檔案時就會出現:ModuleNotFountError錯誤,這時需要靠自己下載匯入,github上有人共享了models檔案,但是不清楚如何安裝,網上教程很多,但是安裝了還有很多的錯誤,本人搗鼓了一天算將其成功匯入,因此寫成教程,可以不用下載低版本tensorflow,注意:該教程適用於linux系統下tensorflow。

步驟1:

在低版本tensorflow中,匯入ptb庫的語句為“from tensorflow.models.rnn.ptb import reader”,其形式與匯入mnist庫一樣,因此我們需要查詢安裝models庫的位置,在命令列中輸入:

locate tensorflow/examples/tutorials

此時將會顯示出有上面路徑的檔案,找到路徑*/tensorflow/examples/tutorials/mnist,此時路徑*/tensorflow就是我們安裝models的路徑,用cd命令進入該檔案。

步驟2:進入上面tensorflow檔案後,用git下載models資料夾,在命令列中輸入命令:

git clone –recurse-submoduleshttps://github.com/tensorflow/models

如果沒有安裝git,請自行百度如何安裝git

步驟3:此時執行含有語句“from tensorflow.models.rnn.ptb import reader”還是會出錯,主要是因為下載的檔案內容與低版本的庫有一定區別,可以逐步進入路徑“*/tensorflow/models”發現,沒有檔案rnn,rnn檔案存在與路徑“*/tensorflow/models/tutorials/”檔案下,因此我們需要將該語句改成

“from tensorflow.models.tutorials.rnn.ptb import reader”

步驟4:此時還會出錯,提示ModuleNotFoundError:No module name ‘reader',此時我們需要對ptb中的__init__.py檔案進行修改,將該檔案中的“import reader”修改成“from tensorflow.models.tutorials.rnn.ptb import reader”,還有將“import util”修改成“from tensorflow.models.tutorials.rnn.ptb import util”

此時再次執行程式,將成功匯入ptb

以上這篇解決tensorflow新增ptb庫的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。