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程序中访问Java类的简单示例
Apr 20 Python
Django基于ORM操作数据库的方法详解
Mar 27 Python
Python使用字典的嵌套功能详解
Feb 27 Python
python图像和办公文档处理总结
May 28 Python
Django 缓存配置Redis使用详解
Jul 23 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
Feb 12 Python
Python object类中的特殊方法代码讲解
Mar 06 Python
Keras使用ImageNet上预训练的模型方式
May 23 Python
深入了解Python装饰器的高级用法
Aug 13 Python
python实现画图工具
Aug 27 Python
Django mysqlclient安装和使用详解
Sep 17 Python
人工智能深度学习OpenAI baselines的使用方法
May 20 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
虫族 Zerg 历史背景
2020/03/14 星际争霸
ADODB的数据库封包程序库
2006/12/31 PHP
不重新编译PHP为php增加openssl模块的方法
2011/06/14 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
Javascript中的变量使用说明
2010/05/18 Javascript
range 标准化之获取
2011/08/28 Javascript
js事件(Event)知识整理
2012/10/11 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
2013/04/11 Javascript
jquery统计用户选中的复选框的个数
2014/06/06 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
2015/12/08 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
Bootstrap字体图标无法正常显示的解决方法
2016/10/08 Javascript
详解Vuex中mapState的具体用法
2017/09/28 Javascript
Vue2.0 实现歌手列表滚动及右侧快速入口功能
2018/08/08 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
vue-cli2.0转3.0之项目搭建的详细步骤
2018/12/11 Javascript
ES6 如何改变JS内置行为的代理与反射
2019/02/11 Javascript
JS大坑之19位数的Number型精度丢失问题详解
2019/04/22 Javascript
学习python之编写简单简单连接数据库并执行查询操作
2016/02/27 Python
Python进程间通信之共享内存详解
2017/10/30 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
2019/07/11 Python
python实现百度OCR图片识别过程解析
2020/01/17 Python
Windows下pycharm安装第三方库失败(通用解决方案)
2020/09/17 Python
windeln官方海外旗舰店:德淘超人气母婴超市
2017/12/15 全球购物
麦当劳印度网上订餐:McDelivery
2020/03/16 全球购物
啤酒销售实习自我鉴定
2013/09/24 职场文书
委托培训协议书
2014/11/17 职场文书
社区重阳节活动总结
2015/03/24 职场文书
2015年房地产个人工作总结
2015/05/26 职场文书
学困生帮扶工作总结
2015/08/13 职场文书
趣味运动会广播稿
2015/08/19 职场文书
2016年暑假学生家长评语
2015/12/01 职场文书
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