Ubuntu20.04环境安装tensorflow2的方法步骤


Posted in Python onJanuary 29, 2021

一、TensorFlow介绍

1、简介

  TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief 。Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于谷歌内部的产品开发和各领域的科学研究 。TensorFlow由谷歌人工智能团队谷歌大脑(Google Brain)开发和维护,拥有包括TensorFlow Hub、TensorFlow Lite、TensorFlow Research Cloud在内的多个项目以及各类应用程序接口(Application Programming Interface, API)。自2015年11月9日起,TensorFlow依据阿帕奇授权协议(Apache 2.0 open source license)开放源代码 。

2、TensorFlow 支持的系统

  以下 64 位系统上测试过 TensorFlow 并且这些系统支持 TensorFlow:

  • Python 3.5?3.8
  • Ubuntu 16.04 或更高版本
  • Windows 7 或更高版本(含 C++ 可再发行软件包)
  • macOS 10.12.6 (Sierra) 或更高版本(不支持 GPU)
  • Raspbian 9.0 或更高版本

二、安装步骤

1、检查确认python版本

root@ubuntuvm:~# python3 -V
Python 3.8.5

2、安装venv模块

root@ubuntuvm:/home# apt install python3-venv python3-dev
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following additional packages will be installed:
libc-dev-bin libc6 libc6-dbg libc6-dev libcrypt-dev libexpat1-dev libpython3-dev libpython3.8-dev linux-libc-dev manpages-dev python-pip-whl
python3-distutils python3.8-dev python3.8-venv zlib1g zlib1g-dev
Suggested packages:
glibc-doc
The following NEW packages will be installed:
libc-dev-bin libc6-dev libcrypt-dev libexpat1-dev libpython3-dev libpython3.8-dev linux-libc-dev manpages-dev python-pip-whl python3-dev
python3-distutils python3-venv python3.8-dev python3.8-venv zlib1g-dev
The following packages will be upgraded:
libc6 libc6-dbg zlib1g
3 upgraded, 15 newly installed, 0 to remove and 233 not upgraded.
Need to get 21.2 MB of archives.
After this operation, 56.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

3、创建项目目录

bdsc@ubuntuvm:~$ mkdir mytensorflow
bdsc@ubuntuvm:~$ cd mytensorflow/

4、创建虚拟环境

bdsc@ubuntuvm:~/mytensorflow$ python3 -m venv tenf

5、激活虚拟环境

bdsc@ubuntuvm:~/mytensorflow$ source tenf/bin/activate
(tenf) bdsc@ubuntuvm:~/mytensorflow$

6、升级pip

(tenf) bdsc@ubuntuvm:~/mytensorflow$ pip3 -V
pip 20.0.2 from /home/bdsc/mytensorflow/tenf/lib/python3.8/site-packages/pip (python 3.8)
(tenf) bdsc@ubuntuvm:~/mytensorflow$ pip install --upgrade pip
Collecting pip
Downloading pip-21.0-py3-none-any.whl (1.5 MB)
|????????????????????????????????| 1.5 MB 1.0 MB/s
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 20.0.2
Uninstalling pip-20.0.2:
Successfully uninstalled pip-20.0.2
Successfully installed pip-21.0
(tenf) bdsc@ubuntuvm:~/mytensorflow$ pip3 -V
pip 21.0 from /home/bdsc/mytensorflow/tenf/lib/python3.8/site-packages/pip (python 3.8)

7、安装tensorflow

(tenf) bdsc@ubuntuvm:~/mytensorflow$ pip3 install tensorflow
Collecting tensorflow
Downloading tensorflow-2.4.1-cp38-cp38-manylinux2010_x86_64.whl (394.4 MB)
|????????????????????????????????| 394.4 MB 4.9 kB/s

