Windows上安裝TensorFlow

網上大多數介紹安裝TensorFlow的文章,都讓你安裝Docker。而今TensorFlow已經原生支持Windows平臺了。本文介紹如何在Windows平臺上安裝Tensor Flow,以及GPU支持。

1 安裝NVIDIA相關軟件

  • DirectX SDK
  • CUDA Drivers
  • CUDNN-CUDA for Deep Neural Networks
    (1)首先安裝DirectX SDK(June 2010)
    如果安裝過程中提示Error Code: S1023,則需要打開控制面板,將Microsoft Visual C++ 2010 x86 Redistributable-10.0.xxxx和Microsoft Visual C++ 2010 x64 Redistributable-10.0.xxxx卸載,再重新安裝即可。
    (2)安裝CUDA Driver
    這裏,CUDA的下載網址爲官網地址,可按下圖所示選擇所需版本。我選擇的版本爲cuda_8.0.44_win10.exe,大小約1.2GB,可以使用迅雷等下載工具下載。
    這裏寫圖片描述
    下載完成後,打開Sample路徑:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0,選擇與本機Visual Studio相對應的Solution版本,這裏選擇的是Sample_vs2015.sln。然後分別編譯Release和Debug版本,編譯完成後,Win+R打開命令行窗口,cd C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release,運行deviceQuery,如果顯示如下畫面,則安裝成功。
    這裏寫圖片描述
    (3)安裝cuDNN
    從官網下載cuDNN,下載時會提示你登錄或註冊一個NVIDIA賬號,註冊完成或登陸以後即可下載。我下載的版本是cudnn-8.0-windows-x64-v5.1.zip。這是一個壓縮包,裏面的有bin、include和lib三個子文件夾,每個子文件夾裏有一個文件。這裏可以將這三個小文件分別拖放到CUDA安裝路徑下的文件夾下,如將cudnn64_5.dll放到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin裏。

2 安裝Python包

  • Anaconda3
  • TensorFlow
    (1)安裝Anaconda3
    Anaconda是Python的一個科學計算髮行包。TensorFlow在Windows平臺上只支持Pythoon3.4和3.5版本,所裏這裏下載的是Anaconda3-4.2.0-Windows-x86_64.exe。按照提示安裝即可。
    (2)安裝TensorFlow
    官網下載TensorFlow慢,可以從這裏下載TensorFlow的安裝包tensorflow‑0.12.1‑cp35‑cp35m‑win_amd64.whl或tensorflow_gpu‑0.12.1‑cp35‑cp35m‑win_amd64.whl。然後Win+R,CMD,打開命令行窗口,cd到安裝包的路徑,然後使用pip安裝即可。

3 測試

使用TensorFlow官方提供的Python示例代碼進行測試。代碼如下:

import tensorflow as tf
import numpy as np

# Create 100 phony x, y data points in NumPy, y = x * 0.1 + 0.3
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data * 0.1 + 0.3

# Try to find values for W and b that compute y_data = W * x_data + b
# (We know that W should be 0.1 and b 0.3, but TensorFlow will
# figure that out for us.)
W = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
b = tf.Variable(tf.zeros([1]))
y = W * x_data + b

# Minimize the mean squared errors.
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)

# Before starting, initialize the variables.  We will 'run' this first.
init = tf.global_variables_initializer()

# Launch the graph.
sess = tf.Session()
sess.run(init)

# Fit the line.
for step in range(201):
    sess.run(train)
    if step % 20 == 0:
        print(step, sess.run(W), sess.run(b))

# Learns best fit is W: [0.1], b: [0.3]

如果一切正常,則應該出現如下結果。
這裏寫圖片描述

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