Linux系统下安装TensorFlow(CPU或者GPU版)

引言 基于Anaconda的tensorflow安装 利用anaconda安装tensorflow 总结 利用Docker安装tensorflow 安装过程中的一些小问题记录


1.引言

TensorFlow = Tensor(向量)+Flow(流)=”张量在网络图中流动”!

主要参考: 
[1] Tensorflow官网Tutorials 
[2] 极客学院对Tensorflow官网教程的翻译

官方提供了5种安装tensorflow的方法:

  • Pip install: Install TensorFlow on your machine, possibly upgrading previously installed Python packages. May impact existing Python programs on your machine.
  • Virtualenv install: Install TensorFlow in its own directory, not impacting any existing Python programs on your machine.
  • Anaconda install: Install TensorFlow in its own environment for those running the Anaconda Python distribution. Does not impact existing Python programs on your machine.
  • Docker install: Run TensorFlow in a Docker container isolated from all other programs on your machine.
  • Installing from sources: Install TensorFlow by building a pip wheel that you then install using pip.

几点说明: 
1. 由于在使用Tensorflow时,可以直接Python调用,所以,这里决定使用python学习tensorflow 
2. 使用python,jupyter notebook是一个不可或缺的工具,所以,本文还将记录如何在ubuntu下安装jupyter 
3. 这里主要安装python2.7版本的相关组件

2. 基于Anaconda的tensorflow安装

2.1 下载linux版本的Anaconda安装包

