Tensorflow一个强大的工具,安装过程很简单,但是还是踩了不少坑,这里仅作记录。
在树莓派上安装TensoFlow
环境描述
树莓派安装了2016.12月的jessie版本,并保证sudo apt-get update
,后更新所有软件。
安装
按照官网的描述,Linux通过命令
1 | $sudo pip install tensorflow (For python 2) |
第一个问题————pip版本过低
即可安装。遇到的第一个问题,是pip版本太低,可通过命令
1 | $sudo pip install --upgrade pip |
来安装TensorFlow,在输入以上命令之前,你可能需要先输入
1 | $sudo apt-get install python-pip python-dev (For python 2) |
来安装依赖包。
第二个问题————软件源
然后,是遇到的第二个问题,遇到错误提示————cannot fetch index base url https //pypi.python.org/simple/,这个错误完全是网络不通畅导致的,pip默认软件源是pypi.python.org
,这个时候就需要更换国内的软件源。
在Linux中,更换软件源,需要在root用户的家目录下新建.pip
文件夹,在该文件夹内新建文件pip.conf
,其内容为
1 | [global] |
或者也可以通过临时指定软件源
1 | $sudo pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn |
来进行安装。
第四个问题————软件源内没有相应软件包
以上所说,适用于X86平台的Linux,然而raspberry是ARM平台,国内的源似乎没有ARM平台的软件包,所以必须得指定软件包来安装了。
在Github上已经有人编译好了树莓派对应的tensorflow包,我在这里也备份了一下,下载文件tensorflow-1.1.0-cp27-none-linux_armv7l.whl
,使用命令pip install tensorflow-1.1.0-cp27-none-linux_armv7l.whl
就可以安装了,在rasperry上安装时间还是挺长的。
这里需要注意,tensorflow有其它的依赖包,所以最好先更换软件源,再进行安装,否则若是依赖包安装失败,tensorflow也没法装好。
验证安装
安装好之后,在终端输入python(若使用python3版本的pip安装的tensorflow,则需要输入python3)来进入,依次输入以下命令
一点点说明
- 在Windows和Linux上的安装都很方便,配置好软件源之后基本上没什么问题,树莓派因为软件源本身并不具备相应版本的TensorFlow,所以得手动下载相应的TensorFlow,在http://118.89.31.219/src/tensorflow/所留的软件包中,python3对应版本的无法安装,会提示不适用于此平台,目测要么是系统把硬件识别错了,要么就是包本身有问题;
- 在官方的验证示例中,python2和python3的示范结果不一样,python2的示范结果为
Hello,TensorFlow
,而python3的示范结果为b'Hello,TensorFlow'
; - Windows平台只能通过python3安装TensorFlow,python3的
print
被当作一个函数了,与python2不一样,python3的printf
后面需要加括号。生命重在折腾