前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TensorFlow下载与安装

TensorFlow下载与安装

作者头像
xiangzhihong
发布2018-02-08 10:03:52
1.9K0
发布2018-02-08 10:03:52
举报
文章被收录于专栏:向治洪

TensorFlow简介

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。

TensorFlow可被用于语音识别或图像识别等多项机器深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。

关于TensorFlow相关知识的更多介绍请查看下面的文章:深度学习及TensorFlow简介

TensorFlow环境搭建

官方虽然提供了一些搭建环境的教程,但是并不详细,也不利于初学者学习。本文通过参考博客,并经过亲身搭建来讲解如何在Windows和mac环境下搭建TensorFlow开发环境。

安装前准备

TensorFlow 有两个版本:CPU 版本和 GPU 版本。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版本,请先确认你的显卡支持 CUDA。本文安装的是 GPU 版本,采用 pip 安装方式,所以就以 GPU 安装为例,CPU 版本只不过不需要安装 CUDA 和 cuDNN。

  • 请确认你的显卡支持 CUDA。
  • 确保你的 Python 版本是 3.5 及以上。(TensorFlow 从 1.2 开始支持 Python3.6,之前的版本官方是不支持的)
  • 确保稳定的网络连接。
  • 确保你的 pip 版本 >= 8.1。可以用 pip -V 查看当前 pip 版本,也可以用 python -m pip install -U pip 升级pip 。

安装

TensorFlow 官网给出了五种安装方法,下面一一给大家讲解安装方法。 首先,请确保你的电脑已经安装Python的相关环境,Python下载地址:https://www.python.org/。选择最新的3.x版本下载并安装,本文下载的是3.6.4版本。安装完成后,需要将Python添加到环境变量中。

依次选择:右击 我的电脑/此电脑 –> 属性 –> 高级系统设置 –> 高级选项卡(默认)–> 环境变量 –> 系统环境变量下的 Path –>编辑

将下面这行内容添加到Path变量中: C:\Python36;C:\Python36\Scripts;

如果之前你的电脑还安装了2.x版本,请注意将它们的版本区分开来。为了验证Python是否安装成功,可以使用下面的命令行来查看。

当然如果你的pip版本过低,还可以使用python -m pip install -U pip命令升级pip。

用pip方法安装TensorFlow

  1. 先在电脑上装一个Python,注意要装TF支持的Python版本。
  2. 打开终端,使用pip包管理器安装TensorFlow,命令如下:
代码语言:javascript
复制
# GPU版本
pip3 install --upgrade tensorflow-gpu

# CPU版本
pip3 install --upgrade tensorflow

说明:装CPU还是GPU版本 参照TF官网windows安装的说明查下显卡即可

为了验证是否安装成功,可以使用下面的方式验证。

代码语言:javascript
复制
$ python
...
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print(sess.run(a + b))
42

pip其他系统安装

其他系统,可以参考下面的安装命令。

代码语言:javascript
复制
# Ubuntu/Linux 64-bit
$ sudo apt-get install python-pip python-dev

# Mac OS X
$ sudo easy_install pip

安装 TensorFlow :

代码语言:javascript
复制
# Ubuntu/Linux 64-bit, CPU only, Python 2.7:
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7. Requires CUDA toolkit 7.5 and CuDNN v4.
# For other versions, see "Install from sources" below.
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

# Mac OS X, CPU only:
$ sudo easy_install --upgrade six
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0-py2-none-any.whl

如果是 Python3 :

代码语言:javascript
复制
# Ubuntu/Linux 64-bit, CPU only, Python 3.4:
$ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp34-cp34m-linux_x86_64.whl

# Ubuntu/Linux 64-bit, GPU enabled, Python 3.4. Requires CUDA toolkit 7.5 and CuDNN v4.
# For other versions, see "Install from sources" below.
$ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp34-cp34m-linux_x86_64.whl

# Mac OS X, CPU only:
$ sudo easy_install --upgrade six
$ sudo pip3 install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0-py3-none-any.whl

说明:备注:如果之前安装过 TensorFlow < 0.7.1 的版本,应该先使用 pip uninstall 卸载 TensorFlow 和 protobuf ,保证获取的是一个最新 protobuf 依赖下的安装包。

基于 Docker 的安装

当然,也可以通过 Docker 运行 TensorFlow,该方式的优点是不用操心软件依赖问题。 首先, 安装 Docker. 一旦 Docker 已经启动运行, 可以通过命令启动一个容器:

代码语言:javascript
复制
docker run -it b.gcr.io/tensorflow/tensorflow

