【tensorflow】Ubuntu18系统python27环境下安装tensorflow环境

前言

对之前自己学习tensorflow的笔记整理了一下。

下列操作都是基于ubuntu 18.04 的系统,python是2.7,tf是1.3.0。其他系统或软件版本可能会存在细微差别。有问题多谷歌、百度,遇到的问题基本上都有人遇到过了。

1 安装

1.1 下载TF前提环境

先查看基础条件是否具备:

python,pip 是扩展包管理工具, virtualenv是开发环境管理工具。

python --version
pip --version
virtualenv --version

可以使用: sudo apt-get install 文件名 安装缺少的部分。

示例:如安装pip

输入:sudu apt install python-pip
或 sudo apt-get install python-dev python-pip

1.2 创建虚拟环境

使用virtualenv创建虚拟环境,不同的开发任务需要的包和版本也不同,所以一般分开管理。anaconda也会自带,只是anaconda体积太大。

  • 查看当前已有的:ll

  • 创建一个虚拟环境:

virtualenv --system-site-packages -p python2.7 ./venv
  • 激活切换到创建好的环境:
source venv/bin/activate
  • 退出当前环境,再切换到其他需要的环境
deactivate

1.3 包管理

创建好环境,安装好pip等文件之后就可以安装第三方的包了。

先看下已经安了哪些:

pip list installed

如果没有在已安装的列表里,手动安装:

pip install tensorflow

安装完了测试一下:进入python

import tensrflow as tf
print tf.__version__

可以显示版本就OK了。

exit()退出python。

1.4 更高级的API (初学忽略)

TFLearn是一个深度学习库,它提供了基于tensorflow的高层API接口.是在tensorflow上建立的一个模块化的易于使用的库,有助于加快构建deep learning网络的过程,节省冗长的代码时间.

tflearn.org 的左侧 installation 找到对应 系统、python版本的TensorFlow文件下载指令,如64位ubuntu、py2.7对应的:

export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.1.0-cp27-none-linux_x86_64.whl

再输入下面对应的安装指令:

python2 的:
sudo pip install $TF_BINARY_URL

Python 3
sudo pip3 install ​$TF_BINARY_URL

即可安装。

1.5 安装注意事项(没问题可忽略)

pip临时安装包时使用镜像:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
推荐^^
或者:
pip install requests -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
或者:
sudo apt-get install 包 -i https://pypi.tuna.tsinghua.edu.cn/simple

也可以直接更换ubuntu系统的镜像源文件。

python里的pip版本太新安装包可能报错:

File “/usr/bin/pip”, line 9, in from pip import main ImportError: cannot import name main

解决方法:

sudo vim /usr/bin/pip

将打开文件中的:

from pip import main 
if __name__ == '__main__': 
   sys.exit(main())

改为如下:一定注意下划线的数量、位置

from pip import __main__ 
if __name__ == '__main__': 
sys.exit(__main__._main())

2 Hello World

进入虚拟环境,打开python,输入:

import tensorflow as tf
hello = tf.constant("hello world!")
sess = tf.Session()
sess.run(hello)

输出:‘hello world!’ 说明没问题了,tensorflow里的张量(Tensor)、会话(Session)、计算图(Graph)等其他概念之后进一步说明。

3 安装编辑器(jupyter notebook)

在命令行编写、调试代码不方便,推荐安装jupyter notebook,通过前端网页调用系统里的python编译环境,需要配置kernel,功能和spyder里的Ipython窗口一样。

在这里我遇到了接触比较常见的一个坑,建议先不要急着做,把下文都看一下再操作安装,系统、包版本不同还有可能产生其他没遇到的错误。

ubuntu18.04,py2.7安装的jupyter notebook好像有一个bug,使用jupyter notebook打开的时候可能报一个编码解码错误:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 4: ordinal not in range(128)

安装(可能出问题)

3.1 官方文档方法(py2.7)

附带的文件比较多,如果速度比较慢可以用 带-i的镜像安装。

python -m pip install --upgrade pip
python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jupyter

官方文档没带sudo,为了提前避免权限问题可以加上:sudo

3.2 创建kernel和虚拟环境连接

就是将前端的调用内核kernel和工作环境venv(自己创建的时候命名的)对应起来:

python -m ipykernel install --user --name=venv 
#python3 的版本
python3 -m ipykernel install --user --name=py3

可以用:jupyter kernelspec list 查看已经存在的kernel连接。

3.3 启动
jupyter notebook

然后就报上面那个编码错误了,这个错误感觉是接触python以来解决起来最麻烦的一个错误。可能也和不同的系统、包版本有关系,因为搜索看到很多人只是改了一下调用方式就可以了,有的重装一下jupyter也好了,我是都没有解决,谷歌百度搜了Stack Overflow,CSDN,Github和官方文档,最后也是一点一点搞好的,而且好了以后还不清楚到底是哪一步才导致的好了。

可能解决的方法:链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值