基于anaconda的tensorflow安装

基于Anaconda环境的Tensorflow安装

    • Anaconda环境安装
    • Tensorflow安装
      • 基于CUDA、CUDNN的GPU版本Tensorflow安装

Anaconda环境安装

这一部分比较简单,直接进入Anaconda官网根据自己的喜好下载符合自身电脑配置的版本。(这个方法是万无一失的,但好像只能下载最新版本的Anaconda环境,且下载速度极不稳定,大多数情况下很慢)
链接:Anaconda官方下载

为了解决上述问题,可寻找清华源下载链接采用迅雷下载的方式进行下载。(下载速度极快,且各种历史版本任君挑选)
链接: 清华源link.

此处多加说明一点:Anaconda最新版本中Spyder编辑器为4.x版本,这些版本目前尚未完备,在运行时会出现QSocket线程问题,因此推荐使用Anaconda3.x版本。
在Anaconda安装过程中有一步关于环境变量的配置需要勾选,免去安装后手动设置环境变量的麻烦,这点在诸多巨巨的博客中都已提到。

Tensorflow安装

Tensorflow目前主要分为1.x版本与2.x版本,每个版本的差异均较大,但一直是向简化方向进行构建,这点毋庸置疑。(由于不同版本的Tensorflow函数功能名称以及框架不尽相同,因此带来了Github源代码参差不齐的问题,在采用Tensorflow框架进行机器学习问题解决时在这一方面明显不如Pytorch来的方便)。下面主要分为两块进行讲解:

1.其实很多前辈都说要在安装Tensorflow或者Pytorch时先新建专用环境,这样在使用特定库时只需在命令行进入该特定环境即可随意挥霍,同时在对该库丧失信心后即可连同环境一起删除,极其干净。
采用在Windows命令行输入conda create --name env_name python=2.x(或者python=3.x)的方式进行环境创建,Anaconda会自己把环境配置补齐。
基于anaconda的tensorflow安装_第1张图片

但我觉得对于大部分人来说没有太高的技巧,技术小白在安装Anaconda后只是简单地熟悉Jupyter、Anaconda Prompt等Anaconda内置模块,最主要的还是其中的Spyder编辑器,很少有小白在Windows命令行或者Prompt命令行亦或是Powershell进行Python程序的执行甚至编写,因此在设置新的环境以及在命令行进行程序执行方面仅作了解即可。
2.在安装好Anaconda后,由于已添加环境变量,可直接在windows命令行进行pip命令安装Tensorflow,此处注意Tensorflow版本分为CPU版本与GPU版本,CPU版本较为简单,直接pip install tensorflow+版本号即可,
在这里插入图片描述

此处相当智能,在你输入一个版本号之后,如果无法安装,命令行会自动提示可安装版本,根据提示pip即可。

在这里插入图片描述

本篇着重介绍GPU版本的安装。
(在运行pip命令或conda命令前需要先将下载源更换为清华源,下载速度更快更稳定,在命令行输入几行简单代码即可)
若是conda命令:

conda config --add channels https://pypi.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://pypi.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

若是pip命令:
在user目录中创建pip文件夹,例如C:/user/Dell/pip,建立文件pip.ini用记事本打开,输入以下内容:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install](可以不要)
trusted-host=mirror.aliyun.com(可以不要)

搞定收工。(暂时)

基于CUDA、CUDNN的GPU版本Tensorflow安装

这里有两种方式进行完整安装:

1.先安装GPU版本的Tensorflow,之后根据提示下载相应的CUDA以及CUDNN插件。
GPU版本Tensorflow的安装在windows命令行中的命令与CPU版本差异不大,如下:
pip install tensorflow_gpu==1.14.0(这里采用1.x版本有两点原因:一是前面推荐安装的Anaconda非最新版本,为较为稳定的之前的版本,所以仅支持tensorflow1.x。二是1.x的版本在Github上源代码较多,便于小白理解学习,若是2.x版本则几乎不可直接套用Github代码)
在采用pip命令download完成之后,可直接在Spyder编辑器中进行如下操作:

import tensorflow as tf

仅此一行即可。之后在Spyder右下角窗口根据错误提示安装CUDA9.0版本或CUDA10.0版本。
基于anaconda的tensorflow安装_第2张图片
会出现类似于
ImportError: Could not find 'cudart64_100.dll'(对应CUDA10.x)或者

ImportError: Could not find 'cudart64_90.dll'(对应CUDA9.x)的错误

(本人安装的是CUDA10.0版本,现在最新的是11.0版本,但毕竟是新版本,可能还需要试错,这里建议CUDA10.0版本即可,完全可以保证GPU运行速度)。这里可以直接在NVIDIA官网进行下载,也可以寻找清华源的安装包。
CUDA10.0链接

建议CUDA安装在C盘,也就是系统盘,这样做原因有二:一是在其他盘经过本人测试会出现安装错误,二是安装在C盘会最大限度地提升GPU速度
在安装CUDA后,再次在Spyder编辑器中运行该行代码:

import tensorflow as tf

接下来在右下角的运行结果界面还会出现关于CUDNN的出错提示,这里如果前面安装的是CUDA10.0版本及以上,错误提示中会显示安装CUDNN7.x版本,即ImportError: Could not find 'cudnn64_7.dll'
这时需要在NVIDIA官网中查看具体安装什么版本的CUDNN。
CUDNN链接
(在下载CUDA时仅需要进入官网点击需要下载的版本即可,而CUDNN的下载必须注册登录NVIDIA官网,这个不麻烦,但可能有点卡,慢慢等待即可,之后就可以重新进入页面搜索CUDNN下载寻找适配的版本即可,这里推荐在寻找好特定版本后在网上找清华源的下载源,速度会快很多,心情也舒畅。)
因为在安装CUDA以及CUDNN时默认路径均为系统盘,不要更改,直接选用默认设置即可,对后续文件迁移也有好处。

2.后续dll文件问题
在CUDA与CUDNN均安装完成后,继续在Spyder编辑器中运行该行代码:

import tensorflow as tf

如果此时右下角运行窗口没有出现报错,那么一个基于CUDA与CUDNN的Tensorflow库就已经安装完成了,可以随意玩耍。
但本人遇到了dll文件的问题,报错提示出现OSError。

OSError: [WinError 126] 找不到指定的模块

这是因为缺少相关dll文件,dll文件大部分都是基于C++的动态链接库。在这里可以自行查找所需dll文件,但这里建议可以直接下载一个常用dll库文件压缩包,免去各种dll文件缺失的问题。

在正确安装dll文件后再次运行下述代码,(在Tensoflow官网可以找到)。
Tensorflow简单教程
可以发现除了无报错还运行了一个基于tensorflow的小demo,都是对该库中简单函数的应用。

import tensorflow as tf
print(tf.add(1, 2))
print(tf.add([1, 2], [3, 4]))
print(tf.square(5))
print(tf.reduce_sum([1, 2, 3]))
print(tf.square(2) + tf.square(3))
x = tf.matmul([[1]], [[2, 3]])
print(x)
print(x.shape)
print(x.dtype)

以上就完成了基于CUDA与CUDNN的TensorflowGPU版本的安装。
在之后使用Tensorflow库时直接就是GPU版本,无需其他操作,但仅对具有复杂张量运算的网络有优势,简单网络中CPU与GPU相比性能相似甚至更高。

以上仅个人观点,如有错误还望巨巨指正,不胜感激。
同时如有侵权请及时与本人联系,将及时处理。

你可能感兴趣的:(教程,机器学习,深度学习,windows,编辑器)