在Ubuntu上安装TensorFlow

前端之家收集整理的这篇文章主要介绍了在Ubuntu上安装TensorFlow前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

原文链接 :https://www.tensorflow.org/install/install_linux

译文链接 :http://www.apache.wiki/pages/viewpage.action?pageId=10029592

贡献者 :片刻ApacheCNApache中文网

本指南介绍如何在Ubuntu上安装TensorFlow。这些说明也可能适用于其他Linux版本,但是我们仅在Ubuntu 14.04或更高版本上测试(并且我们只支持)这些说明。

确定哪个TensorFlow要安装

您必须选择以下类型的TensorFlow之一来安装:

  • TensorFlow仅支持cpu支持。如果您的系统没有NVIDIA®GPU,则必须安装此版本。请注意,此版本的TensorFlow通常会更容易安装(通常在5或10分钟内),因此即使您有NVIDIA GPU,我们建议先安装此版本。
  • TensorFlow支持GPU。TensorFlow程序通常在GPU上比在cpu上运行得更快。因此,如果您的系统具有满足以下所示先决条件的NVIDIA®GPU,并且您需要运行性能关键型应用程序,则应最终安装此版本。

NVIDIA要求运行TensorFlow支持GPU

如果您使用本指南介绍的机制之一来安装具有GPU支持的TensorFlow,则系统上必须安装以下NVIDIA软件:

  • CUDA®Toolkit 8.0。有关详细信息,请参阅NVIDIA的文档。确保您将相关的Cuda路径名附加到LD_LIBRARY_PATH环境变量中,如NVIDIA文档中所述。
  • 与CUDA Toolkit 8.0相关的NVIDIA驱动程序。
  • cuDNN v5.1。有关详细信息,请参阅NVIDIA的文档。确保CUDA_HOME按照NVIDIA文档中的描述创建环境变量。
  • 具有CUDA Compute Capability 3.0或更高版本的GPU卡。有关支持的GPU卡的列表,请参阅NVIDIA文档
  • libcupti-dev库,即NVIDIA CUDA Profile Tools界面。此库提供高级分析支持。要安装此库,请发出以下命令:

    $ sudo apt-get install libcupti-dev

如果您有较早版本的上述软件包,请升级到指定的版本。如果无法升级,那么您仍然可以运行支持GPU的TensorFlow,但只有在执行以下操作时:

  • 从源中安装TensorFlow,请参阅从Sources安装TensorFlow。
  • 至少安装或升级到以下NVIDIA版本:
    • CUDA工具包7.0或更高版本
    • cuDNN v3以上
    • 具有CUDA Compute Capability 3.0或更高版本的GPU卡。

确定如何安装TensorFlow

您必须选择安装TensorFlow的机制。支持的选择如下:

我们建议使用virtualenv安装。Virtualenv是与其他Python开发隔离的虚拟Python环境,不能在同一台机器上干扰或受到其他Python程序的影响。在virtualenv安装过程中,您将不仅安装TensorFlow,还可以安装TensorFlow所需的所有软件包。(这实际上很简单。)要开始使用TensorFlow,只需要“激活”虚拟环境。总而言之,virtualenv为安装和运行TensorFlow提供了一个安全可靠的机制。

本地点在您的系统上直接安装TensorFlow,而不需要经过任何容器系统。我们建议系统管理员使用本地点安装,旨在使TensorFlow适用于多用户系统上的所有人。由于本机点安装不会在单独的容器中关闭,所以pip安装可能会干扰系统上其他基于Python的安装。但是,如果您了解pip和Python环境,则本机点安装通常只需要一个命令。

Docker将TensorFlow安装与机器上预先存在的包完全隔离。Docker容器包含TensorFlow及其所有依赖项。请注意,Docker图像可能相当大(数百MB)。如果您将TensorFlow集成到已经使用Docker的较大应用程序架构中,则可以选择Docker安装。

在Anaconda中,您可以使用conda创建虚拟环境。但是,在Anaconda内,我们建议使用pip install命令安装TensorFlow,而不是使用该conda install命令。

