区别于其他入门教程的“手把手式”,本文更强调“因”而非“果”。我之所以加上“通用”字样,是因为在你了解了这个开发环境之后,那些很low的错误你就不会犯了。

大家都知道深度学习涉及到大量的模型、算法,看着那些乱糟糟的公式符号,心中一定是“WTF”。我想说的是,这些你都不要管,所谓车到山前必有路。

所需安装包

通常以我的习惯是以最简单的方式来接触一门新的技术,并且尽量抛弃新的(边缘)技术的介入,如果因为一些其他因素来导致学习树的不断扩大,会变得很低效,所以我们直击核心。以最常用的windows环境为例。

这里以windows7+TensorFlow-gpu1.5+cuda8+cudnn6+anaconda5+python3.6为例。这里强烈推荐GPU版本,因为深度学习动辄几小时、几天、几周的运行市场,GPU加速会节省你很多时间(甚至电费)。

  1. cuda_8.0.61_windows.exe http://developer2.download.nvidia.com/compute/cuda/8.0/secure/Prod2/local_installers/cuda_8.0.61_windows.exe

    从NIVDIA官网下载需要找到历史版本Legacy Releases

    tensorflow代码引用的cuda库必须绝对匹配,比如tensorflow1.3-1.5都使用cuda8的库,目前(2017-10-24 20:40:53)不支持cuda9库。

    这里有一个关于cuda8的补丁,修复了8.0的一些bughttp://developer2.download.nvidia.com/compute/cuda/8.0/secure/Prod2/patches/2/cuda_8.0.61.2_windows.exe
  2. cudnn-8.0-windows7-x64-v6.0.zip http://developer2.download.nvidia.com/compute/machine-learning/cudnn/secure/v6/prod/8.0_20170427/cudnn-8.0-windows7-x64-v6.0.zip

    和上面的原因一样,请匹配6.0版本。
  3. tensorflow https://github.com/tensorflow/tensorflow

    我之所以给出github的地址是因为tensorflow团队在github上每天12:34都有一次build,并且github不受“种种”网络因素的影响。在tensorflow找到python3.6对应gpu版本build history,找到whl文件地址。
  4. Anaconda3-5.0.0-Windows-x86_64.exe https://www.anaconda.com/download/

    anaconda有一个最大的好处就是安装各种python库比较方便。

    安装包关系

    anaconda相当于tensorflow运行的容器。anaconda可以创建多个“盒子”(environment),每个盒子中的环境互不干扰,所以使用anaconda可以同时安装python3.5/3.6,tensorflow1.3/1.5。

    cuda和cudnn是tensorflow调用gpu所需要的库。也就是说tensorflow必须通过cuda和cudnn来调用电脑的gpu。

    安装

    安装anaconda、anaconda、cuda、cudnn

  5. anaconda、cuda、cudnn安装即可。在安装过程中会自动配置环境变量。
  6. 不过需要手动将cuda的development目录配置到CUDA_HOME中。
  7. 将cudnn解压后,把文件复制到cuda对应目录。

    安装tensorflow

  8. 启动anaconda,点击environments(环境),点击create(新建),命名tensorflow-gpu,选取3.6版本。
  9. 点击tensorflow-gpu启动Open Terminal,输入activate tensorflow-gpu。这时,anaconda下名字叫做tensorflow-gpu的环境已经启动了。下面我们才真正开始安装tensorflow。
  10. 输入

    pip install --ignore-installed --upgrade http://ci.tensorflow.org/view/tf-nightly/job/tf-nightly-windows/M=windows-gpu,PY=36/lastSuccessfulBuild/artifact/cmake_build/tf_python/dist/tf_nightly_gpu-1.5.0.dev20171024-cp36-cp36m-win_amd64.whl

    稍等片刻tensorflow就安装成功了。

    测试tensorflow环境

  11. 点击anaconda下我们创建的环境tensorflow-gpu启动Open With Python
  12. 输入import tensorflow如果不报错就说明安装成功了。

    常见错误

  13. ImportError: DLL load failed: 找不到指定的模块。

    这个错误通常是cuda或者cudnn与tensorflow的版本对应错误。推荐下载cuda8+cudnn6。

    当然,随着时间推移这些版本会被淘汰,但本教程依然适用。在github上找到tensorflow项目,在项目内搜索TF_CUDA_VERSIONTF_CUDNN_VERSION会看到当前tensorflow对应的是哪个cuda和cudnn版本。
  14. 其他错误。

    除1的错误外我暂时没碰到其他错误,如果出现排错的思路是,确认版本-->确认库是否包含在path中。如果依然无法解决,可以加我微信takeurhand讨论。

    运行mnist例子

  15. mnist例子运行需要安装matplotlib库,这时候anaconda的方便之处就得以体现了。点击anaconda下tensorflow-gpu环境,再右侧搜索matplotlib,勾选并点击apply即可。
  16. 下载github上mnist教程例子https://github.com/martin-gorner/tensorflow-mnist-tutorial,并解压。
  17. 启动anaconda下tensorflow-gpu环境Open Terminal,输入activate tensorflow-gpu,cd到步骤2解压目录。
  18. 执行python mnist_xx.py