默认的 Docker 镜像只包含启动和运行 TensorFlow 所需依赖库的一个最小集. 我们额外提供了 下面的容器, 该容器同样可以通过上述 docker run 命令安装:

代码语言:javascript
复制
b.gcr.io/tensorflow/tensorflow-full

镜像中的 TensorFlow 是从源代码完整安装的, 包含了编译和运行 TensorFlow 所需的全部工具. 在该镜像上, 可以直接使用源代码进行实验, 而不需要再安装上述的任何依赖。

基于 VirtualEnv 的安装

推荐使用 virtualenv 创建一个隔离的容器, 来安装 TensorFlow. 这是可选的, 但是这样做能使排查安装问题变得更容易。安装前,请安装所有必备工具:

代码语言:javascript
复制
# 在 Linux 上:
$ sudo apt-get install python-pip python-dev python-virtualenv

# 在 Mac 上:
$ sudo easy_install pip  # 如果还没有安装 pip
$ sudo pip install --upgrade virtualenv

接下来, 建立一个全新的 virtualenv 环境. 为了将环境建在 ~/tensorflow 目录下,执行命令:

代码语言:javascript
复制
$ virtualenv --system-site-packages ~/tensorflow
$ cd ~/tensorflow

然后, 激活 virtualenv:

代码语言:javascript
复制
$ source bin/activate  # 如果使用 bash
$ source bin/activate.csh  # 如果使用 csh
(tensorflow)$  # 终端提示符应该发生变化

在 virtualenv 内, 安装 TensorFlow:

代码语言:javascript
复制
(tensorflow)$ pip install --upgrade <$url_to_binary.whl>

接下来, 使用类似命令运行 TensorFlow 程序:

代码语言:javascript
复制
(tensorflow)$ cd tensorflow/models/image/mnist
(tensorflow)$ python convolutional.py

# 当使用完 TensorFlow
(tensorflow)$ deactivate  # 停用 virtualenv

$  # 你的命令提示符会恢复原样

用Anaconda安装TensorFlow

和 Virtualenv 一样,不同 Python 工程需要的依赖包,conda 将他们存储在不同的地方。 TensorFlow 上安装的 Anaconda 不会对之前安装的 Python 包进行覆盖。使用Anaconda安装TensorFlow主要有以下几个步骤:

  1. 安装 Anaconda
  2. 建立一个 conda 计算环境
  3. 激活环境,使用 conda 安装 TensorFlow
  4. 安装成功后,每次使用 TensorFlow 的时候需要激活 conda 环境

安装完成后,请建立一个 conda 计算环境名字叫tensorflow:

代码语言:javascript
复制
# Python 2.7
$ conda create -n tensorflow python=2.7

# Python 3.5
$ conda create -n tensorflow python=3.5

激活tensorflow环境,然后使用其中的 pip 安装 TensorFlow. 当使用easy_install使用–ignore-installed标记防止错误的产生。

代码语言:javascript
复制
$ source activate tensorflow
(tensorflow)$  # Your prompt should change

# Ubuntu/Linux 64-bit, CPU only, Python 2.7:
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl

# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7. Requires CUDA toolkit 7.5 and CuDNN v4.
# For other versions, see "Install from sources" below.
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl

# Mac OS X, CPU only:
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0rc0-py2-none-any.whl

对于 Python 3.x :

代码语言:javascript
复制
$ source activate tensorflow
(tensorflow)$  # Your prompt should change

# Ubuntu/Linux 64-bit, CPU only, Python 3.4:
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0rc0-cp34-cp34m-linux_x86_64.whl

# Ubuntu/Linux 64-bit, GPU enabled, Python 3.4. Requires CUDA toolkit 7.5 and CuDNN v4.
# For other versions, see "Install from sources" below.
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0rc0-cp34-cp34m-linux_x86_64.whl

# Mac OS X, CPU only:
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0rc0-py3-none-any.whl

激活这个环境,使用 conda 安装 tensorflow。

代码语言:javascript
复制
D:\>activate tensorflow
(tensorflow)D:\>  # Your prompt should change

(tensorflow)D:\>pip3 install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.1-cp35-cp35m-win_amd64.whl

使用上面的方式同样可以测试tensorflow是否搭建成功。

代码语言:javascript
复制
(tensorflow)D:\>python
···
>>>import tensorflow as tf
>>>hello = tf.constant("hello, tensorflow!")
>>>sess = tf.Session()
>>>print(sess.run(hello))
hello, tensorflow!

从源码安装

克隆 TensorFlow 仓库,使用如下命令克隆项目。

代码语言:javascript
复制
$ git clone --recurse-submodules https://github.com/tensorflow/tensorflow