注意:conda包是社区支持的,没有正式支持。也就是说,TensorFlow团队既不测试也不维护公寓套餐。使用该包,您自己承担风险。

使用virtualenv进行安装

采取以下步骤安装TensFlow与Virtualenv:

  1. 通过发出以下命令安装pip和virtualenv:

    $ sudo apt-get install python-py python-dev python-virtualenv

  2. 通过发出以下命令创建一个virtualenv环境:

    $ virtualenv--system-site-packages targetDirectory

    targetDirectory指定的virtualenv树的顶端。我们的说明假设targetDirectory~/tensorflow,但您可以选择任何目录。

  3. 通过发出以下命令之一激活virtualenv环境:

    $ source〜/tensorflow/bin/activate#bash,sh,ksh或zsh

    $ source〜/tensorflow/bin/activate.csh #csh或tcsh

    前面的source命令应该将您的提示更改为以下内容

    (tensorflow)$

  4. 发出以下命令之一在活动的virtualenv环境中安装TensorFlow:

    (tensorflow)$ pip install--upgrade tensorflow #forPython2.7

    (tensorflow)$ pip3 install--upgrade tensorflow #forPython3.n

    (tensorflow)$ pip install--upgrade tensorflow-gpu #用于Python2.7和GPU

    (tensorflow)$ pip3 install--upgrade tensorflow-gpu #forPython3.n和GPU

    如果上述命令成功,请跳过步骤5.如果上述命令失败,请执行步骤5。

  5. (可选)如果步骤4失败(通常是因为您调用了低于8.1的pip版本),请通过发出以下格式的命令在活动的virtualenv环境中安装TensorFlow:

    (tensorflow)$ pip install--upgrade TF_PYTHON_URL #Python2.7

    (tensorflow)$ pip3 install--upgrade TF_PYTHON_URL #Python3.N

    其中标识TensorFlow Python包的URL。适当的值取决于操作系统,Python版本和GPU支持在这里找到适合您的系统的值。例如,如果要安装TensorFlow for Linux,Python 2.7和仅支持cpu,请在活动的virtualenv环境中执行以下命令来安装TensorFlow:TF_PYTHON_URLTF_PYTHON_URLTF_PYTHON_URL

    (tensorflow)$ pip3 install--upgrade \

    https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp34-cp34m-linux_x86_64.whl

如果遇到安装问题,请参阅常见安装问题

下一步

安装TensorFlow后,验证安装

请注意,每次使用TensorFlow时,必须激活virtualenv环境。如果virtualenv环境当前未处于活动状态,请调用以下命令之一:

$ source〜/tensorflow/bin/activate #bash,sh,ksh或zsh

$ source〜/tensorflow/bin/activate.csh #csh或tcsh

当virtualenv环境处于活动状态时,您可以从此shell运行TensorFlow程序。您的提示将变为以下内容,表示您的张量流环境处于活动状态:

(tensorflow)$

使用TensorFlow完成后,您可以通过调用以下deactivate功能来停用环境:

(tensorflow)$ deactivate

提示将恢复为默认提示符(由PS1环境变量定义)。

卸载TensorFlow

要卸载TensorFlow,只需删除您创建的树。例如:

$ rm-r targetDirectory

用native pip安装

您可以通过pip安装TensorFlow,在简单的安装过程或更复杂的安装过程之间进行选择。

注意:setup.pyREQUIRED_PACKAGES部分列出了pip将安装或升级的TensorFlow软件包。

先决条件:Python和Pip

Python自动安装在Ubuntu上。花一点时间确认(通过发出python -V命令)系统中已经安装了以下Python版本之一:

  • Python 2.7
  • Python 3.3+

pip或pip3包管理器通常安装在Ubuntu上。花一点时间确认(通过发出pip -Vpip3 -V命令)安装pip或pip3。我们强烈建议使用8.1或更高版本的pip或pip3。如果未安装版本8.1或更高版本,请发出以下命令,该命令将安装或升级到最新的pip版本:

$ sudo apt-get install python-pip python-dev

安装TensorFlow

