美文网首页深度学习
深度学习环境搭建(Win10+CUDA+CuDNN+Tensor

深度学习环境搭建(Win10+CUDA+CuDNN+Tensor

作者: 木千之 | 来源:发表于2018-10-09 17:16 被阅读1490次

    2018/10/9 9:08:07

    因为研究工作,迫切需要搭建一个深度学习的分析平台。初始实验平台就在自己的笔记本上搭建,系统为Windows 10旗舰。

    常用的深度学习环境为KerasTensorflow,其中Keras可以理解为一个集成了常见深度学习模型与关键函数、参数的模型库,而其依赖的各种张量(Tensor)运算则需要底层的计算库支持,这里我们推荐使用Tensorflow

    只不过有些不同的是,Tensorflow在windows系统上不支持python2.7,仅支持python3.5版本,因此要么安装python3.5,要么则安装带有python3.5环境的Anacoda环境。


    一、Tensorflow环境安装

    虽然Tensorflow的安装其实并不复杂,但是其运行还是需要许多底层软件包,比如numpy,比如scipy等。为了方便,我们可以直接利用Anaconda这个集成的python计算环境来配置Tensorflow环境(本步骤仅仅是配置Tensorflow环境,还没有安装实体Tensorflow!)

    由于自己之前习惯使用python-2.7,因此安装的Anaconda自然也是适应2.7的。幸好现在有了虚拟环境,我们只需要利用Anaconda的虚拟环境命令即可配置。我们可以在powershell/cmd中直接输入命令,首先更新conda到最新版本:

    随后,创建需要的虚拟环境:

    conda create --name tensorflow python=3.5

    从而实现创建、下载上述tensorflow虚拟环境。(注意,这里自己通过修改环境变量中默认python的方式将python3.6作为了默认python,其实结果使用2.7也是可以的。)

    接下来我们试着activate tensorflow这个python3.5环境,很有可能你会发现cmd下是成功的,可以进入到(tensorflow)环境,而powershell下则不行。原因在于两个:

    1. powershell默认不支持conda虚拟环境的创建;

    2. powershell默认没有脚本运行权限;

    对于上述两个问题,我们的解决方法是:

    安装对应的软件包,使得powershell可以支持conda虚拟环境:

    具体命令为:

    conda install -n root -c pscondaenvs pscondaenvs

    修改powershell的脚本执行权限,为了安全与方便,我们仅修改当前用户权限即可:

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

    另外,如果细心的同学可能发现,这里我安装了Anaconda3到了原本Anaconda2的envs目录下,以作为一个独特的虚拟环境使用。

    如此便实现了在一个pycharm里可以同时使用两个版本的Anaconda2/3了。(需要在项目解释器中选择python3虚拟环境下即可)


    二、Tensorflow安装

    网上有很多Tensorflow的安装教程或笔记,然而都是给出自己实验成功的Python+CUDE+CuDNN+Tensorflow的个例,比如写明实验成功的版本号,然而学习者看来就会云里雾里,因为教程笔记都有时效性,各种软件版本不断更新,已有的组合兼容性早已不再适用。因此,本文努力给出一种明确各种软件兼容性的方法,如此后来者自然可以查找最新的兼容信息,根据自己的GPU以及Tensorflow版本确定相应的软件版本。

    一般来说,可以从python3.5.x环境中直接使用pip管理器安装最新的Tensorflow,然而这样对于CPU版本的实验平台还好说,但是如果对于GPU版本而言,则比较难确定对应的CUDE和CuDNN版本。

    这里请大家参考官方网站:https://tensorflow.google.cn/install/gpu

    其中明确说了,当前最新的Tensorflow-GPU要求应当安装CUDE-8.0以及CuDNN-7.2以上版本,既然如此,CUDE与CuDNN之间的兼容性就不需要再费尽心思考虑了。

    点击页面的蓝色链接,安装相应版本即可。

    两点注意

    1. 当CUDE与CuDNN安装完成后,需要修改环境变量以及将CuDNN的文件加入到对应的CUDE目录下,分别是:

    将CUDE目录路径加入到环境变量PATH中

    2. 将CuDNN解压缩后三个文件(bin\cudnn64_7.dll,include\cudnn.h以及lib\x64\cudnn.lib分别拷贝到CUDE目录下对应的bin\include\lib+x64下即可),我这里的是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0

    然后可以在cmd/powershell中激活虚拟环境tensorflow,然后进入到python环境中(此时肯定是python3.5.x),运行命令

    安装CPU版:pip install tensorflow

    安装GPU版:pip install tensorflow-gpu

    安装完成后,在python环境下,尝试导入模块,如果成功即说明安装成功:

    import tensorflow as tf

    查看运行结果,如果按照官网上匹配了对的CUDE与CuDNN版本,那么一般会少很多杂乱无章的"缺少DLL模块之类的错误"。

    这里还使用了简单的代码验证:

    import tensorflow as tf

    sess = tf.Session()

    a = tf.constant(10)

    b = tf.constant(20)

    sess.run(a+b)

    祝贺!Tensorflow已经在你的机器上成功安家了!


    三、Keras安装

    最后,我们的目标是安装深度学习算法模型库Keras,因此只需要同样在tensorflow虚拟环境中,运行

    pip install keras

    即可,完成后在python环境下导入keras模块即可验证。


    四、小结

    深度学习框架一般基于底层的python与基本算法平台Anaconda,然后以Tensorflow作为后端进行张量基本运算,而使用Kears作为模型调用库。需要注意的是:

    1.推荐在Anaconda中搭建实验分析环境,可以免去自己安装诸多软件包的麻烦;

    2.安装Tensorflow仔细阅读官方安装的版本要求,下载对应的CUDE与CuDNN版本(由于我的显卡是1050Ti,因此基本上不需要考虑CUDE和CuDNN的兼容性,如果是其他显卡,需要考虑对应的CUDE和Tensorflow版本);

    好了,明天开始实际的模型实验,加油!

    相关文章

      网友评论

        本文标题:深度学习环境搭建(Win10+CUDA+CuDNN+Tensor

        本文链接:https://www.haomeiwen.com/subject/ybryaftx.html