win10+python3.6+tensorflow1.9-gpu+cuda9+cudnn7安装成功!
注意:(本人实际亲自测试,如果不成功,随时骚扰:[email protected] ,如果按照这个流程走一遍的话应该没有不成功的吧!哈哈哈哈哈 )
(1)环境:win10+python3.6+tensorflow1.9-gpu+cuda9+cudnn7
(2)其实没有必要使用最新的tensorflow,因为python3.6和tensorflow-gpu 1.9的搭配已经十分完美了。最新的版本反而有很多未知的BUG。如果你不想出现很多的BUG的话,那么就请您继续往下看吧。
(3)需要卸载之前安装的全部东西,比如什么独立安装的python啊,什么显卡驱动啊,什么cuda啊,什么cudnn啊,什么anaconda啊,全部卸载之后。就请进入tensorflow世界的大门吧!!!
安装流程:
1 安装anaconda,此时需要注意的是,我们安装的anaconda是Anaconda3-5.2.0-Windows-x86_64.exe 因为anaconda的版本对应着python的版本。安装好这个版本的anaconda也就安装好了python3.6
链接:https://pan.baidu.com/s/1mDJ-LeX_6k-sKXSyLP34DQ
提取码:nms2
2 安装自己电脑对应的显卡驱动,英伟达显卡驱动直接安装最新版的就好,有人说显卡驱动不必是最新的,这个没有关系,我们用的是CUDA,所以,安装最新的显卡驱动就好,如下:
https://www.nvidia.cn/Download/index.aspx?lang=cn
3 安装cuda9:https://developer.nvidia.com/cuda-downloads
4 安装cudnn7:https://developer.nvidia.com/rdp/form/cudnn-download-survey
5 如果是第3步和第4步没有找到这个版本的话,那么我都放到自己的百度网盘里面啦:
CUDA:链接:https://pan.baidu.com/s/1zxesApEjGQ6872YwiG011Q
提取码:1poh
链接:https://pan.baidu.com/s/1DR0KxWSL6bEAaO-ZSfYFSQ
提取码:4qry
6 将cudnn解压,里面有bin,include,lib的文件夹,将里面的文件全部复制到 你安装的cuda的文件目录:\NVIDIA GPU Computing Toolkit\CUDA\v9.2 粘贴完之后,如下:
7 添加环境变量:也就是将 \NVIDIA GPU Computing Toolkit\CUDA\v9.2 里面的这个三个文件夹 bin include lib 添加到环境变量。
8 安装tensorflow:下载我的tensorflow-gpu :
链接:https://pan.baidu.com/s/1ZHsPe6v_5QtwXtFQOp4umQ
提取码:8a6m
将下载好的tensorflow_gpu-1.9.0-cp36-cp36m-win_amd64.whl文件放到 C:\Users\你的电脑用户 里面
9 打开Anaconda Prompt:pip install tensorflow_gpu-1.9.0-cp36-cp36m-win_amd64.whl
这个步骤就是安装我们下载好的gpu版本的tensorflow,pip安装就好。
10 全部安装好打开spyder,第一次测试:
import tensorflow as tf
import numpy as np
# 使用 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.initialize_all_variables()
# 启动图 (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))
# 得到最佳拟合结果 W: [[0.100 0.200]], b: [0.300]
出现警告是因为没有安装最新的版本。嗯,我知道了。不过没有错误啊,下次我在尝试安装更高版本的总可以吧!