假设在Linux主机上安装了必备软件,请执行以下步骤:

  1. 通过调用以下命令之一安装TensorFlow:

    $ pip install tensorflow #Python2.7; cpu支持(无GPU支持

    $ pip3 install tensorflow #Python3.n; cpu支持(无GPU支持

    $ pip install tensorflow-gpu #Python2.7; GPU支持

    $ pip3 install tensorflow-gpu #Python3.n; GPU支持

    如果上述命令运行完毕,则应该验证安装
  2. (可选)如果步骤1失败,请通过发出以下格式的命令安装最新版本的TensorFlow:

    $ sudo pip install--upgrade TF_PYTHON_URL #Python2.7

    $ sudo pip3 install--upgrade TF_PYTHON_URL #Python3.N

    其中TF_PYTHON_URL标识TensorFlow Python包的URL。适当的值TF_PYTHON_URL取决于操作系统,Python版本和GPU支持在这里找到TF_PYTHON_URL适合您的系统的值。例如,如果要安装TensorFlow for Linux,Python版本3.4和仅支持cpu,请发出以下命令:

    $ sudo pip3 install--upgrade \

    https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp34-cp34m-linux_x86_64.whl

    如果此步骤失败,请参阅常见安装问题

下一步

安装TensorFlow后,验证您的安装

卸载TensorFlow

要卸载TensorFlow,请发出以下命令之一:

$ sudo pip uninstall tensorflow #forPython2.7

$ sudo pip3 uninstall tensorflow #forPython3.n

使用Docker进行安装

采取以下步骤通过Docker安装TensorFlow:

  1. 作为描述你的机器上安装DockerDocker文档
  2. (可选)创建一个名为允许启动没有sudo的容器的Linux组,如Docker文档中所述。(如果您不执行此步骤,则每次调用Docker时都必须使用sudo。)
  3. 要安装支持GPU的TensorFlow版本,您必须先安装存储在github中的nvidia-docker。
  4. 启动包含TensorFlow二进制映像之一的Docker容器。

本节的其余部分将介绍如何启动Docker容器。

cpu

要启动具有仅支持cpu(仅支持GPU)的Docker容器,请输入以下格式的命令:

$ docker run-it-p hostPort:containerPort TensorFlowcpuImage

哪里:

  • -p hostPort:containerPort是可选的。如果您计划从shell运行TensorFlow程序,请忽略此选项。如果您计划运行TensorFlow程序作为Jupyter笔记本,请将hostPortcontainerPort设置为8888。如果要在容器内运行TensorBoard,请添加第二个-p标志,将hostPortcontainerPort设置为6006。
  • 需要TensorFlowcpuImage。它标识了Docker容器。指定以下值之一:

    gcr.io是Google容器注册表。请注意,某些TensorFlow图片也可以在dockerhub

例如,以下命令在Docker容器中启动最新的TensorFlow cpu二进制映像,您可以在其中运行Shell中的TensorFlow程序:

$ docker run-it gcr.io/tensorflow/tensorflow bash

以下命令还在Docker容器中启动最新的TensorFlow cpu二进制映像。但是,在这个Docker容器中,您可以在Jupyter笔记本中运行TensorFlow程序:

$ docker run-it-p8888:8888gcr.io/tensorflow/tensorflow

Docker将首次下载TensorFlow二进制图像。

GPU支持

在安装具有GPU支持的TensorFlow之前,请确保您的系统满足所有NVIDIA软件要求。要启动支持NVidia GPU的Docker容器,请输入以下格式的命令:

$ nvidia-  docker 运行-it -p hostPort:containerPort TensorFlowGPUImage

哪里:

  • -p hostPort:containerPort是可选的。如果您计划从shell运行TensorFlow程序,请忽略此选项。如果您打算运行TensorFlow方案,作为Jupyter笔记本电脑,同时设置HOSTPORTcontainerPort8888
  • TensorFlowGPUImage指定Docker容器。您必须指定以下值之一:

我们建议安装其中一个latest版本。例如,以下命令在Docker容器中启动最新的TensorFlow GPU二进制映像,您可以在其中运行Shell中的TensorFlow程序:

$ nvidia-docker run-it-p hostPort:containerPort TensorFlowGPUImage

以下命令还在Docker容器中启动最新的TensorFlow GPU二进制映像。在Docker容器中,您可以在Jupyter笔记本中运行TensorFlow程序:

$ nvidia-docker run-it-p88888888gcr.io/tensorflow/tensorflow:latest-gpu

以下命令安装较旧的TensorFlow版本(0.12.1):

$ nvidia-docker run-it-p88888888gcr.io/tensorflow/tensorflow:0.12.1-gpu

Docker将首次下载TensorFlow二进制图像。有关更多详细信息,请参阅TensorFlow码头自述文件

下一步

您现在应该验证您的安装

使用Anaconda进行安装

采取以下步骤在Anaconda环境中安装TensorFlow:

  1. 按照Anaconda下载网站上的说明下载并安装Anaconda。

  2. 创建一个名为tensorflow的conda环境,通过调用以下命令来运行Python版本:

    $ conda create-n tensorflow

  3. 通过发出以下命令激活conda环境:

    $ source activate tensorflow

    (tensorflow)$#你的提示应该改变

  4. 发出以下格式的命令,以在您的公共环境中安装TensorFlow:

    (tensorflow)$ pip install--ignore-installed--upgrade TF_PYTHON_URL

    这里TF_PYTHON_URL在TensorFlow Python包的URL。例如,以下命令将安装仅适用于Python 3.4的仅限于cpu的TensorFlow版本:

    (tensorflow)$ pip install--ignore-installed--upgrade \

    https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp34-cp34m-linux_x86_64.whl

@H_735_1404@

验证您的安装

要验证您的TensorFlow安装,请执行以下操作:

  1. 确保您的环境准备运行TensorFlow程序。
  2. 运行一个简短的TensorFlow程序。

准备你的环境

如果您安装在native pip,virtualenv或Anaconda上,请执行以下操作:

  1. 启动一个终端
  2. 如果您安装了virtualenv或Anaconda,请激活您的容器。
  3. 如果您安装了TensorFlow源代码,请导航到TensorFlow源代码之外的任何目录。

如果您通过Docker安装,请启动Docker容器,从中可以运行bash。例如:

$ docker run-it gcr.io/tensorflow/tensorflow bash

运行一个简短的TensorFlow程序

从你的shell调用python如下:

$ python

在python交互式shell中输入以下短程序:

>>>importtensorflow as tf

>>> hello=tf.constant('Hello,TensorFlow!')

>>> sess=tf.Session()

>>>print(sess.run(hello))

如果系统输出以下内容,则可以开始编写TensorFlow程序:

Hello,TensorFlow!

如果您是TensorFlow的新手,请参阅TensorFlow入门

如果系统输出错误信息而不是问候,请参阅常见的安装问题

常见的安装问题

我们依靠堆栈溢出来记录TensorFlow安装问题及其补救措施。下表包含一些常见安装问题的Stack Overflow答案的链接。如果您遇到下表中未列出的错误消息或其他安装问题,请在堆栈溢出中进行搜索。如果Stack Overflow没有显示错误消息,请在Stack Overflow上提出一个新问题,并指定tensorflow标签

堆栈溢出链接

错误信息

36159194
ImportError: libcudart.so.Version: cannot open shared object file:
  No such file or directory
41991101
ImportError: libcudnn.Version: cannot open shared object file:
  No such file or directory
36371137andhere
libprotobuf ERROR google/protobuf/src/google/protobuf/io/coded_stream.cc:207] A
  protocol message was rejected because it was too big (more than 67108864 bytes).
  To increase the limit (or to disable these warnings),see
  CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.
35252888
Error importing tensorflow. Unless you are using bazel,you should
  not try to import tensorflow from its source directory; please exit the
  tensorflow source tree,and relaunch your python interpreter from
  there.
33623453
IOError: [Errno 2] No such file or directory:
  '/tmp/pip-o6Tpui-build/setup.py'
42006320
ImportError: Traceback (most recent call last):
  File ".../tensorflow/core/framework/graph_pb2.py",line 6,in 
  from google.protobuf import descriptor as _descriptor
  ImportError: cannot import name 'descriptor'
35190574
SSLError: [SSL: CERTIFICATE_VERIFY_Failed] certificate verify
  Failed
42009190
Installing collected packages: setuptools,protobuf,wheel,numpy,tensorflow
  Found existing installation: setuptools 1.1.6
  Uninstalling setuptools-1.1.6:
  Exception:
  ...
  [Errno 1] Operation not permitted:
  '/tmp/pip-a1DXRT-uninstall/.../lib/python/_markerlib'
36933958
...
  Installing collected packages: setuptools,tensorflow
  Found existing installation: setuptools 1.1.6
  Uninstalling setuptools-1.1.6:
  Exception:
  ...
  [Errno 1] Operation not permitted:
  '/tmp/pip-a1DXRT-uninstall/System/Library/Frameworks/Python.framework/
   Versions/2.7/Extras/lib/python/_markerlib'

TensorFlow Python包的URL

一些安装机制需要TensorFlow Python包的URL。您指定的值取决于三个因素:

  • 操作系统
  • Python版本
  • cpu与GPU支持

本节介绍Linux安装的相关值。

Python 2.7

cpu

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp27-none-linux_x86_64.whl

GPU支持

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp27-none-linux_x86_64.whl

请注意,GPU支持需要NVIDIA要求中描述的NVIDIA硬件和软件运行具有GPU支持的TensorFlow

Python 3.4

cpu

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp34-cp34m-linux_x86_64.whl

GPU支持

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp34-cp34m-linux_x86_64.whl

请注意,GPU支持需要NVIDIA要求中描述的NVIDIA硬件和软件运行具有GPU支持的TensorFlow

Python 3.5

cpu

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp35-cp35m-linux_x86_64.whl

GPU支持

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp35-cp35m-linux_x86_64.whl

请注意,GPU支持需要NVIDIA要求中描述的NVIDIA硬件和软件运行具有GPU支持的TensorFlow

Python 3.6

cpu

https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp36-cp36m-linux_x86_64.whl

GPU支持

https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp36-cp36m-linux_x86_64.whl

请注意,GPU支持需要NVIDIA要求中描述的NVIDIA硬件和软件运行具有GPU支持的TensorFlow

Protobuf pip软件包3.1

您可以跳过此部分,除非您看到与protobuf pip软件包相关的问题。

注意:如果您的TensorFlow程序运行缓慢,您可能会遇到与protobuf pip软件包相关的问题。

TensorFlow pip软件包取决于protobuf pip软件包版本3.1。从PyPI下载的protobuf pip软件包(在调用pip install protobuf时)是一个仅包含Python的库,其中包含可执行比C ++实现慢10倍 - 50倍的原始序列化/反序列化的Python实现。Protobuf还支持包含基于快速C ++的原语解析的Python包的二进制扩展。此扩展在标准的仅Python专用pip包中不可用。我们为protobuf创建了一个包含二进制扩展名的自定义二进制pip包。要安装自定义二进制protobuf pip包,请调用以下命令之一:

  • 对于Python 2.7:

    $ pip install --upgrade \

    https://storage.googleapis.com/tensorflow/linux/cpu/protobuf-3.1.0-cp27-none-linux_x86_64.whl

  • 对于Python 3.5:

    $ pip3 install --upgrade \

    https://storage.googleapis.com/tensorflow/linux/cpu/protobuf-3.1.0-cp35-none-linux_x86_64.whl

安装此protobuf软件包将覆盖现有的protobuf软件包。请注意,binary pip软件包已经支持大于64MB的protobufs,应该修复以下错误

[libprotobuf ERROR google/protobuf/src/google/protobuf/io/coded_stream.cc:207]

A protocol message was rejected because it was too big (more than67108864bytes).

To increase the limit (or to disable these warnings),see

CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.

成为第一个赞同者

猜你在找的Ubuntu相关文章