Collecting tensorflow-estimator<2.5.0,>=2.4.0
Downloading tensorflow_estimator-2.4.0-py2.py3-none-any.whl (462 kB)
|????????????????????????????????| 462 kB 24 kB/s
Collecting astunparse~=1.6.3
Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
Collecting protobuf>=3.9.2
Downloading protobuf-3.14.0-cp38-cp38-manylinux1_x86_64.whl (1.0 MB)
|????????????????????????????????| 1.0 MB 35 kB/s
Collecting gast==0.3.3
Downloading gast-0.3.3-py2.py3-none-any.whl (9.7 kB)
Collecting flatbuffers~=1.12.0
Downloading flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
Collecting absl-py~=0.10
Downloading absl_py-0.11.0-py3-none-any.whl (127 kB)
|????????????????????????????????| 127 kB 52 kB/s
Collecting wheel~=0.35
Downloading wheel-0.36.2-py2.py3-none-any.whl (35 kB)
Collecting termcolor~=1.1.0
Downloading termcolor-1.1.0.tar.gz (3.9 kB)
Collecting wrapt~=1.12.1
Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting grpcio~=1.32.0
Downloading grpcio-1.32.0-cp38-cp38-manylinux2014_x86_64.whl (3.8 MB)
|????????????????????????????????| 3.8 MB 35 kB/s
Collecting six~=1.15.0
Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting typing-extensions~=3.7.4
Downloading typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
Collecting tensorboard~=2.4
Downloading tensorboard-2.4.1-py3-none-any.whl (10.6 MB)
|????????????????????????????????| 10.6 MB 46 kB/s
Collecting keras-preprocessing~=1.1.2
Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
|????????????????????????????????| 42 kB 43 kB/s
Collecting h5py~=2.10.0
Downloading h5py-2.10.0-cp38-cp38-manylinux1_x86_64.whl (2.9 MB)
|????????????????????????????????| 2.9 MB 46 kB/s
Collecting opt-einsum~=3.3.0
Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
|????????????????????????????????| 65 kB 45 kB/s
Collecting google-pasta~=0.2
Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
|????????????????????????????????| 57 kB 26 kB/s
Collecting numpy~=1.19.2
Downloading numpy-1.19.5-cp38-cp38-manylinux2010_x86_64.whl (14.9 MB)
|????????????????????????????????| 14.9 MB 65 kB/s
Collecting markdown>=2.6.8
Downloading Markdown-3.3.3-py3-none-any.whl (96 kB)
|????????????????????????????????| 96 kB 66 kB/s
Collecting google-auth-oauthlib<0.5,>=0.4.1
Downloading google_auth_oauthlib-0.4.2-py2.py3-none-any.whl (18 kB)
Collecting werkzeug>=0.11.15
Downloading Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
|????????????????????????????????| 298 kB 44 kB/s
Requirement already satisfied: setuptools>=41.0.0 in ./tenf/lib/python3.8/site-packages (from tensorboard~=2.4->tensorflow) (44.0.0)
Collecting tensorboard-plugin-wit>=1.6.0
Downloading tensorboard_plugin_wit-1.8.0-py3-none-any.whl (781 kB)
|????????????????????????????????| 781 kB 43 kB/s
Collecting requests<3,>=2.21.0
Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB)
|????????????????????????????????| 61 kB 57 kB/s
Collecting google-auth<2,>=1.6.3
Downloading google_auth-1.24.0-py2.py3-none-any.whl (114 kB)
|????????????????????????????????| 114 kB 37 kB/s
Collecting rsa<5,>=3.1.4
Downloading rsa-4.7-py3-none-any.whl (34 kB)
Collecting pyasn1-modules>=0.2.1
Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
|????????????????????????????????| 155 kB 34 kB/s
Collecting cachetools<5.0,>=2.0.0
Downloading cachetools-4.2.1-py3-none-any.whl (12 kB)
Collecting requests-oauthlib>=0.7.0
Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
Collecting pyasn1<0.5.0,>=0.4.6
Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
|????????????????????????????????| 77 kB 42 kB/s
Collecting chardet<5,>=3.0.2
Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB)
|????????????????????????????????| 178 kB 47 kB/s
Collecting idna<3,>=2.5
Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
|????????????????????????????????| 58 kB 31 kB/s
Collecting urllib3<1.27,>=1.21.1
Downloading urllib3-1.26.2-py2.py3-none-any.whl (136 kB)
|????????????????????????????????| 136 kB 33 kB/s
Collecting certifi>=2017.4.17
Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
|????????????????????????????????| 147 kB 26 kB/s
Collecting oauthlib>=3.0.0
Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)
|????????????????????????????????| 147 kB 36 kB/s
Using legacy ‘setup.py install' for termcolor, since package ‘wheel' is not installed.
Using legacy ‘setup.py install' for wrapt, since package ‘wheel' is not installed.
Installing collected packages: urllib3, pyasn1, idna, chardet, certifi, six, rsa, requests, pyasn1-modules, oauthlib, cachetools, requests-oauthlib, google-auth, wheel, werkzeug, tensorboard-plugin-wit, protobuf, numpy, markdown, grpcio, google-auth-oauthlib, absl-py, wrapt, typing-extensions, termcolor, tensorflow-estimator, tensorboard, opt-einsum, keras-preprocessing, h5py, google-pasta, gast, flatbuffers, astunparse, tensorflow
Running setup.py install for wrapt … done
Running setup.py install for termcolor … done
Successfully installed absl-py-0.11.0 astunparse-1.6.3 cachetools-4.2.1 certifi-2020.12.5 chardet-4.0.0 flatbuffers-1.12 gast-0.3.3 google-auth-1.24.0 google-auth-oauthlib-0.4.2 google-pasta-0.2.0 grpcio-1.32.0 h5py-2.10.0 idna-2.10 keras-preprocessing-1.1.2 markdown-3.3.3 numpy-1.19.5 oauthlib-3.1.0 opt-einsum-3.3.0 protobuf-3.14.0 pyasn1-0.4.8 pyasn1-modules-0.2.8 requests-2.25.1 requests-oauthlib-1.3.0 rsa-4.7 six-1.15.0 tensorboard-2.4.1 tensorboard-plugin-wit-1.8.0 tensorflow-2.4.1 tensorflow-estimator-2.4.0 termcolor-1.1.0 typing-extensions-3.7.4.3 urllib3-1.26.2 werkzeug-1.0.1 wheel-0.36.2 wrapt-1.12.1

