windows10 安装tensorflow-gpu1.5 cuda9.0
1.1 安装Anaconda3
首先去下载安装Anaconda3(Anaconda3-5.1.0-Windows-x86_64.exe)
安装完成这个软件后进入cmd无法识别conda。于是发现这个软件有问题,
于是卸载了这个,先安装了Miniconda3-latest-Windows-x86_64.exe。
之后可以进入cmd,使用conda。
运行cmd :
conda -V :
C:\Users\Administrator>conda -V
conda 4.5.1
C:\Users\Administrator>
由于对于这个conda不熟悉,参考网上经验又去建立了Anaconda3目录,其实没有必要的。
C:\Users\Administrator>conda env list
# conda environments:
#
base * D:\ProgramData\Miniconda3
Anaconda3 D:\ProgramData\Miniconda3\envs\Anaconda3
python35 D:\ProgramData\Miniconda3\envs\python35
tf-gpu D:\ProgramData\Miniconda3\envs\tf-gpu
tfgpu1.5 D:\ProgramData\Miniconda3\envs\tfgpu1.5
折腾这个Anaconda3 有耽误了好些时间。
之后安装了python35环境:conda create --name python35python=3.5
实际这样也没有必要。
后来经过多次尝试后明白了这个conda是什么意思的就很简单明了的建立了tf的环境了。
1.2 安装Miniconda3
首先安装Miniconda3,之后,可以使用conda。
这个conda可以建立不同的env。Env内可以使用不同的软件包进行配置。生成需要的环境。明白这之后就好办了,就可以安装tf了。
1.3 安装TF-GPU
conda create --name tfgpu1.5 python=3.5
建立一个python3.5 名字为tfgpu1.5的环境
activate tfgpu1.5
激活建立的环境。现在这个环境之中只安装了python3.5的安装包。
python -m pip install --upgrade pip
在这个环境中更新pip到最新。
pip install --upgrade tensorflow-gpu==1.5.0
安装 tensorflow-gpu的1.5.0版本。如果设备没有gpu就安装CPU版本的tf:tensorflow。
如果网速很慢,需要更换清华大学的源,网上有相关文档可以参考。
这个安装完成之后,tf的安装就算完成了。
1.4 安装cuda9.0 和对应cudnn:
cuda_9.0.176_win10 .exe
cudnn-9.0-windows10-x64-v7
安装cuda_9.0.176_win10.exe的时候选择自定义安装,不选择里面的VS的部分,否则安装报错。
解压cudnn-9.0-windows10-x64-v7,分别copy 目录中文件到cuda目录中对应的目录下。
并且把bin,inlcue,lib,的路径加入系统环境变量path中:
C:\Program Files\NVIDIA GPU ComputingToolkit\CUDA\v9.0\lib\x64
这个也要加入path中
1.4.1 建立环境:
1.4.2 更新pip,安装TF gpu版:
1.4.3 测试TF
1.5 测试TF
test.py
import tensorflow as tf
import numpy as np
x =tf.placeholder("float",shape=[None,1])
W = tf.Variable(tf.zeros([1,1]))
b = tf.Variable(tf.zeros([1]))
y = tf.matmul(x,W) +b
y_ =tf.placeholder("float",[None,1])
cost = tf.reduce_sum(tf.pow((y_-y),2))
train_step = tf.train.GradientDescentOptimizer(0.001).minimize(cost)
init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)
All_x = np.empty(shape=[1,1])
All_y = np.empty(shape=[1,1])
for i in range(1000):
x_s = np.random.rand(1,1)
y_s = np.dot([[0.33]],np.random.rand(1,1))+ 0.33
feed = {x: x_s, y_: y_s}
sess.run(train_step,feed_dict=feed)
print("After %d iteration:"%i)
print("W : %f"%sess.run(W))
print("b : %f"%sess.run(b))
All_x = np.concatenate((All_x,x_s))
All_y = np.concatenate((All_y,y_s))
print(All_x)
print(All_y)