win10安裝Tensorflow

win10安裝Tensorflowhtml

前提:python

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

  3. Python3.5 以上。windows

  4. 安裝的是tensorflowgpu版本網絡

安裝:dom

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

安裝前準備:spa

TensorFlow有兩個版本CPU和GPU版本。GPU版本須要安裝CUDA和cuDNN的支持,CPU版本直接安裝便可。可是GPU圖像計算強於cpu版,命令行

1.pip升級orm

首先查看電腦是否支持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))


成功的樣子:

相關文章
相關標籤/搜索