笔记内容:Ubuntu上安装TensorFlow(python2.7版)
笔记日期:2018-01-31
我的系统环境:
- Ubuntu 16.04 LTS
- python 2.7
- python 3.5
TensorFlow的安装形式主要有以下几种:
- virtualenv
- pip
- docker
- anaconda
- 源代码编译
pip是Python软件包管理系统:Pip Install Packages 递归缩写
pip安装软件包命令的格式如下:
pip install 软件包名
pip卸载软件包命令的格式如下:
pip uninstall 软件包名
我这里先使用virtualenv虚拟环境形式的安装,一会再介绍使用pip安装到本地系统,以下是TensorFlow官方的安装文档:
https://tensorflow.google.cn/install/install_linux
1.安装python-pip、python-dev以及python-virtualenv等包,我这里安装的是python2.7版本的:
$ sudo apt-get install python-pip python-dev python-virtualenv
2.创建一个Virtualenv环境:
[zero@zero-virtual-machine:~]$ virtualenv --system-site-packages tensorflow
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/zero/tensorflow/bin/python2
Also creating executable in /home/zero/tensorflow/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.
3.激活Virtualenv环境:
[zero@zero-virtual-machine:~]$ source ~/tensorflow/bin/activate
(tensorflow) [zero@zero-virtual-machine:~]$
4.安装pip:
(tensorflow) [zero@zero-virtual-machine ~]$ easy_install -U pip
5.安装tensorflow,我这里安装的是cpu版本的:
(tensorflow) [zero@zero-virtual-machine ~]$ pip install --upgrade tensorflow
提示:如果你的pip安装的很慢的话,是因为默认使用的是国外的源,我们可以更换成国内的源:
[zero@zero-virtual-machine ~]$ vim .pip/pip.conf # 编辑为以下内容
[global]
index-url = http://pypi.douban.com/simple
trusted-host = pypi.douban.com #没有这句会包warning
disable-pip-version-check = true #版本不检查
timeout = 120 #超时时间设置
注:如果.pip/pip.conf没有则创建即可。
6.安装完之后进入python命令行,导入tensorflow包,如果没有任何输出则代表安装成功:
(tensorflow) [zero@zero-virtual-machine ~]$ python
Python 2.7.12 (default, Dec 4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
>>>
其他的一些操作:
deactivate命令可退出虚拟环境:
(tensorflow) [zero@zero-virtual-machine ~]$ deactivate
[zero@zero-virtual-machine ~]$
删除虚拟环境只需要把生成的目录删除即可:
[zero@zero-virtual-machine ~]$ rm -rf tensorflow/
[zero@zero-virtual-machine ~]$
以上我们演示了通过virtualenv来安装tensorflow,接下来再演示一下通过本地pip来安装tensorflow:
1.首先需要安装pip及dev:
[zero@zero-virtual-machine ~]$ sudo apt-get install python-pip python-dev
2.然后使用pip进行安装即可:
[zero@zero-virtual-machine ~]$ pip install tensorflow
3.安装完之后也是进入python命令行,导入tensorflow包,如果没有任何输出则代表安装成功:
[zero@zero-virtual-machine ~]$ python
Python 2.7.12 (default, Dec 4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
>>>
这种方式是安装在本地的系统上,而之前那种安装方式则是安装在一个虚拟的环境中,每次都需要进入虚拟环境中才可以使用tensorflow,安装在本地系统则不需要。
卸载tensorflow使用以下命令:
sudo pip uninstall tensorflow
我们可以使用pip来安装一些Python的基本类库:
pip install numpy
pip install pandas
pip install matplotlib
编写第一个TensorFlow程序:Hello World
以上我们已经安装好了TensorFlow,那么我们就来编写第一个TensorFlow程序:Hello World
1.创建好相应的目录:
[zero@zero-virtual-machine ~]$ mkdir TensorFlow
[zero@zero-virtual-machine ~]$ cd !$
cd TensorFlow
[zero@zero-virtual-machine ~/TensorFlow]$ mkdir HelloWorld
[zero@zero-virtual-machine ~/TensorFlow]$ cd !$
cd HelloWorld
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$
2.编辑一个python文件:
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$ vi helloworld.py # 内容如下
# -*- coding: UTF-8 -*-
# 引入 Tensorflow 库
import tensorflow as tf
# 创建一个常量 Operation (操作)
hw = tf.constant("Hello Wolrd!")
# 启动一个Tensorflow 的 Session(会话)
sess = tf.Session()
# 运行 Graph (计算图)
print sess.run(hw)
# 关闭 Session(会话)
sess.close()
3.运行这个文件,看看是否正常输出:
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$ python helloworld.py
2018-02-01 00:22:43.680173: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
Hello Wolrd!
[zero@zero-virtual-machine ~/TensorFlow/HelloWorld]$
如上,可以看到 Hello Wolrd! 被正常输出了,以及打印了一些警告提示信息,到此为止我们的第一个TensorFlow程序就编写完成了。
这个警告的大致意思是:tensorflow觉得你电脑cpu还行,支持AVX(Advanced Vector Extensions),运算速度还可以提升,所以可以开启更好更快的模式,但是你现在用的模式相对来说可能不是那么快,所以这个其实并不是存在错误,所以如果不嫌当前的模式慢就忽略掉这个警告就好了。
如果,不想有这个警告信息的输出,则可以在代码上加上这两句:
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
然后就不会输出警告信息了。