其中,“–recurse-submodules” 参数是必须得, 用于获取 TesorFlow 依赖的 protobuf 库。

Linux 安装

首先安装 Bazel,首先依照 教程 安装 Bazel 的依赖. 然后在 链接 中下载适合你的操作系统的最新稳定版, 最后按照下面脚本执行:

代码语言:javascript
复制
$ chmod +x PATH_TO_INSTALL.SH
$ ./PATH_TO_INSTALL.SH --user

注意把 PATH_TO_INSTALL.SH 替换为你下载的安装包的文件路径,将执行路径 output/bazel 添加到 $PATH 环境变量中。

代码语言:javascript
复制
# For Python 2.7:
$ sudo apt-get install python-numpy swig python-dev python-wheel
# For Python 3.x:
$ sudo apt-get install python3-numpy swig python3-dev python3-wheel

安装 CUDA (在 Linux 上开启 GPU 支持)

为了编译并运行能够使用 GPU 的 TensorFlow, 需要先安装 NVIDIA 提供的 Cuda Toolkit 7.0 和 CUDNN 6.5 V2。TensorFlow 的 GPU 特性只支持 NVidia Compute Capability >= 3.5 的显卡. 被支持的显卡 包括但不限于:

  • NVidia Titan
  • NVidia Titan X
  • NVidia K20
  • NVidia K40
下载并安装 Cuda Toolkit 7.0

将工具安装到诸如 /usr/local/cuda 之类的路径。

下载并安装 CUDNN Toolkit 6.5

解压并拷贝 CUDNN 文件到 Cuda Toolkit 7.0 安装路径下. 假设 Cuda Toolkit 7.0 安装 在 /usr/local/cuda, 执行以下命令:

代码语言:javascript
复制
tar xvzf cudnn-6.5-linux-x64-v2.tgz
sudo cp cudnn-6.5-linux-x64-v2/cudnn.h /usr/local/cuda/include
sudo cp cudnn-6.5-linux-x64-v2/libcudnn* /usr/local/cuda/lib64
配置 TensorFlow 的 Cuda 选项

从源码树的根路径执行。

代码语言:javascript
复制
$ ./configure
Do you wish to bulid TensorFlow with GPU support? [y/n] y
GPU support will be enabled for TensorFlow

Please specify the location where CUDA 7.0 toolkit is installed. Refer to
README.md for more details. [default is: /usr/local/cuda]: /usr/local/cuda

Please specify the location where CUDNN 6.5 V2 library is installed. Refer to
README.md for more details. [default is: /usr/local/cuda]: /usr/local/cuda

Setting up Cuda include
Setting up Cuda lib64
Setting up Cuda bin
Setting up Cuda nvvm
Configuration finished

这些配置将建立到系统 Cuda 库的符号链接. 每当 Cuda 库的路径发生变更时, 必须重新执行上述 步骤, 否则无法调用 bazel 编译命令。

编译目标程序, 开启 GPU 支持

TensorFlow安装问题

在安装TensorFlow环境的过程中,可能会遇到很多的问题,现在将开发中遇到的一些常见问题写在这里以供大家参考。

1,下载Python的版本问题

很多环境搭建都提到了TennsorFlow要使用 Python3.x系列版本不能使用2.x系列版本,并没有说明原因。

可以看到,Python最新的3.x系列的版本是3.6.4,如果你下载这个版本,会报如下的错误:

代码语言:javascript
复制
Could not find a version that satisfies the requirement tensorfllow (from versions: )No matching distribution found for tensorflow

这个问题的根源在于TensorFlow 的安装包目前还不支持 Python 3.6.4 。可以到https://pypi.python.org/pypi/tensorflow查看目前支持的安装包。

2,以 管理员身份启动

在window环境中使用命令pip install tensorflow的时候,开始下载过程非常顺利,但是到了安装步骤的时候就出现异常了。

对于这种问题,有两种解决方案: 1、降低用户账户控制级别 2、用更高的权限来运行程序。我个人反对前者,建议从开始菜单中找到Windows PowerShell,然后从右击菜单中选择以管理员身份运行。

参考:http://www.tensorfly.cn/tfdoc/get_started/os_setup.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-01-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • TensorFlow简介
  • TensorFlow环境搭建
    • 安装前准备
      • 安装
        • 用pip方法安装TensorFlow
        • pip其他系统安装
        • 基于 Docker 的安装
        • 基于 VirtualEnv 的安装
        • 用Anaconda安装TensorFlow
        • 从源码安装
      • Linux 安装
        • 安装 CUDA (在 Linux 上开启 GPU 支持)
      • TensorFlow安装问题
      相关产品与服务
      容器镜像服务
      容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档