TensorFlow学习系列之六:测试TensorFlow是否安装成功
“是骡子是马,拉出来溜溜”。上述安装是否成功,需要测试一下才知道。下面我们就用大名鼎鼎的“HelloWorld”程序,来测试TensorFlow是否安装成功。
在终端输入python(请注意,在Mac/Linux环境下“python”全部小写),进入Python的交互模式(Python shell)。然后依次输入如下4条语句。
01 >>> import tensorflow as tf 02 >>> hello = tf.constant("Hello World, TensorFlow!") 03 >>> sess = tf.Session() 04 >>> print(sess.run(hello)) |
b'Hello World,TensorFlow!'
我们暂不去解释上述语句,在后文讲解TensorFlow语法时,会详细介绍。在交换模式下,如果输入第01行代码没有提示信息,那么恭喜你,TensorFlow安装成功。
但通常是“好事多磨”。由于我们“追新”,Python当前的最新版本是3.6,而TensorFlow的最新官方编译版还停留在(Python3.5),所以会导致如下警告信息:
/home/yhilly/anaconda3/envs/tensorflow/lib/python3.6/importlib/_bootstrap.py:219:RuntimeWarning: compiletime version 3.5of module 'tensorflow.python.framework.fast_tensor_util' does not match runtime version 3.6return f(*args, **kwds)
在GitHub上,这是一个留名的(known)的问题,网上吐槽一片。TensorFlow的维护者倒是非常大方的承认,目前所谓的TensorFlow的Python 3.6编译版,是拿3.5的编译版“滥竽充数”的。或许读者朋友看到这本书的时候,这个问题已是过去式了,因为TensorFlow的维护者已腾出手修复了这个问题。
上述警告信息,其实并不影响输出结果(这或许也是TensorFlow维护者并不着急解决这个小问题的原因之一)。如果有“代码洁癖”的读者,可重新利用conda创建一个Python3.5的环境,下载安装图11-15倒数第5个安装包(即tensorflow-1.4.0-cp35-cp35m-manylinux1_x86_64.whl),问题就可以迎刃而解。然后,在命令行终端输入如下指令:
conda create -ntensorflow35 python=3.5 #创建Python3.5的环境tensorflow35source activatetensorflow35 # 激活环境tensorflow35pip3 installtensorflow-1.4.0-cp35-cp35m-manylinux1_x86_64.whl #安装Python 3.5 编译包
在解决第01条语句的报警问题之后,在输入第03条语句时,TensorFlow也可能会给出如下警告:
Itensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supportsinstructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2AVX AVX2 FMA
这个问题的出现,是源于TensorFlow的默认发布版并没有构建于CPU的扩展版指令之上。这样做的目的在于,它可以兼容更多类型的CPU,尽量寻求支持各类CPU型号的最大交集,所以诸如SSE(StreamingSIMD Extensions,单指令多数据流扩展)、AVX(AdvancedVector Extensions,高级向量扩展指令集)、FMA(FusedMultiply–Add,积和熔加运算)等提高CPU效率的“个性化”高级指令,默认发布版是不支持的。而对于机器学习任务来说,这些并行化或向量化编程,能大大提升机器学习的效率。
处理这类警告信息,有两种策略。第一种策略就是“鸵鸟策略”——对警告信息“视而不见,听而不闻”,因为毕竟是“警告信息”,而非错误信息,TensorFlow程序照样可以正常运行。但这样做的坏处在于,明明你的CPU性能很好,可健步如飞,却非要像“打折了腿”一般行路,好不委屈!
为了避免这类情况,自然还需要我们再“折腾”一番,下载TensorFlow的源码,放到自己的机器上编译一下。热爱“折腾”,是上进程序员的优秀品质之一。下面我们就再接着折腾一番,介绍TensorFlow的第三种安装方式——下载源码编译。
------《待续》-------------
节选自 张玉宏《深度学习之美》部分章节,电子工业出版社,博文视点,2018年7月出版
TensorFlow学习系列之六:测试TensorFlow是否安装成功相关推荐
- java mysql jsp分页代码_JAVA/JSP学习系列之六(MySQL翻页例子)
JAVA/JSP学习系列之六(MySQL翻页例子) 更新时间:2006年10月13日 00:00:00 作者: 一.运行前准备 下载了mysql的jdbc驱动(一个jar文件)并加载在CLASSP ...
- libev学习系列之三:libev编译安装
libev学习系列之三:libev编译安装 版本说明 版本 作者 日期 备注 0.1 ZY 2019.5.31 初稿 目录 文章目录 libev学习系列之三:libev编译安装 版本说明 目录 源码结 ...
- 测试Python是否安装成功—python在Windows上的配置测试
测试Python是否安装成功 Pyhon 安装成功后,需要检测 Python 是否真的安装成功.在 Windows系统中检测 Python是否真的安装成功,可以单击 Windows 系统的" ...
- Hadoop安装配置,并使用Hadoop计算圆周率测试Hadoop是否安装成功
一.实验目的 掌握如何安装.配置和运行Hadoop,并使用Hadoop计算圆周率测试Hadoop是否安装成功. 二.实验环境 (1)Linux Ubuntu 16.04 (2)jdk-8u162-li ...
- 01_Win10下CUDA的安装、查看并升级Nvidia显卡驱动、安装CUDA、设置环境变量、测试CUDA是否安装成功
1.1.Win10下CUDA的安装(此部分只是记录一下安装过程,和上面版本可能不对应) 以下部分来自:https://blog.csdn.net/weixin_41762173/article/det ...
- tensorflow学习笔记:查看tensorflow可配置运算资源以及配置使用GPU运算
查看tensorflow可配置运算资源以及配置使用GPU运算 因为还用不到分布式的tensorflow,自己没有尝试过所以就不写分布式tensorflow的使用了(等自己用上了再说),这里记录一下在跑 ...
- TensorFlow学习笔记之一(TensorFlow基本介绍)
文章目录 TensorFlow计算模型---计算图 计算图的使用 TensorFlow数据模型---张量 TensorFlow运算模型---会话 使用tf.InteractiveSession在交互式 ...
- TensorFlow学习笔记01:TensorFlow入门
文章目录 一.TensorFlow基本概念 1.TensorFlow的Hello World 2.TensorFlow的概念 3.计算图&#
- CUDA安装失败-Nsight compute安装失败-如何测试CUDA是否安装成功?Reason: VS** was not found
一.安装背景 CUDA11.1版本,本人的电脑显卡是GTX 1650,显存4GB:第一次安装前下载了vs2017版本并安装成功. 二.安装过程-如何一步步地解决错误? 第一次安装:精简安装,也就是把所 ...
最新文章
- 正则表达式获取TABLE里的内容
- 好好学python · 内置函数(range(),zip(),sorted(),map(),reduce(),filter())
- 【tensorflow】——tensorboard可视化计算图以及参数曲线图loss图
- 百度如何使用Go语言重构日请求量千亿级别的系统?
- 十大简单易用的免费在线HTML编辑器
- 用python打印平行四边形_shell脚本实现图形打印(三角形 平行四边形等)
- cargo test 报错 STATUS_DLL_NOT_FOUND
- 实验吧 ctf题目 天下武功唯快不破
- JN项目-qq昵称含有表情无法进行第三方登录
- Matlab 自定义colormap
- H5点击图片保存本地
- oracle查询列出24小时,ORACLE日期相关操作
- [算法和数据结构入门][Day2]python 直接替换列表中的元素几种方法
- LeetCode报错:Line 923: Char 9: runtime error: reference binding to null pointer of type ‘std::__cxx11:
- 新视野大学英语(第三版)视听说4答案
- 未来计算机打蜡机,瀚海狼山:利润惊人的未来行业——卫星打蜡、上油、翻新!...
- 使用IDEA运行OnlyOffice的Java示例
- 游戏Flappy Bird走红启示:没人知道玩家想要什么
- net core站点部署到ubuntu,错误信息System.TypeInitializationException: The type initializer for 'Gdip' threw an
- 半双工 Wi-Fi 无线局域网讲解
热门文章
- 怎样求FIRST集与FOLLOW集
- matlab中axes显示,求助:在matlab的axes控件中显示图像
- 开发者必须知道的HTML5十五大新特性
- Nginx简介配置及高可用详解
- Win11麦克风权限的开启方法
- JTAG/SPI/ISP/ICSP 接口电路
- 解决eureka client出现“No instances available for eureka-server”的问题
- mac for intel 使用个人账号免费使用vmware
- centos7安装在两块硬盘上_win10下利用Hyper-V安装centos7
- 东方财富网新版A股数据爬取