前提:
下載anaconda,然后創建一個python虛擬環境:
命令: conda create -n tf_cpu python=3.6 # (tf_cpu 是這個虛擬環境的名字)
切換到該虛擬環境下:
命令:activate tf_cpu
查看所有虛擬環境列表
命令:conda env list
不完美版tensorflow安裝:
切換到自己的虛擬環境下后,直接利用pip安裝:
命令:pip install --upgrade --ignore-installed tensorflow
這樣安裝結束后tensorflow就可以使用了,但是有一個問題,會發出警告:
Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2
原因是下載的TensorFlow的版本不支持cpu的AVX2編譯,但是不影響正常使用,只是好像性能不能得到完美發揮。
騙自己的解決方式:
import os
os.environ["TF_CPP_MIN_LOG_LEVEL"]='1' # 這是默認的顯示等級,顯示所有信息
os.environ["TF_CPP_MIN_LOG_LEVEL"]='2' # 只顯示 warning 和 Error
os.environ["TF_CPP_MIN_LOG_LEVEL"]='3' # 只顯示 Error
這樣你看不到警告了,但問題依舊沒有解決。。。
完美的解決方式:
卸掉原先的tensorflow,或者刪掉這個虛擬python環境,重新來一遍,這次不適用pip直接安裝tensorflow了。
去這兒:https://github.com/fo40225/tensorflow-windows-wheel 下載相應的tensorflow,手動安裝。
我是win10+python3.6 我下載的是這個:
https://github.com/fo40225/tensorflow-windows-wheel/tree/master/1.6.0/py36/CPU/avx2
然后在本地手動安裝就ok了。
但是安裝成功后,運行時沒有那個警告了,但是有會有另一個:
FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
這是因為numpy版本過高了,將版本降下來就ok了:pip install numpy==1.16.4