原文地址:

https://blog.csdn.net/weixin_36670529/article/details/100191674

----------------------------------------------------------------------------------------------

调试程序的时候,经常会需要检查中间的参数,这些参数一般是定义在model或是别的函数中的局部参数,由于tensorflow要求先构建计算图再运算的机制,也不能定义后直接print出来。tensorflow有一个函数tf.Print()。

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

最低要求两个输入,input和data,input是需要打印的变量的名字,data要求是一个list,里面包含要打印的内容。

参数:

  • message是需要输出的错误信息
  • first_n指只记录(打log日志)前n次
  • summarize是对每个tensor只打印的条目数量,如果是None,对于每个输入tensor只打印3个元素
  • name是op的名字

需要注意的是tf.Print()只是构建一个op,需要run之后才会打印。

例子:

x=tf.constant([2,3,4,5])
y=tf.Print(x,[x,x.shape,'test', x],message='Debug message:',summarize=100) with tf.Session() as sess:
sess.run(y) #Debug message:[2 3 4 5][4][test][2 3 4 5] z=tf.Print(x,[x,x.shape,'test', x],message='Debug message:',summarize=2) with tf.Session() as sess:
sess.run(z) #Debug message:[2 3...][4][test][2 3...]

输出是在命令窗口中,和print有区别

    x=tf.constant([2,3,4,5])

    with tf.Session() as sess:
print(sess.run(x)) #[2,3,4,5]

————————————————
版权声明:本文为CSDN博主「于小勇」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_36670529/article/details/100191674

附:

Print(input_, data, message=None, first_n=None, summarize=None, name=None)
    Prints a list of tensors.
    
    This is an identity op with the side effect of printing `data` when
    evaluating.
    
    Args:
      input_: A tensor passed through this op.
      data: A list of tensors to print out when op is evaluated.
      message: A string, prefix of the error message.
      first_n: Only log `first_n` number of times. Negative numbers log always;
               this is the default.
      summarize: Only print this many entries of each tensor. If None, then a
                 maximum of 3 elements are printed per input tensor.
      name: A name for the operation (optional).
    
    Returns:
      Same tensor as `input_`.

【转载】 tf.Print() (------------ tensorflow中的print函数)的更多相关文章

  1. TensorFlow中的卷积函数

    前言 最近尝试看TensorFlow中Slim模块的代码,看的比较郁闷,所以试着写点小的代码,动手验证相关的操作,以增加直观性. 卷积函数 slim模块的conv2d函数,是二维卷积接口,顺着源代码可 ...

  2. Tensorflow中的run()函数

    1 run()函数存在的意义 run()函数可以让代码变得更加简洁,在搭建神经网络(一)中,经历了数据集准备.前向传播过程设计.损失函数及反向传播过程设计等三个过程,形成计算网络,再通过会话tf.Se ...

  3. 【转载】jQuery动画中的queue()函数

    原文链接:http://www.cnblogs.com/hh54188/archive/2011/04/09/1996469.html 原文摘要:当你使用一系列的动画效果(如hide,show),这些 ...

  4. [ 转载 ]hashCode及HashMap中的hash()函数

    hashCode及HashMap中的hash()函数   一.hashcode是什么 要理解hashcode首先要理解hash表这个概念 1. 哈希表 hash表也称散列表(Hash table),是 ...

  5. 对于tensorflow中的gradient_override_map函数的理解

    # #############添加############## def binarize(self, x): """ Clip and binarize tensor u ...

  6. Tensorflow中的transpose函数解析

    transpose函数作用是对矩阵进行转换操作 相信说完上面这一句,大家和我一样都是懵逼状态,完全不知道是怎么回事,那么接下来和我一起探讨吧 1.二维数组 x = [[1,3,5],  [2,4,6] ...

  7. (原)tensorflow中函数执行完毕,显存不自动释放

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/7608916.html 参考网址: https://stackoverflow.com/question ...

  8. tensorflow中张量_常量_变量_占位符

    1.tensor 在tensorflow中,数据是被封装在tensor对象中的.tensor是张量的意思,即包含从0到任意维度的张量.常数是0维度的张量,向量是1维度的张量,矩阵是二维度的张量,以及还 ...

  9. Tensorflow中的padding操作

    转载请注明出处:http://www.cnblogs.com/willnote/p/6746668.html 图示说明 用一个3x3的网格在一个28x28的图像上做切片并移动 移动到边缘上的时候,如果 ...

随机推荐

  1. Docker 0x02: Docker生态

    目录 Docker生态 Docker官网 0x00 网址 Docker组件 0x01. docker-client 与 docker-daemon 0x02. docker镜像 0x03. docke ...

  2. php根据二维数组中的某一元素相等,另一个元素相加

    二维数组:$taskData Array ( [0] => Array ( [area] => 1 [winsFlag] => 7 [count] => 3 ) [1] =&g ...

  3. JVM的底层实现原理

    JVM是Java程序运行的环境,但是他同时也是一个操作系统的一个应用程序的一个进程,因此JVM也有他自己的运行生命周期,也有自己的代码和数据空间. JDK JDK在Java的整个体系中充当一个生产加工 ...

  4. Istio技术与实践06:史上最全!Istio安装参数介绍

    一. CertManage Istio-1.0版本新加入的组件,利用ACME为Istio签发证书 Key Default Value Description certmanager.enabled T ...

  5. 图论篇3——最短路径 Dijkstra算法、Floyd算法

    最短路径 问题背景:地图上有很多个城市,已知各城市之间距离(或者是所需时间,后面都用距离了),一般问题无外乎就是以下几个: 从某城市到其余所有城市的最短距离[单源最短路径] 所有城市之间相互的最短距离 ...

  6. python-uiautomator2

    简单介绍 python-uiautomator2是一个自动化测试开源工具,仅支持Android平台的原生应用测试. 支持平台及语言 python-uiautomator2封装了谷歌自带的uiautom ...

  7. Mockito 学习资料

    Mockito 学习资料 网址 单元测试指南:Mockito https://blinkfox.github.io/2018/11/15/hou-duan/java/dan-yuan-ce-shi-z ...

  8. MySQL 多行数据合并 GROUP_CONCAT

    表结构及数据 DROP TABLE IF EXISTS `course`;CREATE TABLE `course` ( `name` varchar(255) CHARACTER SET utf8 ...

  9. Gamification vs. Game-Based Learning

    http://www.immersedgames.com/gamification-vs-game-based-learning/ With the growth in popularity of v ...

  10. LwIP应用开发笔记之八:LwIP无操作系统HTTP客户端

    前面我们实现了TCP服务器和客户端的简单应用,接下来我们实现一个基于TCP协议的应用协议,那就是HTTP超文本传输协议 1.HTTP协议简介 超文本传输协议(Hyper Text Transfer P ...