安装Tensorflow-gpu 与 keras的时候,一定先要注意版本的对应,不然很容易出错,在看的时候,建议先看完整篇文章再上手。
显卡:RTX3050Ti(notebook)
Windows10专业版
NVIDIA 511.65
(跟本人所使用的有所偏差)
python3.7.0+CUDA11.6.0+cuDNN8.3.2+tensorflow2.7.0+Keras2.7.0 python3.7.0+CUDA11.3.1+cuDNN8.2.1+tensorflow2.7.0+Keras2.7.0 python3.7.0+CUDA10.1.2+cuDNN7.6.5+tensorflow2.2.0+keras 2.3.1
本人所安装CUDA、CUDNN、tensorflow-gpu、keras 版本
cuda_11.6.1_511.6
cudnn_8.3.2.44
tensorflow-gpu 2.7.0
keras 2.7.0
即最终本人所用环境为
python3.8.12 + CUDA 11.6.1 + cuDNN 8.3.2 + tensorflow 2.7.0 + Keras 2.7.0
https://tensorflow.google.cn/install/source_windows?hl=en#gpu
NVIDIA 与CUDA的版本对应关系
参照表格选择
首先,在桌面【右键】-打开【NVIDIA 控制面板】-选择【帮助】-【系统信息】,再打开的系统信息中选择【组件】,即可看到本机GPU对应支持的CUDA版本:
组件3D设置重点NVCUDA64.DDL 后面的产品名称
或者可以在终端输入命令nvidia-smi
查看GPU驱动版本
CUDA与CUDNN的版本对应关系
根据CUDA的版本进行安装,下载压缩包版本
双击cuda_11.6.1_511.65_windows.exe
,进入安装程序:
这里是临时选择临时提取的文件夹,不用管直接ok:
提取完毕,程序会检查兼容性:
选择【同意并继续】,选择【自定义】安装:
在CUDA中取消勾选Visual Studio Integration
,这是VS的插件,容易导致安装失败,我因为用pycharm所以就不勾选了
后面还有三个选项。NVIDIA GeForce Experience 是显卡驱动程序,如果你已经更新了显卡驱动版本,就不用选了,因为每个CUDA版本里面都含显卡驱动程序,如果你每次都选相当于每次更新显卡驱动版本。Other components 是声卡等设备驱动程序,我电脑有装了,不用选,最后一个也是。(大家可自己根据自身情况)
然后选择安装路径,点击安装,本地版的很快,在线版的需要联网下载安装,慢些。
等待安装完毕,可以检查是否安装成功,在终端键入命令nvcc -V
,查看CUDA版本,能显示则成功了。
cuDNN下载好后解压,把里面的三个文件夹的内容分别移到CUDA安装目录里对应的同名文件夹里面。其中include和bin文件夹可以直接移动,lib文件夹内容要移动到lib\x64目录下
然后复制到CUDA的安装路径即可,我的是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6
(注意!不是覆盖,是添加进去对应的文件夹里面去)
lib 是存在 lib/x64 里面
最后,配置下系统环境即可:
右键【此电脑】又名计算机—【属性】—【高级系统设置】-【环境变量】-下半部分【系统变量】里找到【Path】,双击打开(或者点编辑)
补全如下环境变量,如果你之前安装成功了CUDA,2、3条环境是系统已经自动添加了的。
conda info --env
conda create -n tf27 python=3.8
2、删除环境(例子为删除名为tf27的环境)
conda remove -n tf27 --all
3、激活环境(例子为激活名为py36的环境)
activate tf27
4、退出环境
deactivate
5、从清华镜像源下载(例子为下载numpy)会显著提升下载速度
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
6、pip/anaconda直接修改镜像源,不用每次在后面加链接(Windows)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_urls yes
后面直接安装即可
pip install tensorflow-gpu==2.7.0
其次,进入pycharm,创建.py文件进行测试:
import tensorflow as tf print(tf.__version__) print('GPU', tf.test.is_gpu_available())
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=554ef028f3fc4f57b8d50118312ff8e6.png#pic_center
输出版本号,和True
安装成功!
TensorFlow:一个开源软件库,用于各种感知和语言理解任务的机器学习。
Keras:一个用Python编写的开源神经网络库,能够在TensorFlow、Microsoft Cognitive Toolkit、Theano或PlaidML之上运行。Keras旨在快速实现深度神经网络,专注于用户友好、模块化和可扩展性。
CUDA:统一计算架构。专为GPU同时处理多重任务而设计,大规模的并行计算处理,十分适合对图形处理、语音识别、视频等领域进行分析渲染。
cuDNN:深度神经网络库,针对CUDA优化,实现高性能GPU加速。
网上查到的可行版本
python3.7.0+CUDA11.6.0+cuDNN8.3.2+tensorflow2.7.0+Keras2.7.0 python3.7.0+CUDA11.3.1+cuDNN8.2.1+tensorflow2.7.0+Keras2.7.0 python3.7.0+CUDA10.1.2+cuDNN7.6.5+tensorflow2.2.0+keras 2.3.1
显卡算力决定你的CUDA版本区间:
NIVDIA显卡算力官方查询
显卡驱动版本,在NVIDIA控制面板的系统信息可查询到,建议更新到最新版本,这样就不会因驱动版本而下载CUDA版本受限。
NVIDIA官方显卡驱动更新
更新显卡驱动程序,建议在选项 Download Type 选 Studio Driver(SD),因为对深度学习有利。
NVIDIA官方 CUDA与显卡驱动版本对应表查询
官方查询 tensorflow-gpu与CUDA cuDNN Python版本关系
https://blog.csdn.net/typefree/article/details/117998734
https://blog.csdn.net/jiuzixu/article/details/122518914