TensorFlow设置日志级别的几种方式小结


Posted in Python onFebruary 04, 2020

TensorFlow中的log共有INFO、WARN、ERROR、FATAL 4种级别。有以下几种设置方式。

1. 通过设置环境变量控制log级别

可以通过环境变量TF_CPP_MIN_LOG_LEVEL进行设置,TF_CPP_MIN_LOG_LEVEL的不同值的含义分别如下:

Level Level for Humans Level Description
0 DEBUG all messages are logged (Default)
1 INFO INFO messages are not printed
2 WARNING INFO and WARNING messages are not printed
3 ERROR INFO, WARNING, and ERROR messages are not printed

设置TF_CPP_MIN_LOG_LEVEL的值,屏蔽该级别以及更低级别的日志,如:设置为1,表示屏蔽自己级别的INFO和更低级别的DEBUG日志。

设置环境变量,有两种方式,一种是永久设置,一种临时性设置。

永久设置

修改环境变量:将export TF_CPP_MIN_LOG_LEVEL=1加入到Linux的 ~/.bashrc、~/.zshrc或/etc/profile配置文件中,其中加入到/etc/profile文件是对所有用户都有效。可以在配置文件中设置为1或者2,不建议设置为更高级别的3.

临时性设置

终端中输入export TF_CPP_MIN_LOG_LEVEL="1"

python代码实现方法

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = "1"

ps:os.environ是一个mapping,一系列的键、值对存储在该mapping中,系统环境信息全部存储在该mapping中。如果是print(os.environ['HOME'])这样输出信息,调用的是getenv("HOME")函数,如果环境变量被改变,将会调用putenv()函数进行修改。

python代码中一种错误的设置方法:

os.system("export TF_CPP_MIN_LOG_LEVEL=1") ? 错误用法

不能使用的原因 — 不能通过shell的子进程改变shell的环境变量 — 具体可以参考 stackoverflow alex的回答。

2.通过 tf.logging 模块进行设置 ? 推荐

python代码中可以添加如下部分代码进行设置。

import tensorflow as tf
tf.logging.set_verbosity(tf.logging.ERROR)

tf.logging.ERROR可以换成 {DEBUG, INFO, WARN, ERROR, FATAL} 中的任何一个。

这里有所不同,设置ERROR,将输出ERROR、FATAL级别日志。

代码测试:

def main(self): 
  tf.logging.set_verbosity(tf.logging.ERROR)
  tf.logging.debug("debug")
  tf.logging.info("info")
  tf.logging.warning("warning")
  tf.logging.error("error")
  tf.logging.fatal("fatal")
  
if __name__ == '__main__':
  tf.app.run()

运行上述代码,可以获得ERROR、FATAL级别日志。

TensorFlow设置日志级别的几种方式小结

以上这篇TensorFlow设置日志级别的几种方式小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python pickle模块用法实例分析
May 27 Python
python实现将英文单词表示的数字转换成阿拉伯数字的方法
Jul 02 Python
Python常见加密模块用法分析【MD5,sha,crypt模块】
May 24 Python
详解python中递归函数
Apr 16 Python
Django网络框架之HelloDjango项目创建教程
Jun 06 Python
python实现抠图给证件照换背景源码
Aug 20 Python
关于numpy.where()函数 返回值的解释
Dec 06 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧装饰器信号与槽详细使用方法与实例
Mar 06 Python
Python3 filecmp模块测试比较文件原理解析
Mar 23 Python
python实现凯撒密码、凯撒加解密算法
Jun 11 Python
Python实现自动整理文件的脚本
Dec 17 Python
python 高阶函数简单介绍
Feb 19 Python
Python 实现加密过的PDF文件转WORD格式
Feb 04 #Python
解决tensorflow打印tensor有省略号的问题
Feb 04 #Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 #Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 #Python
在TensorFlow中屏蔽warning的方式
Feb 04 #Python
Python和Anaconda和Pycharm安装教程图文详解
Feb 04 #Python
Python3.7黑帽编程之病毒篇(基础篇)
Feb 04 #Python
You might like
用 Composer构建自己的 PHP 框架之基础准备
2014/10/30 PHP
如何使用php脚本给html中引用的js和css路径打上版本号
2015/11/18 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
php实现基于PDO的预处理示例
2017/03/28 PHP
PHP实现字符串大小写转函数的功能实例
2019/02/06 PHP
php使用pecl方式安装扩展操作示例
2019/08/12 PHP
php进行md5加密简单实例方法
2019/09/19 PHP
JavaScript中的History历史对象
2008/01/16 Javascript
jquery 学习之二 属性(类)
2010/11/25 Javascript
JavaScript 基础篇之运算符、语句(二)
2012/04/07 Javascript
理解javascript正则表达式
2016/03/08 Javascript
Bootstrap每天必学之附加导航(Affix)插件
2016/04/25 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
jQuery联动日历的实例解析
2016/12/02 Javascript
详解vue2.0 transition 多个元素嵌套使用过渡
2017/06/19 Javascript
js字符限制(字符截取) 一个中文汉字算两个字符
2017/09/12 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
JS中封装axios来管控api的2种方式
2019/09/11 Javascript
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
python实现简单中文词频统计示例
2017/11/08 Python
Python 异步协程函数原理及实例详解
2019/11/13 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
线程的基本概念、线程的基本状态以及状态之间的关系
2012/10/26 面试题
八一建军节部队活动方案
2014/02/04 职场文书
出国留学担保书
2014/05/20 职场文书
迎新生标语大全
2014/10/06 职场文书
2014报到证办理个人委托书
2014/10/08 职场文书
离职报告格式
2014/11/04 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
质量保证书格式模板
2015/02/27 职场文书
学校开除通知书
2015/04/25 职场文书
教师节班会主持词
2015/07/06 职场文书
python中的getter与setter你了解吗
2022/03/24 Python
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript