【问题标题】:How to remove the prefix printed out by tf.logging.info如何删除 tf.logging.info 打印出的前缀
【发布时间】:2019-09-03 10:21:18
【问题描述】:

在 TensorFlow 中打印日志行是通过 tf.logging 中的函数完成的,例如 tf.logging.info、tf.logging.log 等。

import tensorflow as tf;

tf.logging.set_verbosity(tf.logging.INFO);
tf.logging.info(tf.__version__);

但是,在 Google Colab 上打印时,在打印值之前有一个真正的长前缀:

I0903 10:16:46.097078 140433498875776 <ipython-input-9-a435f70e3dca>:22] 1.14.0

如何更改 tf.logging 以省略该前缀?它很长而且没有必要。即使在终端中直接使用python3 运行代码,仍然有一个较短的前缀(终端中的版本是 1.12.0):

INFO:tensorflow: 1.12.0

我也想去掉这个短前缀。

【问题讨论】:

  • 乍一看我似乎无法弄清楚这种奇怪的行为,你能告诉我from tensorflow.python.util.tf_export import TENSORFLOW_API_NAME 的结果是什么(常量的值 - 应该是“tensorflow”)吗?更令人困惑的是,根本没有打印出INFO,而且格式也不一样。会不会是 Jupyter(或者你运行它的任何东西)把事情搞砸了(但 tensorflow 应该防止这种情况发生)?是否有机会获得可运行的示例?
  • 不是 jupyter,那个长前缀在 Google Colab colab.research.google.com
  • 嗯,是的...... Google Colab 通常在 Jupyter 笔记本中运行 Python 脚本(ipynb 扩展名)。就像我说的那样,除非您向我提供一个可运行的示例,否则我无法重现您的错误,因为您的脚本会按预期从 Google Colab 笔记本中打印 INFO:tensorflow:1.14.0
  • @KacperFloriański 我之前确实遇到过这个问题,但现在很短:i.imgur.com/UpvCui3.png
  • @KacperFloriański 无论如何,是否可以删除前缀

标签: python tensorflow logging prefix verbosity


【解决方案1】:

我终于找到了tf.logging.*函数无法去掉前缀的答案。它是在库的 C/C++ 级别完成的,无法删除。

里面写着:https://github.com/tensorflow/tensorflow/issues/12537

【讨论】:

  • 只要你够勇敢,总有办法做任何事
猜你喜欢
  • 2017-03-13
  • 1970-01-01
  • 1970-01-01
  • 2017-05-25
  • 2021-07-08
  • 2019-04-09
  • 1970-01-01
  • 2011-04-27
  • 2022-11-16
相关资源
最近更新 更多