这里写图片描述 
下载地址:https://www.continuum.io/downloads ,如该国外网址访问不了或者网速太慢,可以访问清华大学的镜像https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
这里选择64位Linux的Python 2.7版本 
点击下载,下载完成后,得到Anaconda2-4.0.0-linux-x86_64.sh安装文件(下载的文件在系统用户的Downloads文件夹下,我的系统路径为/home/tensorflow/Downloads/

2.2 安装Anaconda

  • 打开terminal,输入如下命令,然后回车 
    bash /home/tensorflow/Downloads/Anaconda2-4.0.0-Linux-x86_64.sh 

    这里的/home/tensorflow/Downloads/是存放Anaconda2-4.0.0-Linux-x86_64.sh的路径(这里的/home/tensorflow为创建Linux系统是索取的系统用户所在的路径,tensorflow为系统用户名)

  • 阅读license,一步步回车阅读(出现more时通过回车往下看) 
    这里写图片描述 
    这里写图片描述

  • 输入yes,表示接受license 
    这里写图片描述

  • 设置安装路径,这里使用默认安装路径,直接输入回车即可 
    这里写图片描述

  • 开始自动安装过程 
    这里写图片描述

  • 如下图提示:确认是否将Anaconda的安装路径添加到环境变量中,一定要输入yes,否则添加环境变量会比较麻烦。
    这里写图片描述 
    关于这里一定要注意:

    如果在安装过程中,该步没有选择yes,那么Anaconda的安装路径不会被添加到环境变量中,安装结束后会出现如下信息:

    Do you wish the installer to prepend the Anaconda2 install location 
    to PATH in your /home/tingting/.bashrc ? [yes|no] 
    [no] >>> 
    You may wish to edit your .bashrc or prepend the Anaconda2 install location: 
    $ export PATH=/home/tingting/anaconda2/bin:$PATH 
    Thank you for installing Anaconda2!

    当时也没有注意这个信息,没有管,结果安装完anaconda后,发现根本不能使用,才注意到这条信息,原来,Anaconda的bin路径并没有被添加到PAHT环境变量中,所以需要在命令行中输入如下命令: 
    export PATH=/home/tingting/anaconda2/bin:$PATH 
    即将anaconda的bin路径添加到环境变量PATH中

  • 安装完成 
    这里写图片描述 
    这里可以看到,notebooks和一些python包都被成功安装了,但对于环境变量的更改,必须要新打开一个terminal才能生效,否则,相关的指令都不会被认识 
    这里写图片描述

  • 在配置好环境变量后,打开新的terminal,输入conda info命令可以查看安装信息,输入conda list命令可以查询安装有哪些python库,常用的有python,numpy,scipy等。如果发现有什么没有安装,可以运行conda install ***来安装(这里***代表你要安装的python包的名称),如果某个包不是最新的,可以运行conda update ***更新到最新版。

  • 打开新的terminal,输入Jupyter notebook,发现jupyter被成功安装了 
    这里写图片描述

  • 打开浏览器:http://localhost:8888/tree(可以看到安装了python 2的kernel) 
    这里写图片描述

3. 利用anaconda安装tensorflow

3.1 建立一个 conda 计算环境

  • Create a conda environment called tensorflow:

    conda create -n tensorflow python=2.7
    • 1

    这里写图片描述

3.2 激活环境,使用 conda 安装 TensorFlow

  • Activate the environment and use pip to install TensorFlow inside it.

    source activate tensorflow
    • 1

    这里写图片描述

3.3 安装tensorflow

  • 安装

    pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl
    • 1

    这里写图片描述

    之前在虚拟机中的ubutnu下安装tensorflow,就在这一步折腾了2天,就是不成功,每次都是timeout等各种问题,这次在双系统的机器上,瞬间就装好了,实在不知道之前的失败是因为虚拟机还是网速的问题

  • 安装成功后,每次使用 TensorFlow 的时候需要激活 conda 环境,可以看到,在正常情况下,是anaconda的bin路径在环境变量中,但激活conda-tensorflow环境后,环境变量中存储的是tensorflow下的bin路径 
    这里写图片描述

  • 如果上面的链接访问不了或者安装不成功,可以在Linux系统terminal执行anaconda search -t conda tensorflow命令,搜素都有哪些TensorFlow安装包,通过具体的版本和适用平台信息选择相应的版本。然后复制上面你要选择的TensorFlow安装包的Name,这里假设安装的为ijstokes/tensorflow,则可通过anaconda show ijstokes/tensorflow命令查看详细的该包所在链接及安装命令,复制返回来的安装命令输入terminal,这里的安装命令为conda install --channel https://conda.anaconda.org/ijstokes tensorflow,你可以根据具体的安装包进行安装。

  • 注意:如果你上面安装的是GPU版的tensorflow,这里还需要安装CUDA(Compute Unified Device Architecture)。CUDA是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构ISA)以及GPU内部的并行计算引擎。

  • 如何安装CUDA

  • 1.首先确认你的电脑是否安装了nvidia显卡,目前CUDA只支持Nvida的显卡,不支持AMD/ATI的显卡(AMD对OpenCL支持的很好,我在安装时就没注意显卡,折腾了一两天,发现fatal问题,提示no module nvidia,当回过头来查看自己的显卡时发现是AMD类型的,才想到是不是不支持AMD的显卡,白白折腾了那么长时间)。在设备管理器中,可以查看显卡信息。如下图所示,含有NVIDIA的显卡,就可安装。
    2.在英伟达的官网上下载cuda工具包,注意是windows系统的,而且需要看清楚是笔记本还是台式机的安装包,下载笔记本的安装套件,名字为cuda_5.0.35_winvista_win7_win8_notebook_32-3,(cuda5.5类似)双击打开安装即可,,按照提示安装,在这过程中,它也会更新nvidia的显卡驱动。
    3.CUDA工具包安装完成后,我们还需要确认,CUDA是否已经正确安装,我们可以先检查nvcc编译器是否正确安装,在命令提示符窗口中输入:nvcc -V,回车查看是否有版本信息。若出现版本信息,则证明nvcc安装成功,
    4.更一般的,我们会在命令行中运行在C:\ProgramData\NVIDIA Corporation\CUDA Samples\v5.0\bin\win32\Release中deviceQuery程序,若能检测到cuda device则证明程序已经正确安装

  • 官网地址为https://developer.nvidia.com/cuda-downloads,选择操作系统、架构体系、版本、安装类型等参数后点击下载。下载完之后,在终端terminal中转到Downloads下,按照下图所示的三条安装命令进行安装。具体的GPU版的Tensorflow如何安装在centos7 64位 系统中,可以参考http://blog.csdn.net/wang2008start/article/details/71319970和http://www.cnblogs.com/evempire/p/5620609.html。其中提到的添加环境变量,我的虚拟机是在路径/etc/profile下,在终端中输入 vi /etc/profile进行添加如下两条语句。

  • export PATH=/usr/local/cuda-8.0/lib64:$PATH

  • export LD_BIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

  • 使用如下命令将改变生效,并测试

  • source /etc/profile    //立即生效

  • nvcc -V//检查CUDA

  • yum install cmake //安装cmake

  • cd /usr/local/cuda-8.0/samples

  • make//测试CUDA


  • 测试时间较长,一段时间没有error即可中止。

  • 测试tensorflow是否安装成功 
    (1) 激活conda环境 
    (2)进入python 
    (3)import tensorflow 
    整个过程比较顺利,tensorflow被成功import了 

3.4 如何在jupyter中使用tensorflow这里写图片描述

(1) 出现了问题 
安装如上方法安装了jupyter和tensorflow,结果,利用jupyter无法使用tensorflow 
这里写图片描述 
也没有查到特别有针对性的解决这个问题的资料,好像是因为jupyter的安装路径和tensorflow的路径之间的问题,具体的现在还不是很清楚

(2)如何解决? 
应该是在conda的tensorflow环境下没有jupyter,它无法使用之前anaconda安装的jupyter,那么,简单粗暴的方法就是在当前的conda-tensorflow环境下,再安装一次jupyter:

  • 打开terminal
  • 激活conda tensorflow环境:source activate tensorflow
  • 安装notebook:conda install ipython
  • 安装jupyter:conda install jupyter
  • 安装完成,仍在conda tensorflow的环境下,输入jupyter notebook,打开http://localhost:8889/tree#
  • import tensorflow,发现tensorflow可以使用了

