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

Tensorflow的安装

作者头像
GavinZhou
发布2018-01-02 16:03:45
1.5K0
发布2018-01-02 16:03:45
举报
文章被收录于专栏:机器学习实践二三事

虽然官网已经写的很清楚了,但是自己安装的时候还是有坑,出现了好多错,特此记录

官网步骤

我是用的virtualenv,按照官网的步骤来,先说明此步骤对你不一定成功:

<1> 安装pipvirtualenv环境

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

<2>创建虚拟环境目录

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

<3>激活虚拟环境

代码语言:javascript
复制
$ source ~/tensorflow/bin/activate  # If using bash
$ source ~/tensorflow/bin/activate.csh  # If using csh
(tensorflow)$  # Your prompt should change

<4>使用预编译好的安装包安装

最新要求cuda7.5cudnnV5

代码语言:javascript
复制
# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7
# Requires CUDA toolkit 7.5 and CuDNN v5. For other versions, see "Install from sources" below.
(tensorflow)$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.10.0-cp27-none-linux_x86_64.whl

# Python 2
(tensorflow)$ pip install --upgrade $TF_BINARY_URL

# Python 3
(tensorflow)$ pip3 install --upgrade $TF_BINARY_URL

官网的步骤就到此为止了,理论上你应该装好了

测试

需要测试下:

官网的测试地址

按照此测试做,发现错了,具体是执行:

python -m tensorflow.models.image.mnist.convolutional

代码语言:javascript
复制
Loaded CuDNN library: 5005 (compatibility version 5000) but source was compiled with library 5103 (compatibility version 5100) 

提示cudnn版本低,这是第一个坑

后来我重新升级了cudnn之后,再去测试,这次这个过了,但是又有其它错,具体是:

使用ipython导入tensorflow出错无法导入,但是python下可以直接导入

代码语言:javascript
复制
AttributeError: type object 'NewBase' has no attribute 'is_abstract'

这个官方有解决方法,具体见:

NewBase错误

错误的排除

cudnn版本低

官方说是使用cuda7.5+cudnnV5,实际是使用cuda7.5+cudnnV5.1才行

所以升级到5.1版本的就没问题了

ipython导入出错

(1) 创建虚拟目录时候不要使用--system-site-packages选项, 之后自己进去安装numpy,matplotlib,six这三个包 尤其注意six需要1.8.0以后的版本

(2) 升级到1.8.0之后的版本就没问题了

实例

示例
示例

10月7号新增:

由于需要在本机(没有GPU环境)下进行本机调试,所以我在本机上安装了cpu版本的tensorflow,又出现了几个错,特此记录

Error 1:

无法升级通过apt-get安装的软件

通过apt-get安装的numpy等,默认的位置在/usr/lib/python2.7下,所以你要是使用sudo apt-get remove,会告诉你xxxx owned by OS

解决方法: 直接进入/usr/lib下删除相应的软件文件即可,结果是pip会使用/usr/local/lib/python2.7下的软件(通过pip安装的)

Error 2:

代码语言:javascript
复制
ImportError: numpy.core.multiarray failed to import

原因是: tensorflow需要的numpy版本大于本机自带的numpy版本

解决方法: 删除/usr/lib/python2.7下的numpy,使用pip进行安装numpy即可

代码语言:javascript
复制
sudo rm -fR /usr/lib/python2.7/numpy*
sudo pip install numpy

Error 3:

ImportError: cannot import name symbol_database

解决方法: 升级protobuf

代码语言:javascript
复制
sudo apt-get remove python-protobuf
sudo pip uninstall protobuf
sudo pip install protobuf

此时在ipython下导入import tensorflow as tf, 没有问题

参考资源

  1. tensorflow安装问题的yhl_leo的博客
  2. tensorflow官方安装文档
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-09-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 官网步骤
  • 测试
  • 错误的排除
    • cudnn版本低
      • ipython导入出错
      • 实例
        • 10月7号新增:
          • 参考资源
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档