(通用)深度学习环境搭建:tensorflow安装教程及常见错误解决的更多相关文章

  1. Tomcat安装教程及常见错误解决方法

    目录 Tomcat安装教程及常见错误解决方法 一.安装前准备 ·熟悉自己电脑的操作系统版本(32位or64位) ·保证电脑上已经装好JDK,并且已经设置好环境变量. 二.Tomcat安装教程(以Tom ...

  2. 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)

    写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...

  3. Ubuntu深度学习环境搭建 tensorflow+pytorch

    目前电脑配置:Ubuntu 16.04 + GTX1080显卡 配置深度学习环境,利用清华源安装一个miniconda环境是非常好的选择.尤其是今天发现conda install -c menpo o ...

  4. 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0

    目录 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0 Reference 硬件说明: 软件准备: 1. 安装Ubuntu ...

  5. [AI开发]centOS7.5上基于keras/tensorflow深度学习环境搭建

    这篇文章详细介绍在centOS7.5上搭建基于keras/tensorflow的深度学习环境,该环境可用于实际生产.本人现在非常熟练linux(Ubuntu/centOS/openSUSE).wind ...

  6. Win10+RTX2080深度学习环境搭建:tensorflow、mxnet、pytorch、caffe

    目录 准备工作 设置conda国内镜像源 conda 深度学习环境 tensorflow.mxnet.pytorch安装 tensorflow mxnet pytorch Caffe安装 配置文件修改 ...

  7. linux系统下深度学习环境搭建和使用

    作为一个AI工程师,对Linux的一些技能的掌握也能从一定层面反应工程师的资深水平. 要求1:基于SSH的远程访问(本篇文章) 能用一台笔记本电脑,远程登陆一台linux服务器 能随时使用笔记本电脑启 ...

  8. 深度学习环境搭建部署(DeepLearning 神经网络)

    工作环境 系统:Ubuntu LTS 显卡:GPU NVIDIA驱动:410.93 CUDA:10.0 Python:.x CUDA以及NVIDIA驱动安装,详见https://www.cnblogs ...

  9. 深度学习环境搭建(Ubuntu16.04+GTX1080Ti+CUDA8.0+Cudnn6.0+TensorFlow+Caffe2(Pytorch))

    OS System:Ubuntu16.04 GPU Device:GTX1080Ti Softwares:CUDA8.0.Cudnn6.0.TensorFlow(1.4.0).Caffe2(1.0.0 ...

随机推荐

  1. Numpy入门 - 数组排序

    本节主要讲解numpy数组的排序方法sort的应用,包括按升序排列和按降序排列. 一.按升序排列 import numpy as np arr = np.array([[3, 1, 2], [6, 4 ...

  2. Springboot读取配置文件及自定义配置文件

    1.创建maven工程,在pom文件中添加依赖 <parent> <groupId>org.springframework.boot</groupId> <a ...

  3. C++雾中风景4:多态引出的困惑,对象的拷贝?

    C++作为一门面向对象的语言,自然具备了面向对象的三大特征:封装,继承,多态.在学习多态性质的过程中,发现了C++与其他语言很大的区别(坑?).在C++中的=操作符的使用与C++呈现的内存模型似乎并不 ...

  4. Python的列表

    1. Python的列表简介 1. 1 列表的定义 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 ,即它的 ...

  5. java web学习笔记 jstl

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/53311722  冷血之心的博客) 一.JSTL标签介绍 1.什么是 ...

  6. Python笔记·第六章——集合 (set) 的增删改查及 copy()方法

    简介: 集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的.以下是集合最重要的两点: 1.去重,把一个列表变成集合,就自动去重了. ...

  7. 错误代码: 1054 Unknown column &#39;t.createUsrId&#39; in &#39;group statement&#39;

    1.错误描写叙述 1 queries executed, 0 success, 1 errors, 0 warnings 查询:select count(t.id),t.`createUserId` ...

  8. Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)

    android提供了统一的编程模型Intent来启动系统的组件,这样提供了松耦合性.是一种mvc的编程模式 $(function () { $('pre.prettyprint code').each ...

  9. Linux已经全然统治了这个世界:反对开源社区愚不可及

    原文来自:http://readwrite.jp/archives/9977 不管一个企业多强大,它都不存在和开源社区抗衡的实力 十年前.Unix占有最快的计算机世界排名前10位的五席,以及超级计算机 ...

  10. 中颖内带LED资源驱动代码

    //上一篇写了LCD驱动,本篇写下LED驱动 //DISPCON 最高位为1时, 选择LED驱动,LCD驱动无效 最高位为0时, 选择LCD驱动.LED驱动无效 void Sh79fLed_Init( ...