【一】tensorflow【cpu/gpu、cuda、cudnn】全网最详细安装、常用python镜像源、tensorflow 深度学习强化学习教学
相关文章:
【一】tensorflow安装、常用python镜像源、tensorflow 深度学习强化学习教学
【二】tensorflow调试报错、tensorflow 深度学习强化学习教学
trick1---实现tensorflow和pytorch迁移环境教学
1. tensorflow 深度学习
书本链接:TensorFlow深度学习》--笔记版.pdf_Python深度学习基于TensorFlowpdf-互联网文档类资源-CSDN下载
对应码源以及学习资料链接:https://gitee.com/dingding962285595/tensorflow_-rl 欢迎关注一键三连哦!
![]()
2. tensorflow安装
2.1 常用的镜像源
#豆瓣 https://pypi.douban.com/simple
#LFD https://www.lfd.uci.edu/~gohlke/pythonlibs/
#清华大学 https://pypi.tuna.tsinghua.edu.cn/simple
#中国科技大学 https://mirrors.ustc.edu.cn/pypi/web/simple
#阿里 https://mirrors.aliyun.com/pypi/simple/
#本地安装例子 Twisted‑18.4.0‑cp35‑cp35m‑win_amd64.whl #//文件名说明 该版本 适用于python 3.5 的windows 64位 #//D:\Twisted‑18.4.0‑cp35‑cp35m‑win_amd64.whl 下载文件的路径 #//安装 pip install D:\Twisted‑18.4.0‑cp35‑cp35m‑win_amd64.whl
在线安装举例
pip install “ 你需要安装的包” -i https://pypi.douban.com/simple
2.2 Anaconda安装
具体安装教程可以参考博客-Anaconda安装超简洁教程:【1】Anaconda安装超简洁教程,配置环境、创建虚拟环境、添加镜像源_汀、的博客-CSDN博客
通过安装 Anaconda 软件,可以同时获得 Python 解释器、 包管理和虚拟环境等一系列便捷功能,我们从 https://www.anaconda.com/distribution/#download-section 网址进入 Anaconda 下载页面,选择 Python 最新版本的下载链接即可下载,下载完成后安装即可进入安装程序。
- 如图 所示,勾选”Add Anaconda to my PATH environment variable”一项,这样可以通过命令行方式调用 Anaconda 程序
- 如图所示, 安装程序询问是否连带安装 VS Code 软件,选择 Skip 即可。整个安装流程约持续 4分钟,具体时间需依据计算机性能而定。
安装完成后,怎么验证 Anaconda 是否安装成功呢?
- 通过键盘上的 Windows 键+R 键,即可调出运行程序对话框,输入“cmd”并回车即打开 Windows 自带的命令行程序cmd.exe。
- 或者点击开始菜单,输入“cmd” 也可搜索到 cmd.exe 程序,打开即可。
- 输入conda list 命令即可查看 Python 环境已安装的库,如果是新安装的 Python 环境,则列出的库都是 Anaconda 自带的软件库。
- 如果 conda list 能够正常弹出一系列的库列表信息,说明 Anaconda 软件安装成功; 如果 conda 命名不能被识别,则说明安装失败,需要重新安装。
2.3 tensorflow-cpu版本安装
- TensorFlow 和其他的 Python 库一样,使用 Python 包管理工具 pip install 命令即可安装。安装 TensorFlow 时,需要根据电脑是否具有 NVIDIA GPU 显卡来确定是安装性能更强的 GPU 版本还是性能一般的 CPU 版本。
- 国内使用 pip 命令安装时,可能会出现下载速度缓慢甚至连接断开的情况,需要配置国内的 pip 源,只需要在 pip install 命令后面带上“-i 源地址” 参数即可。
打开anaconda的命令程序
然后输入:
conda create -n tf2 #tf2环境名称自定义 conda activate tf2 #激活环境
pip install tensorflow -i https://mirrors.aliyun.com/pypi/simple/
即可安装好最新版本tensorflow。
- 测试cpu版本的 TensorFlow 是否安装成功,在 cmd 命令行输入 ipython 进入 ipython 交互式终端,输入“import tensorflow as tf”命令,
- TensorFlow GPU/CPU 版本安装完成后,可以通过“tf.__version__”查看本地安装的 TensorFlow 版本号
表示安装成功。
或者下面查看方式:
conda activate tf1_cpu pip show tensorflow
2.4 tensorflow 更新指令,以及第二种安装方法
2.4.1 tensorflow 更新指令
- 查看版本
import tensorflow as tf tf.__version__
- 查询tensorflow安装路径
tf.__path__
- 更新升级
pip install --upgrade tensorflow
2.4.2 第二种方法
去镜像网站【网址见上面】下载对应版本的tensorflow:
之后再指定环境下安装即可:先进入tensorflow虚拟环境,再cd到whl文件所在文件目录进行安装,其中:虚拟环境是tf2 ,.whl所在文件夹是\package
(tf2) PS D:\package> pip install tensorflow_gpu-2.2.0-cp36-cp36m-win_amd64.whl
即可,然后再检查一下版本号。
2.5 GPU版本安装
2.5.1 GPU版本对照:
打开自己电脑的invdia控制面板查看可以安装的版本,然后在去找适合自己电脑的tensorflow版本!
![]()
![]()
![]()
![]()
2.5.2 CUDA安装
下载地址:https://developer.nvidia.cn/cuda-toolkit-archive
目前的深度学习框架大都基于 NVIDIA 的 GPU 显卡进行加速运算,因此需要安装NVIDIA 提供的 GPU 加速库 CUDA 程序。在安装 CUDA 之前,请确认计算机具有支持CUDA 程序的 NVIDIA 显卡设备。
CUDA 的安装分为 CUDA 软件的安装、 cuDNN 深度神经网络加速库的安装和环境变量配置三个步骤,
CUDA 软件安装 打开 CUDA 程序的下载官网:这里我们使用 CUDA11.2版本,依次选择 Windows 平台----x86_64 架构----win10 系统----exe(local)本地安装包,再选择 Download 即可下载 CUDA 安装软件。
下载完成后,打开安装软件。选择“Custom” 选项,点击 NEXT 按钮进入
![]()
![]()
安装程序选择列表,在这里选择需要安装和取消不需要安装的程序组件:
- 在 CUDA 节点下,取消”Visual Studio Integration”一项;
- 在“Driver components”节点下,比对目前计算机已经安装的显卡驱动“Display Driver”的版本号“Current Version”和 CUDA 自带的显卡驱动版本号“New Version”,
如果“Current Version”大于“New Version”,则需要取消“Display Driver”的勾,如果小于或等于,则默认勾选即可,设置完成后即可正常安装。
![]()
![]()
安装完成后,我们来测试 CUDA 软件是否安装成功。打开 cmd 命令行,输入“nvcc -V”,即可打印当前 CUDA 的版本信息,如图所示。
如果命令无法识别,则说明安装失败。同时我们也可从 CUDA 的安装路径“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin”下找到“nvcc.exe”程序,
2.5.3 cuDNN 神经网络加速库安装
网址:https://developer.nvidia.cn/cudnn
CUDA 并不是针对于神经网络专门的 GPU 加速库,它面向各种需要并行计算的应用设计。如果希望针对于神经网络应用加速,需要额外安装cuDNN 库。需要注意的是, cuDNN 库并不是运行程序,只需要下载解压 cuDNN 文件,并配置 Path 环境变量即可
- 打开网址 https://developer.nvidia.cn/cudnn,选择“Download cuDNN”,由于 NVIDIA公司的规定,下载 cuDNN 需要先登录,因此用户需要登录或创建新用户后才能继续下载。
- 登录后,进入 cuDNN 下载界面,勾选“I Agree To the Terms of the cuDNN Software License Agreement”,即可弹出 cuDNN 版本下载选项。
- 选择 CUDA 11.2 匹配的 cuDNN 版本,并点击“cuDNN Library for Windows 10”链接即可下载 cuDNN 文件,需要注意的是:cuDNN 本身具有一个版本号,同时它还需要和 CUDA 的版本号匹配上,不能下错不匹配 CUDA 版本号的 cuDNN 文件
![]()
![]()
- 下载完成 cuDNN 文件后,解压并进入文件夹,我们将名为“cuda”的文件夹重命名为“cudnn765”,并复制此文件夹。进入 CUDA 的安装路径 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2,粘贴“cudnn765”文件夹即可,此处可能会弹出需要管理员权限的对话框,选择继续即可粘贴
2.5.4 环境变量 Path 配置
上述 cudnn 文件夹的复制即已完成 cuDNN 的安装,但为了让系统能够感知到 cuDNN 文件的位置,我们需要额外配置 Path 环境变量。
- 打开文件浏览器,在“我的电脑”上右击,选择“属性”,选择“高级系统属性”,选择“环境变量”。
- 在“系统变量”一栏中选中“Path”环境变量,选择“编辑”,。
- 选择“新建”,输入 cuDNN 的安装路径“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\cudnn765\bin”,并通过“向上移动”按钮将这一项上移置顶
CUDA 安装完成后,环境变量中应该包含:
- “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin”、
- “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp”【这两项会自动添加路径的】
- “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\cudnn765\bin” 【需要自己手动】
具体的路径可能依据实际路径略有出入,确认无误后依次点击确定,关闭所有对话框。
2.5.5 tensorflow--GPU安装
激活环境:
conda create -n tf2 #tf2环境名称自定义 conda activate tf2 #激活环境
上述命令自动下载 TensorFlow GPU 版本并安装,目前是 TensorFlow 2.4 正式版,
pip install tensorflow-gpu -i https://mirrors.aliyun.com/pypi/simple/
现在我们来测试 GPU 版本的 TensorFlow 是否安装成功。
- 在 cmd 命令行输入 python 进入 ipython 交互式终端,输入“import tensorflow as tf”命令,如果没有错误产生,
- 继续输入“tf.test.is_gpu_available()”测试 GPU 是否可用,此命令会打印出一系列以“I”开头的信息(Information),其中包含了可用的 GPU 显卡设备信息,最后会返回“True”或者“False”,代表了 GPU 设备是否可用,
- 如果为 True,则 TensorFlow GPU版本安装成功;如果为 False,则安装失败,需要再次检测 CUDA、 cuDNN、 环境变量等步骤,或者复制错误,从搜索引擎中寻求帮助
import tensorflow as tf print(tf.test.is_gpu_available())
# 如果出现: WARNING:tensorflow:From <ipython-input-1-46ff889b56b7>:2: is_gpu_available (from tensorflow.python.framework.test_util) is deprecated and will be removed in a future version. Instructions for updating: Use `tf.config.list_physical_devices('GPU')` instead. True
说明GPU是可用的,这里的警告是说,这个测试命令即将被抛弃,应该使用tf.config.list_physical_devices(‘GPU’),如下:
import tensorflow as tf print(tf.config.list_physical_devices('GPU'))
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
遇到错误警告见2.7安装GPU遇到的各类坑总结!
2.5.6 测试GPU效果
import tensorflow as tf import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' print('GPU', tf.test.is_gpu_available()) a = tf.constant(2.0) b = tf.constant(4.0) print(a + b)
结果看到下面两个就对了,其余的不用管。
................... GPU True ................... tf.Tensor(6.0, shape=(), dtype=float32)
- TensorFlow 在运行时,默认会占用所有 GPU 显存资源,这是非常不友好的行为,尤其是当计算机同时有多个用户或者程序在使用 GPU 资源时,占用所有 GPU 显存资源会使得其他程序无法运行。因此,一般推荐设置 TensorFlow 的显存占用方式为增长式占用模式,即根据实际模型大小申请显存资源, 代码实现如下:
# 设置 GPU 显存使用方式 # 获取 GPU 设备列表 gpus = tf.config.experimental.list_physical_devices('GPU') if gpus: try: # 设置 GPU 为增长式占用 for gpu in gpus: tf.config.experimental.set_memory_growth(gpu, True) except RuntimeError as e: # 打印异常 print(e)
2.6 安装失败GPU的补救方法
- 如果不能安装 TensorFlow GPU 版本,则可以安装 CPU 版本。 CPU 版本无法利用 GPU加速运算,计算速度相对缓慢,但是作为学习用途所介绍的算法模型一般不大,使用 CPU版本也能勉强应付。
- 上述手动安装 CUDA 和 cuDNN,配置 Path 环境变量并安装 TensorFlow 的流程是标准的安装方法,虽然步骤繁琐,但是对于理解每个库的功能角色有较大的帮助。实际上可以将手动安装 CUDA 和 cuDNN,配置 Path 环境变量并安装 TensorFlow 这4 大步骤通过两条命令完成
# 创建名为 tf2 的虚拟环境,并根据预设环境名 tensorflow-gpu # 自动安装 CUDA,cuDNN,TensorFlow GPU 等 conda create -n tf2 tensorflow-gpu # 激活 tf2 虚拟环境 conda activate tf2
极简版安装方法:使用 Anaconda 发通过极简版安装的 TensorFlow,使用时需要先激活对应的虚拟环境,这一点需要与标准版区分。标准版安装在 Anaconda 的默认环境 base 中,一般不需要手动激活 base 环境。
常用的 Python 库也可以顺带安装,命令如下:# 使用阿里源安装常用 python 库 pip install ipython numpy matplotlib pillow pandas -i https://mirrors.aliyun.com/pypi/simple/
2.7 安装GPU遇到的各类坑总结
1. NVIDIA安装程序失败(组件全部未安装)------Visual Studio Intergration安装失败
解决方法:
- 其中Visual Studio(VS) Intergration无法安装导致的:通过自定义的方式取消Visual Studio Intergration进行安装,然后再重新用CUDA安装程序将Visual Studio Intergration单独装上去。
2. NVIDIA安装程序失败(组件全部未安装)-----------nsight compute安装失败
解决方法:
- 错误图忘记保存了,我的做法和第一种一样,通过自定义的方式取消Visual Studio Intergration进行安装,然后再重新用CUDA安装程序,再将Visual Studio Intergration单独装上去。
3.GPU测试tf.test.is_gpu_avaiable()返回false
解决方法:
- 先确定:CUDA、cuDNN和tensorflow的版本有没有对应一致,查看CUDA的驱动版本,如果版本太低,到Nvidia Experience更新驱动程序,默认安装即可。当然也会出现很多I开头的错误
去C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin路径下:把缺失的文件重命名,我的是cusolver64_10.dll缺失,将cusolver64_11.dll重命名为cusolver64_10.dll即可
4. gpu版本出现的问题:Not creating XLA devices, tf_xla_enable_xla_devices not set
据说是Tesorflow-gpu 2.4.1,默认情况下,不再注册XLA:CPU和XLA:GPU设备。如果确实需要它们,请可使用,但是此标志最终将在后续发行版中删除。
os.environ['TF_XLA_FLAGS'] = '--tf_xla_enable_xla_devices'
将
import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
print(tf.__version__)
a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
print('GPU:', tf.test.is_gpu_available())
改为:将不会报错了
import tensorflow as tf
import os
os.environ['TF_XLA_FLAGS'] = '--tf_xla_enable_xla_devices'
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
print(tf.__version__)
a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
print('GPU:', tf.test.is_gpu_available())
Not creating XLA devices, tf_xla_enable_xla_devices not set
5.tensorflow-gpu都显示安装成功,但无法运行程序,以及anaconda文件下创建环境,但文件里为空,装到base里的python环境下,无法修正(pip未装导致的)。
出现这个原因是:anaconda里的tf版本太低只有2.3.0没有2.4.1的gpu版本以及没在这个环境安装pip!!!这个是重点
1.可以尝试先更新anaconda,再重新安装tensorflow-gpu
先执行,conda update conda,先把conda更新到最新版
然后输入conda update anaconda,把anaconda更新的新版。
输入conda update --all
觉得太慢就添加镜像源
2.添加国内镜像源
全局代理这个办法,这里不做讲解了,需要使用的朋友可以自己去研究一下。这里说一下添加国内镜像源的方法。
运行Anaconda Prompt
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
2.设置启动设置好的国内镜像源
conda config --set show_channel_urls yes
3.查看是否添加上了源
conda config --show
如果镜像源失效了,或者想换成其他的源,怎么删除呢?
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
2.安装pip
conda install pip
然去找到anaconda文件夹,并打开该文件目录下的Script文件夹,查看是否有pip.exe文件,并查看是否配置了环境变量
没有就添加以下,
3.再重新
pip install tensorflow-gpu -i https://mirrors.aliyun.com/pypi/simple/
再加个镜像源,看看最近新版本的有没有装上。即可