win10安裝Tensorflow


win10安裝Tensorflow

前提:

  1. 保證你的pip>=8.1版本 否則利用python -m pip install -U pip  進行升級,或下載pip源文件
  2. 確定你的顯卡是否支持cuda,以及cuda版本。利用NVIDIA控制面板查看,具體請百度。

  3. Python3.5 以上。

  4. 安裝的是tensorflowgpu版本

安裝:

       之前,TensorFlow還不支持Window系統,雖然可以安裝,但是極其麻煩。Google在2016年11月在開發者博客中宣布新版本            TensorFlow0.12,增加了對Window系統的支持。

安裝前准備:

TensorFlow有兩個版本CPU和GPU版本。GPU版本需要安裝CUDA和cuDNN的支持,CPU版本直接安裝即可。但是GPU圖像計算強於cpu版,

1.pip升級

首先查看電腦是否支持CUDA。確保你的Python版本是3.5 64位。確保你有穩定的網絡連接。確保你的pip版本 >= 8.1。用 pip -V 查看當前 pip 版本,用 python -m pip install -U pip 升級pip 。

然后可以開始下載 CUDA 和 cuDNN 的安裝包了,注意版本號,我的版本分別是 Ccuda_8.0.44_win10.exe和 cudnn-8.0-windows10-x64-v6.0

 

 

2.cuda安裝

本人的機器支持GPU,所以我安裝的是GPU版本。

安裝cuda  https://developer.nvidia.com/cuda-downloads

將下載的文件解壓,運行安裝程序,安裝過程屏幕可能會閃爍,安裝時間有點長。安裝之后系統變量會自動為你添加上。

測試一下是否安裝成功,命令行輸入nvcc –V ,看到版本信息就表示安裝成功了。

3.cudnn安裝

安裝cuDNN 必須和cuda版本對應 https://developer.nvidia.com/cudnn 需要填寫一些問卷

cuDNN是壓縮包,解壓之后放在需要存放的位置。需要的位置是指和cuda對應的文件夾,比如:將cuDNN文件夾bin的文件復制到cuda相應的文件夾bin下。其他的文件夾類似。

 

 

4.配置環境變量path

 

 

 

關鍵坑(運行TensorFlow)

 

1.TensorFlow 是一個編程系統, 使用圖來表示計算任務,圖必須在Session(會話)里被啟動. Session將圖的op(操作)分發到諸如CPU或GPU之類的設備上運行。所以,這個時候你運行python然后import tensorflow as tf是不會報錯的,但是當你要執行tf.Session()的時候可能就有問題了。這個時候將會調用cuda,我在這里遇到的問題是各種lib,dll加載不了。經過一番檢查,定位到問題,cuda安裝完成后默認的環境變量配置不對,CUDA_PATH是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,但是這樣不能直接訪問到bin和libnvvp下的程序包,在path中加上這兩個路徑即可。
2.結果還有問題…還有一個庫加載不了,就是上面的cuDnn庫了,很簡單,解壓剛才下下來的安裝包,將這三個文件夾下的文件拷到CUDA對應的文件夾下面即可。


這樣就大功告成了。
最關鍵一步:
pip3 install tensorflow-gpu
哈哈哈,就這么簡單,快去測試一下吧
#coding=utf-8

import tensorflow as tf
import numpy as np
import os
#忽略python的警告信息
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
# 使用 NumPy 生成假數據(phony data), 總共 100 個點.
x_data = np.float32(np.random.rand(2, 100)) # 隨機輸入
y_data = np.dot([0.100, 0.200], x_data) + 0.300
# 構造一個線性模型
#
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
# 初始化變量
init =tf.global_variables_initializer()
# 啟動圖 (graph)
sess = tf.Session()
sess.run(init)
# 擬合平面
for step in range(0, 201):
sess.run(train)
if step % 20 == 0:
print (step, sess.run(W), sess.run(b))


成功的樣子:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM