• Windows环境下Anaconda安装TensorFlow的避坑指南


    最近群里聊天时经常会提到DL的东西,也有群友在学习mxnet,但听说坑比较多。为了赶上潮流顺便避坑,我果断选择了TensorFlow,然而谁知一上来就掉坑里了……

    我根据网上的安装教程,默认安装了最新版本的CUDA和cuDNN,但之后遇到了各种无法导入的问题,后来我发现主要的问题就是版本问题!!!CUDA版本和TensorFlow版本不匹配是最重要的坑。

    目前NV家最新的组件是CUDA 9.1+cuDNN 7.05,而我们安装所用的清华大学的镜像里TensorFlow是1.3.0这两个是没法匹配的,正确的配置是CUDA 8.0+cuDNN 6.0+TensorFlow 1.3.0,另外还有python 3.5

    接下来说正事,Anaconda目前的python版本是3.6的,但没关系,我们新建一个环境就可以了。首先更新一下N卡驱动,并下载并安装这几样东西:

    VisualC++ Redistributable for Visual Studio 2015

    CUDA Toolkit 8.0 (注意操作系统和版本的选择)

    cuDNN 6.0 (注意,要选Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0

    下载完成后逐一安装,CUDA安装时候可能会提示警告,主要说你的显卡驱动可能太新或者VS版本有点问题什么的,不过只要你之前的步骤都妥了就不用理它。

    cnDNN解压缩,里面会有3个文件夹:

    把这三个复制到CUDA的安装目录,比如C:Program FilesNVIDIA GPU Computing ToolkitCUDAv8.0,与同名文件夹合并即可。之后就是安装TensorFlow了。

    这里基本按照一位群友上传的安装教程来,打开CMD,以此输入如下命令:

    1、更改Anaconda镜像源

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ (执行两次保证将该镜像放在首位)
    conda config --set show_channel_urls yes

    2、利用Anaconda创建一个python3.5的环境,环境名称为tensorflow :

    conda create -n tensorflow python=3.5

    3、激活该环境:

    activate tensorflow

    4、安装CPU版本和GPU版本的TensorFlow:

    pip install --upgrade --ignore-installed https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/cpu/tensorflow-1.3.0rc0-cp35-cp35m-win_amd64.whl
    pip install --upgrade --ignore-installed https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/gpu/tensorflow_gpu-1.3.0rc0-cp35-cp35m-win_amd64.whl

    这一步中有时候也会报错,只要你看到过进度条,那就没啥大问题,主要是网络不好的问题……如果网络不好报错了,就再执行一次同样的命令,最终一定会成功。

    5、安装完成后,记得设置环境变量,环境变量path里加入以下内容:

    C:Program FilesNVIDIA GPU Computing ToolkitCUDAv8.0in; (你CUDA的安装位置,默认的)
    C:Program FilesNVIDIA CorporationNVSMIs;
    D:Anaconda3envs ensorflowScripts; (这两个是你Anaconda的安装位置,我装在D盘里,后面的envs ensorflow是指你在第2步中创建的tensorflow环境)
    D:Anaconda3envs ensorflowLibraryin;

    6、试一试能否成功

    打开cmd,输入activate tensorflow激活tensorflow环境,输入python进入python,尝试输入一下命令

    import tensorflow as tf
    hello = tf.constant('Hello, TensorFlow!')
    sess = tf.Session()
    print(sess.run(hello))

    成功的话你会看到如下画面

    7、配置spyder

    Anaconda最吸引我的就是spyder,集成了命令行和IDLE,超好用,然而安装完我们会发现一个问题,你打开spyder是无法导入tensorflow的,提示找不到模块。这主要是因为我们打开的spyder是root环境下的,里面并没有tensorflow。所以我们要在我们之前创建的tensorflow环境中安装spyder才行。打开Anaconda Navigator可以看到tensorflow环境下只有这些库,我们可以根据自己的需要再安装一下其他需要的库,包括spyder

    在库上方选Not installed(未安装的库),然后在右侧搜索spyder,选中之后点最右下角的apply就会安装了。

    安装完成后打开开始菜单,我们会看到多出来一个spyder(tensorflow),就是这个啦~

     可以看到现在也可以用tensorflow了~

    如果你点击的时候只是光标闪了一下并没有打开spyder的话,直接在Anaconda Navigator的home界面中点击spyder的Launch,就能启动了

    启动后我们再试试导入,也没问题,大功告成啦~

  • 相关阅读:
    Java 中位移运算符 >>,>>>,<<
    HashMap 源码解读
    CentOS 配置防火墙操作实例(启、停、开、闭端口)
    CentOS 配置防火墙操作实例(启、停、开、闭端口)
    js实现页面重新加载
    js实现页面重新加载
    关于Ajax的技术组成与核心原理
    关于Ajax的技术组成与核心原理
    PHP水印制作
    PHP水印制作
  • 原文地址:https://www.cnblogs.com/silence-gtx/p/8430315.html
Copyright © 2020-2023  润新知