<p><strong>2.0更新(10/8/19)</strong>
设置<code>TF_CPP_MIN_LOG_LEVEL</code>应该仍然有效(请参见下面的v0.12+更新),但当前有一个问题尚未解决(请参见<a href="https://github.com/tensorflow/tensorflow/issues/31870" rel="noreferrer">issue #31870</a>)。如果设置<code>TF_CPP_MIN_LOG_LEVEL</code>对您不起作用(再次,请参见下文),请尝试执行以下操作以设置日志级别:</p>
<pre class="lang-py prettyprint-override"><code>import tensorflow as tf
tf.get_logger().setLevel('INFO')
</code></pre>
<p>此外,请参阅<a href="https://www.tensorflow.org/api_docs/python/tf/autograph/set_verbosity" rel="noreferrer">^{<cd3>}</a>上的文档,该文档设置签名日志消息的详细程度-例如:</p>
<pre class="lang-py prettyprint-override"><code># Can also be set using the AUTOGRAPH_VERBOSITY environment variable
tf.autograph.set_verbosity(1)
</code></pre>
<p><strong>v0.12+更新(5/20/17),通过TF 2.0+:<strong></p>
<p>在TensorFlow 0.12+中,根据这个<a href="https://github.com/tensorflow/tensorflow/issues/1258" rel="noreferrer">issue</a>,您现在可以通过名为<code>TF_CPP_MIN_LOG_LEVEL</code>的环境变量控制日志记录;它默认为0(显示所有日志),但可以设置为<code>Level</code>列下的下列值之一。</p>
<pre class="lang-none prettyprint-override"><code> Level | Level for Humans | Level Description
-------|------------------|------------------------------------
0 | DEBUG | [Default] Print all messages
1 | INFO | Filter out INFO messages
2 | WARNING | Filter out INFO & WARNING messages
3 | ERROR | Filter out all messages
</code></pre>
<p>请参阅以下使用Python的通用操作系统示例:</p>
<pre class="lang-py prettyprint-override"><code>import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' # or any {'0', '1', '2'}
import tensorflow as tf
</code></pre>
<p>为了更彻底,还可以调用设置Python<a href="https://www.tensorflow.org/api_docs/python/tf/logging" rel="noreferrer">^{<cd6>}</a>模块的级别,该模块用于summary ops、tensorboard、各种估计器等</p>
<pre class="lang-py prettyprint-override"><code># append to lines above
tf.logging.set_verbosity(tf.logging.ERROR) # or any {DEBUG, INFO, WARN, ERROR, FATAL}
</code></pre>
<p>对于1.14,如果不按以下方式更改为使用v1 API,则将收到警告:</p>
<pre class="lang-py prettyprint-override"><code># append to lines above
tf.compat.v1.logging.set_verbosity(tf.compat.v1.logging.ERROR) # or any {DEBUG, INFO, WARN, ERROR, FATAL}
</code></pre>
<p/><hr/>
<strong>对于先前版本的TensorFlow或TF Learn测井(v0.11.x或更低版本):</strong>
<p>查看下面的页面以获取有关TensorFlow日志记录的信息;通过新的更新,您可以将日志记录详细程度设置为<code>DEBUG</code>、<code>INFO</code>、<code>WARN</code>、<code>ERROR</code>或<code>FATAL</code>。例如:</p>
<pre class="lang-py prettyprint-override"><code>tf.logging.set_verbosity(tf.logging.ERROR)
</code></pre>
<p>此外,该页面还可以浏览可用于TF学习模型的监视器。<a href="https://www.tensorflow.org/get_started/monitors" rel="noreferrer">Here is the page</a>。</p>
<p>不过,这并不会阻止所有日志记录(仅限于TF Learn)。我有两个解决方案:一个是“技术上正确的”解决方案(Linux),另一个涉及到重建TensorFlow。</p>
<pre class="lang-sh prettyprint-override"><code>script -c 'python [FILENAME].py' | grep -v 'I tensorflow/'
</code></pre>
<p>另一方面,请参见<a href="https://stackoverflow.com/questions/36331419/tensorflow-how-to-measure-how-much-gpu-memory-each-tensor-takes/36505898#36505898">this answer</a>,这涉及到修改源代码和重建TensorFlow。</p>