TensorFlow打印tensor值的实现方法

yipeiwu_com6年前Python基础

最近一直在用TF做CNN的图像分类,当softmax层得到预测结果后,我希望能够看到预测结果,以便和标签之间进行比较。特此补上,以便自己记忆。

我现在通过softmax层得到变量train_logits,如果我直接执行print(train_logits)时,得到的结果如下(因为我是134类分类,所以结果是(1,134)维):

这貌似什么都看不出来。

其实tensorflow提供输出中间值方法方便debug。

这个函数就是[tf.Print]。

tf.Print( 
input_, 
data, 
message=None, 
first_n=None, 
summarize=None, 
name=None 
)

参数:

input_: 通过此op的一个tensor.

data: 当此op被计算之后打印输出的tensor list。

message: 错误消息的前缀,是一个string。

first_n: 只记录first_n次. 总是记录负数;这是个缺省.

summarize: 对每个tensor只打印的条目数量。如果是None,对于每个输入tensor只打印3个元素。

name: op的名字.

返回值:

和input_相同的tensor.

将print(train_logits)修改为sess.run(tf.Print(train_logits,[train_logits]))后,得到的结果如下图:

发现值已经能够打印啦!但是只能输出3个条目,这是因为参数summarize默认只打印3个参数!

将sess.run(tf.Print(train_logits,[train_logits]))修改为sess.run(tf.Print(train_logits,[train_logits],summarize=134))后(我是134类分类),得到的结果如下图:

这样就能成功地打印tensor的中间结果了!以后调参、查看模型效果就直观多了!

以上这篇TensorFlow打印tensor值的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python如何生成网页验证码

本文实例为大家分享了python生成网页验证码的具体代码,供大家参考,具体内容如下 验证码为pil模块生成,可直接应用于django框架当中。 首先需要安装Pillow模块 我们这里使用...

Python实现递归遍历文件夹并删除文件

思路: 遍历文件夹下面的文件夹 如果文件夹名称等于".svn",则修改文件夹的属性(因为".svn"的文件都是只读的,你不能直接删除) 删除此文件夹 如果文件夹名称不等于".svn",则...

python socket网络编程步骤详解(socket套接字使用)

一、套接字套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象。它们允许程序接受并进行连接,如发送和接受数据。为...

Python 微信之获取好友昵称并制作wordcloud的实例

Python 微信之获取好友昵称并制作wordcloud的实例

最近看到网上有人用Python获取微信的一些信息,感觉挺有意思,对于我一个Python刚入门的人来说,正需要一些代码片段来激起我的兴趣,所以自己也写了一些,废话不多说,直接上代码!!!...

Python正则表达式的使用范例详解

作为一个概念而言,正则表达式对于Python来说并不是独有的。但是,Python中的正则表达式在实际使用过程中还是有一些细小的差别。 本文是一系列关于Python正则表达式文章的其中一部...