tf1.13.1 及 tf2.0.0 相关依赖及版本
硬件说明:显卡NVIDIA-GEFORCE-GTX-1060
1.驱动版本检查,并且更新显卡驱动【这一步很重要,你的驱动版本低了,cuda及cudnn就可能出错】
错误:DLL load failed: 找不到指定的模块。
cmd中输入:nvidia-smi
显卡驱动已经是最新的了。如果不是最新的显卡驱动,需要手动更新一下。
补充:驱动version对应 cuda 和 cudnn的版本
我们安装的cuda 是10.0.130 所以:win10对应的nvidia的驱动版本要大于411.31。【我更新后的显卡驱动为:436.48满足条件】
假如你的驱动版本低于411.31,就需要更新驱动
驱动下载地址:https://www.nvidia.com/Download/index.aspx?lang=en-us
选择下载版本:根据自己电脑的显卡型号进行选择(百度相关机型,就能有详细信息;也可以在硬件里查看;)
第一次下载的标准版本,提示我的电脑windows Drivers Type 为DCH 而不是标准版本,所以重新下载安装成功。
下载的驱动:436.48-desktop-win10-64bit-international-dch-whql.exe 按提示(prompts)安装即可。
说明:我是先卸载原有NVIDIA驱动之后安装的,如果你没有卸载原有驱动,覆盖安装不清楚是否可行。
2.安装tensorflow-gpu1.13.1【如果没有安装anaconda,先自行安装】
2.1创建虚拟环境 tf113:
在cmd以管理员身份运行:conda create -n tf113 python=3.6.9
2.1.1激活 tf113 安装cudatoolkit 及cudnn
查看可供安装的版本:conda search cudatoolkit
网上很多说10.1不太支持,反正自己前几次10.1的安装,没有成功。这里就直接安装10.0.130
conda install cudatoolkit=10.0.130
同理:查看cudnn的版本 :conda search cudnn
支持cuda10.0的cudnn有两个版本 选择一个
conda install cudnn=7.3.1
查看tensorflow-gpu可供选择的版本
conda search tensorflow-gpu
因为最近学习的内容,大部分是在tensorflow1.13.1基础上完成的,所以这里选择安装该版本
conda install tensorflow-gpu=1.13.1
现在开始安装 numpy scikit-leran Keras等平时需要用到的包
conda install numpy
提醒:该虚拟环境,最好手动更新安装包,不要批量更新
2.2创建虚拟环境 tf200:
2.2.1在cmd以管理员身份运行:conda create -n tf200 python=3.6.2
2.2.2:激活虚拟环境tf200 :conda activate tf200
2.2.3:安装cuda :conda install cudatoolkit=10.0.130
2.2.4:安装cudnn :conda install cudnn=7.3.1
2.2.5:安装tensorflow-gpu 2.0.0
注意:conda search tensorflow-gpu 2.0.0 的库中并没有 该版本的tf包,所以选择用pip进行安装
2.2.5.1:更新pip至最新的版本,这一步很关键,不是最新的版本,有可能找不到tf2.0的包
python -m pip install --upgrade pip ##更新到最新,方式不统一
2.2.5.2 :通过清华源进行安装(清华源更改:操作指导 :https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)
pip install tensorflow-gpu==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
2.2.5.3:安装过程提升错误:ERROR: tensorboard 2.0.0 has requirement setuptools>=41.0.0, but you'll have setuptools 36.4.0 which is incompatible.
升级setuptools:查看有哪些版本 conda search setuptools
conda install setuptools=41.4.0
2.2.6测试tf2.0是否安装成功
import tensorflow as tf version = tf.__version__ gpu_ok = tf.test.is_gpu_available() print("tf version:",version,"\nuse GPU",gpu_ok)
tf version: 2.0. use GPU True
开始接下来的学习之旅