win10 搭建 tensorflow-gpu 环境
win10 下安装 tensorflow-
2.22.5 及 gpu 加速.资料来源:
https://www.tensorflow.org/install/pip
https://blog.csdn.net/Anysky_fighting/article/details/105320858更新
1
220.07.08 初始化
21.06.25 更新内容,修正错误
导语
算是第一个机器学习的博文,win10 下安装 tensorflow-2.2 2.5 及配置 gpu 加速.
不得不说还是 linux 下香,跑个 docker 就行了.win10 下太难了…下个大版本更新 wsl2 带来了 gpu 的支持,继续等吧,预览版实在不敢上.
简介
Tensorflow 是目前最流行的机器学习框架,由 Google 开发以 Apache 2.0 开源.
TF 提供了 Python C++ Java Go Rust 等语言的 API.基本覆盖了我接触范围内全部编程语言.
TF 支持 Keras,入门已经没什么难度了.并且预见之后的有部分工作是在 Android 上进行,TensorFlow Lite 估计也跑不了.
计划上近期只是 TF 的入门,以 Python 为主.
安装 Tensorflow
win10 下基本上可以概括成
- 安装 Python
- pip 安装 tensorflow
- 安装 GPU 驱动
- 安装 CUDA/cuDNN
- 验证
Python 环境
非常多的文章推荐使用 Anaconda ,但是 Anaconda 还是过重了,就入门的目的而言.
这里仅是 Python 3.9 + virtualenv virtualenvwrapper 的组合.
因为还需要跑别的环境,virtualenv 生成一个专用的 Python 环境.
- Python 直接由官网下载安装即可
- virtualenv 直接
pip install virtualenv
,它能生成一个 python 的虚拟运行环境. - virtualenvwrapper 是 virtualenv 的后端,可以全局管理生成的环境,但也不是必须的.
pip install virtualenvwrapper
虚拟环境
创建一个虚拟环境,但是 win 下要进入虚拟环境需要执行脚本,win10 默认是禁止执行脚本,需要设置运行执行.
1 | virtualenv tf |
安装Tensorflow
在 2.1 版本以后 gpu 和 cpu 支持已经合并了,没必要再单独安装 tensorflow-gpu.
网络问题就不提了,换源或者怎么样,直连非常慢.
1 | pip install tensorflow |
GPU 驱动
CUDA10.1 以上官网给的要求是 418.x 以上驱动.如果不是在 NVIDIA 驱动程序下载 下载.
CUDA/cuDNN
在很多文章中提到要到官网对照 tf 版本和 cuda/cuDnn 的版本,在 Build from source on Windows 查找版本对应关系.有时对应关系查不到,请切换到英文版本.
2.2 版本却是 cuda10.1 和 cuDnn7.4 但是 cuDnn7.4 根本就没有对应 cuda10.1 的版本.
2.5 对应的是 cuDNN 8.1 和 CUDA 11.2.
安装 CUDA
- 比较坑的一点是你需要先安装 Visual Studio 2019,cuda 安装时需要编译点什么东西.下载 Visual Studio 2019 Community 一路默认配置即可.
- CUDA Toolkit Archive 下载 cuda 版本, 2~3 G 之间,最好不要使用其他渠道下载.
- 一路默认配置安装到底.
- 默认是在
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v版本号
看到有文件了,即安装成功.
安装 cuDNN
- cudnn 需要注册一个账户,基本什么邮箱都可以.
- 一定要选择对应 cuda 版本的 cudnn,这里是 cudnn-10.1-windows10-x64-v7.6.5.32.
- 解压后文件夹的 /bin /include /lib 都复制到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v版本号
.
测试
进入 tf 的虚拟环境
1 | import tensorflow as tf |
最后输出 True True 表明 cuda 和 gpu 可用了.
坑
在 import tensorflow as tf
遇到的两个问题
Could not find the DLL(s) 'msvcp140_1.dll'
,这里需要到提示 the-latest-supported-visual-c-downloads 下载支持包,安装一下即可.Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found
,cudart64_101.dll 是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
下的一个文件,如果提示缺失到 CUDART64_101.DLL 下载,解压后添加到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
下,重启即可.
结语
正式开始机器学习的入门,希望能啃下来…
最终算是额外耽误了一年的时间,时间不等人,加油.