前几天安装了一下跑tensorflow需要的环境,感觉官方的文档不够详细,很多地方出错了只有上网搜,故把整个流程和经验记录下来。
第一步:安装anaconda
anaconda是一个巨好用的python包管理和环境管理软件,有了它妈妈在也不用担心安装依赖和版本问题了。官方下载很慢,建议用清华镜像站的,我下载的是
Anaconda3-5.3.1-Windows-x86_64.exe,安装的python版本是3.7(最开始没太理解anaconda的作用,看tensorflow官网支持windows的gpu要求的版本为Python3.6,直接重装了3.6.。。。)
因为安装的时候推荐自己设置环境变量,所以把anaconda/bin和anaconda的路径都添加到path里了。
创建虚拟环境conda create -n 名字,之后各种东西都在里面装(因为不同项目依赖的东西的版本都可能不一样,如果你只用默认的base,那么将面临无限装卸的循环中,不同环境各成一套体系我觉得更好一些),然后activate 名字切换虚拟环境。
第二步:安装cuda和cudann
用英伟达控制面板-》帮助-》系统信息-》组件,看一下NVCUDA.DLL的产品名称里面的版本,只能比你安装的cuda版本高不能低(我这一个10.1一个10.0没影响)
官方现在还是只支持10.0 https://developer.nvidia.com/cuda-10.0-download-archive,你要用10.1会比较麻烦。
然后下载对应版本的cudann https://developer.nvidia.com/rdp/cudnn-download。
跑一下安装cuda后的自带测试C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.0\1_Utilities\deviceQuery(这里要注意编译的时候如果像stdio.h这些基本库找不到,把项目的SDK换成你 安装的版本就行),看一看找不着得到你的gpu。
第三步:安装tensorflow
我最开始直接用的pip install tensorflow-gpu,下载的是1.14版本,能跑起来但会提示CPU支持AVX2但是没有编译成的相关库,warning逼死强迫症,上github上找人家编译好的支持gpu,avx2和 py3.6的下下来pip install安装了。速度慢的可以上码云上找,很多人fork的。然后提示future numpy什么的,把numpy降级到1.16就没事了。
测试代码如下:
import tensorflow as tf import numpy as np a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name=‘a‘) b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name=‘b‘) c = tf.matmul(a, b) sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) print(sess.run(c))
第四步:使用jupyter notebook
由于安装anaconda时已经自动安装了,所以只需要使其能切换环境就ok了。在网上找了一下,在base环境下conda install nb_conda,然后在创建的环境中conda install ipykernel,打开网页就能在kernel里改变运行环境了。
小提示:
配置过程中有很多错误提示在网上并没有搜到,按照提示做了也没啥用,重启之后就正常了。所以有搜不到的问题,重启大法好。
原文地址:https://www.cnblogs.com/utopin/p/11597467.html