参考:http://stackoverflow.com/questions/35771285/using-tensorflow-through-jupyter-python-3

(3)两个jupyter

  • 在正常的ternimal中打开的是之前在安装anacodna时安装的jupyter,在正常的terminal下 查看jupyter的安装路径 
    which ipyhon 
    这里写图片描述 
    它在anaconda的路径下的bin文件夹中
  • 在conda tensorflow环境下打开的jupyter是在conda tensorflow环境下新安装的tensorflow,与上面的jupyter不同 
    它在conda的env下的tensorflow的bin文件夹下
  • 从下图可以想起地看到,两个jupyter的安装路径完成不同 
    这里写图片描述
  • 后续如果需要在使用tensorflow时使用其他的库,也一定要在对应的conda环境下安装,否则指定的库找不到。

(4) 缺少模块及安装 
- ImportError: no module named Image, ImportError: no module named PIL 
解决:conda install pillow

4. 总结

(1) 下载安装anaconda,与本文的第2部分同样目的,只不过通过命令行实现

  1. #安装anaconda,从https://www.continuum.io下载  
  2. mkdir anaconda2  #在个人目录下创建Aanconda目录  
  3. cd anaconda2  #进入目录  
  4. wget http://repo.continuum.io/archive/Anaconda2-4.0.0-Linux-x86.sh  #下载anaconda的安装包,利用wget工具  
  5. chmod +x Anaconda3-2.5.0-Linux-x86_64.sh  #更改权限(增加可执行权限),使该文件可被执行,  
  6. ./Anaconda2-4.0.0-Linux-x86.sh  #执行安装文件,或者使用bash Anaconda2-4.0.0-Linux-x86.sh   
#安装anaconda,从https://www.continuum.io下载
mkdir anaconda2  #在个人目录下创建Aanconda目录
cd anaconda2  #进入目录
wget http://repo.continuum.io/archive/Anaconda2-4.0.0-Linux-x86.sh  #下载anaconda的安装包,利用wget工具
chmod +x Anaconda3-2.5.0-Linux-x86_64.sh  #更改权限(增加可执行权限),使该文件可被执行,
./Anaconda2-4.0.0-Linux-x86.sh  #执行安装文件,或者使用bash Anaconda2-4.0.0-Linux-x86.sh 

(2) 在conda下创建环境,之后的所以操作都部署在该环境下

  1. conda create -n tensorflow python=2.7 #创建tensorflow环境  
  2. activate conda tensorflow  #激活tensorflow环境  
  3. conda install ipython  #安装notebook  
  4. conda install jupyter  #安装jupyter  
  5. jupyter notebook #启动jupyter  
conda create -n tensorflow python=2.7 #创建tensorflow环境
activate conda tensorflow  #激活tensorflow环境
conda install ipython  #安装notebook
conda install jupyter  #安装jupyter
jupyter notebook #启动jupyter


5.利用Docker安装tensorflow

利用这种方法可以实现在windows上使用tensorflow!具体步骤如下:

5.1 安装docker

在windows7下安装docekr,具体方法见之前的博文:Docker学习系列(一):windows下安装docker

5.2 创建tensorflow的image

安装好Docker后,接下来,就可以创建包含tensorflow的image了,有两种方案 
(1) 从dockerhub上pull别人的image 
例如:

docker pull tensorflow/tensorflow 
docker pull xblaster/tensorflow-jupyter 
docker pull satoshun/tensorflow-notebook

(2)自己书写Dockerfile,然后,在本机编译dockerfile,生成image,对于这种方法,本人还不会,以后有待研究


6.安装过程中的一些小问题记录

注1:安装过程中各种问题 
安装过程中,好像是不小心更改了环境变量,导致所有命令都不能使用,那么,可以使用如下命令export PATH=/usr/bin:/bin 
注2:在安装过程中发现,例如如上命令总是无法安装tensorflow,会出现网络连接错误的问题,试了好多遍都不行,不知道是不是因为在虚拟机中latern使用不好的问题,所以,最后,只能通过如下方式 
(1)在本机下载tensorflow-0.8.0-cp27-none-linux_x86_64.whl 
地址为:https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl 
(2)将下载的tensorflow-0.8.0-cp27-none-linux_x86_64.whl文件放置在共享文件夹中 
(3)在虚拟机的ubuntu的terminal中,cd到放置tensorflow-0.8.0-cp27-none-linux_x86_64.whl的路径(即/home/share/),使用如下命令安装tensorflow(即相当于离线安装了)

sudo pip install --upgrade tensorflow-0.8.0-cp27-none-linux_x86_64.whl
  • 1

注3:怎么向某个文件中填写内容?举例:如何向sources.list文件插入语句sudo vim /etc/apt/sources.list 
a #进入插入模式 
:wq #保存并退出

参考链接http://blog.csdn.net/tina_ttl/article/details/51762471

这里有一篇介绍在Linux系统下简便安装 anaconda和tensorflow的方式,链接为http://blog.csdn.net/zzw000000/article/details/51203331

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值