mac下的tensorflow報錯提示沒有models庫

原因:目前tf1.0版本的也就是比較新的版本都將models庫剔除,當做第三方庫來使用了。

解決方案:
1. 直接重新下載安裝 tf的低的版本
2. 手動安裝models庫

我這裏選擇的是手動安裝models庫:
網上查的資料說可以通過提前下載好model文件,然後將models文件放在/Users/lilong/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/下,然後再次運行代碼,如果還是出現錯誤,就修改ptb下的__init__.py文件。

將
     import reader
     import uril
修改爲:
     from tensorflow.models.tutorials.rnn.ptb import reader
     from tensorflow.models.tutorials.rnn.ptb import uril

但是我的mac還是報錯找不到models模塊。。。

最後選擇另一種安裝方式,直接命令行下在線安裝,首先cd到tensorflow包的安裝路徑下,mac下查找tensorflow的包路徑的方法是在python或者ipython的交互式下敲入:import tensorflow,然後敲入tensorflow,我的mac下spyder顯示的是:

In [3]: tensorflow
Out[3]: <module 'tensorflow' from '/Users/lilong/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/__init__.py'>

在得到tensorflow包安裝的路徑後就在終端cd到對應的目錄下敲入如下命令:
cd /Users/lilong/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/

git clone --recurse-submodules https://github.com/tensorflow/models

安裝好以後會發現有了models目錄:
這裏寫圖片描述
這時敲入命令:vim models/tutorials/rnn/ptb/__init__.py編輯該.py文件,修改的方式即是上述的:

#修改爲:
     from tensorflow.models.tutorials.rnn.ptb import reader
     from tensorflow.models.tutorials.rnn.ptb import uril

這時再運行代碼就不會報錯了。。親測有效

這裏注意的是:原先下載好models-master.zip後,直接複製到相應的目錄下然後修改__init__.py還報錯的原因,可能是路徑的問題,應該先新建一個models文件,然後把解壓後的models-master.zip裏的文件再拷貝到新建的models文件下,最後修改__init__.py文件,這個方法我沒測試過,所以僅是猜測供參考。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章