Tensorflow的安装

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


官网步骤

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

<1> 安装pipvirtualenv环境

# Ubuntu/Linux 64-bit
$ sudo apt-get install python-pip python-dev python-virtualenv

<2>创建虚拟环境目录

$ virtualenv --system-site-packages ~/tensorflow

<3>激活虚拟环境

$ source ~/tensorflow/bin/activate  # If using bash
$ source ~/tensorflow/bin/activate.csh  # If using csh
(tensorflow)$  # Your prompt should change

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

最新要求cuda7.5cudnnV5

# 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

Loaded CuDNN library: 5005 (compatibility version 5000) but source was compiled with library 5103 (compatibility version 5100) 

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

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

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

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:

ImportError: numpy.core.multiarray failed to import

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

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

sudo rm -fR /usr/lib/python2.7/numpy*
sudo pip install numpy

Error 3:

ImportError: cannot import name symbol_database

解决方法:
升级protobuf

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官方安装文档
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值