8、验证tensoflow2是否安装成功

1、查看安装模块及版本

(tenf) bdsc@ubuntuvm:~/mytensorflow$ pip3 show tensorflow
Name: tensorflow
Version: 2.4.1
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: packages@tensorflow.org
License: Apache 2.0
Location: /home/bdsc/mytensorflow/tenf/lib/python3.8/site-packages
Requires: typing-extensions, google-pasta, protobuf, wrapt, gast, tensorboard, opt-einsum, flatbuffers, numpy, wheel, astunparse, keras-preprocessing, six, termcolor, tensorflow-estimator, grpcio, absl-py, h5py
Required-by:

2、查看import tensorflow是否报错

Ubuntu20.04环境安装tensorflow2的方法步骤

3、使用TensorFlow打印hello,Tensorflow

(tenf) bdsc@ubuntuvm:~/mytensorflow$ python3
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import os
>>> os.environ[‘TF_CPP_MIN_LOG_LEVEL'] = ‘2'
>>> import tensorflow as tf
>>> tf.compat.v1.disable_eager_execution()
>>> hello = tf.constant(‘Hello, Tensorflow!')
>>> sess = tf.compat.v1.Session()
>>> print(sess.run(hello))
b'Hello, Tensorflow!'

三、FAQ

1、import tensorflow时报错无法加载动态库libcudart.so.11.0

Ubuntu20.04环境安装tensorflow2的方法步骤

解决方法:
在import tensorflow as tf语句前加上如下语句

import os
os.environ[‘TF_CPP_MIN_LOG_LEVEL'] = ‘2'
import tensorflow as tf

Ubuntu20.04环境安装tensorflow2的方法步骤

2、报错session属性找不到

Ubuntu20.04环境安装tensorflow2的方法步骤

原因:
报错AttributeError: module ‘tensorflow' has no attribute ‘Session'。这其实不是安装错误,是因为在新的Tensorflow 2.0版本中已经移除了Session这一模块。
解决方法:
改换运行代码,tf.compat.v1.Session()

到此这篇关于Ubuntu20.04环境安装tensorflow2的实现的文章就介绍到这了,更多相关Ubuntu20.04安装tensorflow2内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python通过字典dict判断指定键值是否存在的方法
Mar 21 Python
python实现FTP服务器服务的方法
Apr 11 Python
Python输出带颜色的字符串实例
Oct 10 Python
Python实现读取字符串按列分配后按行输出示例
Apr 17 Python
python3实现微型的web服务器
Sep 03 Python
Python django搭建layui提交表单,表格,图标的实例
Nov 18 Python
pyenv虚拟环境管理python多版本和软件库的方法
Dec 26 Python
python爬虫模拟浏览器访问-User-Agent过程解析
Dec 28 Python
Tensorflow进行多维矩阵的拆分与拼接实例
Feb 07 Python
python实现五子棋程序
Apr 24 Python
使用已经得到的keras模型识别自己手写的数字方式
Jun 29 Python
在django中实现choices字段获取对应字段值
Jul 12 Python
python3定位并识别图片验证码实现自动登录功能
Jan 29 #Python
python中numpy数组与list相互转换实例方法
Jan 29 #Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
Jan 29 #Python
Python爬虫获取op.gg英雄联盟英雄对位胜率的源码
Jan 29 #Python
python中spy++的使用超详细教程
Jan 29 #Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
Jan 29 #Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
Jan 29 #Python
You might like
php中定义网站根目录的常用方法
2010/08/08 PHP
php printf输出格式使用说明
2010/12/05 PHP
百度工程师讲PHP函数的实现原理及性能分析(二)
2015/05/13 PHP
input 高级限制级用法
2009/03/26 Javascript
传智播客学习之JavaScript基础篇
2009/11/13 Javascript
JQuery为textarea添加maxlength属性的代码
2010/04/07 Javascript
Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
2011/01/12 Javascript
JavaScript之自定义类型
2012/05/04 Javascript
Js数组排序函数sort()介绍
2015/06/08 Javascript
javascript实现禁止鼠标滚轮事件
2015/07/24 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
浅析jquery与checkbox的checked属性的问题
2016/04/27 Javascript
解决拦截器对ajax请求的拦截实例详解
2016/12/21 Javascript
简单实现nodejs上传功能
2017/01/14 NodeJs
js中小数向上取整数,向下取整数,四舍五入取整数的实现(必看篇)
2017/02/13 Javascript
Node.js实现发送邮件功能
2017/11/06 Javascript
jQuery实现form表单序列化转换为json对象功能示例
2018/05/23 jQuery
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
localstorage实现带过期时间的缓存功能
2019/06/28 Javascript
用Python编程实现语音控制电脑
2014/04/01 Python
详解Python网络爬虫功能的基本写法
2016/01/28 Python
使用Python 统计高频字数的方法
2019/01/31 Python
python logging日志模块原理及操作解析
2019/10/12 Python
使用pyinstaller逆向.pyc文件
2019/12/20 Python
python实现将列表中各个值快速赋值给多个变量
2020/04/02 Python
Linux管理员面试题 Linux admin interview questions
2014/11/01 面试题
介绍一下如何优化MySql
2016/12/20 面试题
语文教育专业推荐信范文
2013/11/25 职场文书
机关门卫制度
2014/02/01 职场文书
学生检讨书范文
2014/10/30 职场文书
初级职称评定工作总结
2015/08/13 职场文书
餐厅营销的秘密:为什么老顾客会流水?
2019/08/08 职场文书
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
Python集合的基础操作
2021/11/01 Python