Skflow 與 tensorflow 的版本匹配 問題
阿新 • • 發佈:2019-01-31
Python 中的 skflow 包 是入門神經網路的非常簡便的方法,
可以利用 skflow 快速搭建自己的神經網路。
這裡面雖然只要求了tensorflow版本的最低限,而現在預設安裝的一般都是最新版的tensorflow。
這樣就有一個版本不同的問題,將導致很多錯誤,需要到原始碼中慢慢改,
但是並不知道要改的地方到底有多少,費時費力。
skflow 與 TensorFlow 的版本匹配問題,困擾了我兩天,今天終於解決了。
現在的TensorFlow 出到了版本 1.0+ ,裡面與很多命令相對於 0.8.0 版本有所改變,
而我這兩天的經驗告訴我,skflow 是支援 TensorFlow0.8.0 的。
如果你用的是 TensorFlow1.0+,又想用 skflow 的話,建議安裝 TensorFlow0.8.0,
使用Ubuntu16.04 安裝 Python2.7 版本的命令如下
sudo pip2 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
這樣會減少很多 module 'tensorflow' has no atrribute '***' 之類的問題。
更換TensorFlow 版本解決了這些問題之後,
執行skflow程式的過程中,還會有一個問題,‘using a 'tf.tensor' as a python 'bool' is not allowed’
意思是:tensorflow 的 tensor 不能作為 python 的 bool(布林變數)使用。
這是來自原始檔的問題,可以順著找到對應的原始檔,將 裡面的" if t:" 改為 “if t is not None :”
這樣 ‘t is not None’ 就是一個合格的 bool 值了。
這樣就可以方便使用skflow快速搭建神經網路了。