本文首发在CSDN博客:http://blog.csdn.net/xxzhangx/article/details/54379255
前几天,谷歌推出了windows对tensorflow的支持,我参考下面两篇博文来安装了我的tensorflow。
为表示对原创作者的尊敬,先列出参考的文章。
- 参考文献
https://m.aliyun.com/yunqi/articles/68435
http://blog.csdn.net/zhuxiaoyang2000/article/details/54317206
第一步:安装CUDNN
这里选择的是cuda_8.0.44_win10,链接
为:https://developer.nvidia.com/cuda-downloads
网站截图:
1.18G,下载完后,直接安装,改为自定义方式,不用修改安装目录,就安装在C盘下,方便后面的文件操作。
或去我的百度云网盘下载:链接:http://pan.baidu.com/s/1c2KdNgO 密码:gwm1
第二步:编译cuda
-
说明
电脑必须安装Microsoft Visual Studio,10、12、13、15,这4个版本任意一个都可以。
安装完成后,打开Sample路径:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0,选择与本机Visual Studio相对应的Solution版本,这里选择的是Sample_vs2015.sln。然后分别编译Release和Debug版本。
然后漫长的等待,对Release编译一次,然后切换到Debug下,编译一次。图中发现我的编译在某些库上报错了,其原因我也不知道,但是对后面的运行暂时没发现错误。
编译完成后,Win+R打开命令行窗口,cd C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release,运行deviceQuery,如果显示如下画面,则安装成功。
第三步:安装cuDNN
这里我不知道为什么要安装,在参考文章中有说要安装,那就根据别人成功的例子来,少踩坑。
版本号:cudnn-8.0-windows-x64-v5.1,这里可以直接用的,百度云链接:链接:http://pan.baidu.com/s/1gf9ior5 密码:so8m
我是将cudnn中的文件直接放在目录 C:\ProgramData\NVIDIA GPU Computing Toolkit\v8.0
第四步:安装python
这里采用的是anaconda 4.2 python 3.5,下载网址:https://www.continuum.io/downloads
或者去我的百度云下载:链接:http://pan.baidu.com/s/1nuQqMPr 密码:gl4h
第五步:安装tensorflow
完全根据文章中的流程来做,链接https://m.aliyun.com/yunqi/articles/68435
下载完后安装好,然后打开cmd,切换到anaconda4的scripts下:cd E:\Anaconda3\Scripts,用conda create --name tensorflow python=3.5 创建环境,可在env下查看参加的tensorflow环境
依次执行下面的代码:
activate tensorflow
conda install jupyter
conda install scipy
pip install tensorflow
注意:每次提示都选择“y”或“是”,下载时最好能连上VPN,这样能保证下载稳定少出错。
下面依次贴图说明:
- 先激活tensorflow:
activate tensorflow
- 安装juypter
再继续输入:
conda install jupyter
图
- 安装常用的python包,例如scipy
- 安装tensorflow
或直接下载到本地来安装,去https://pypi.python.org/pypi 搜索对应的版本:
- tensorflow 非gpu: python 2.7 和 3.5
- tensorflow-gpu: python 3.5
本地安装
在juypter下测试:
打开juypter下测试MNIST 数据集
测试代码:
import tensorflow as tf
x = tf.placeholder(tf.float32, [None, 784])
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x, W) + b)
y_ = tf.placeholder(tf.float32, [None, 10])
cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
for i in range(1000):
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
print(sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels}))#结果
测试代码截图如下:
与官网https://www.tensorflow.org/versions/r0.12/tutorials/mnist/beginners/index.html结果比较:
一些可能的错误
欢迎补充
仅列下我遇到的问题
- 安装过程中报错了,再次pip install tensorflow 却显示已经存在,可以用 pip uninstall tensorflow 卸载,重新pip install tensorflow 来安装。
- 在anaconda2下安装遇到qt[vc-14]的问题,换到anaconda3下就没有了