Python 写入训练日志文件并控制台输出解析


Posted in Python onAugust 13, 2019

1. 背景

在深度学习的任务中,通常需要比较长时间的训练,因此我们会选择离开电脑。笔者在跟踪模型表现,

观察模型accuracy 以及 loss 的时候,比较传统的方法是在控制台print输出或者直接使用tensorboard。

但如果是你需要远程观察模型表现,那一个时刻记录的log 文件就非常重要。

(如果你希望不在实验室,远程通过访问正在训练网络的服务器的Jupyter Notebook ,实时查看实验进度。请参考——远程连接服务器端Jupyter Notebook)

2. logging 函数

创建 .log 文件并将一些数据在控制台输出可以通过logging 函数实现。

废话不多,直接贴代码:一下函数可以在你想要保存日志文件的路径——output_dir下生成一个.log 文件,文件名以年.月.日.时.分命名,以免重复。

import logging
import time
import os
def log_creater(output_dir):
  if not os.path.exists(output_dir):
    os.makedirs(output_dir)
  log_name = '{}.log'.format(time.strftime('%Y-%m-%d-%H-%M'))
  final_log_file = os.path.join(output_dir,log_name)
  # creat a log
  log = logging.getLogger('train_log')
  log.setLevel(logging.DEBUG)

  # FileHandler
  file = logging.FileHandler(final_log_file)
  file.setLevel(logging.DEBUG)

  # StreamHandler
  stream = logging.StreamHandler()
  stream.setLevel(logging.DEBUG)

  # Formatter
  formatter = logging.Formatter(
    '[%(asctime)s][line: %(lineno)d] ==> %(message)s')

  # setFormatter
  file.setFormatter(formatter)
  stream.setFormatter(formatter)

  # addHandler
  log.addHandler(file)
  log.addHandler(stream)

  log.info('creating {}'.format(final_log_file))
  return log

3. 结果

保存后的日志文件差不多就是这样:

Python 写入训练日志文件并控制台输出解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python文档生成工具pydoc使用介绍
Jun 02 Python
Python实现股市信息下载的方法
Jun 15 Python
Python网站验证码识别
Jan 25 Python
离线安装Pyecharts的步骤以及依赖包流程
Apr 23 Python
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
python字符串常用方法
Jun 14 Python
Django代码性能优化与Pycharm Profile使用详解
Aug 26 Python
Django之使用celery和NGINX生成静态页面实现性能优化
Oct 08 Python
完美解决python针对hdfs上传和下载的问题
Jun 05 Python
OpenCV 之按位运算举例解析
Jun 19 Python
python中的垃圾回收(GC)机制
Sep 21 Python
Numpy实现卷积神经网络(CNN)的示例
Oct 09 Python
基于MATLAB和Python实现MFCC特征参数提取
Aug 13 #Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 #Python
Django项目中实现使用qq第三方登录功能
Aug 13 #Python
一篇文章搞定Python操作文件与目录
Aug 13 #Python
Python Django Cookie 简单用法解析
Aug 13 #Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 #Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
Aug 13 #Python
You might like
PHP JSON格式的中文显示问题解决方法
2015/04/09 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
2015/05/13 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
JavaScript对IE操作的经典代码(推荐)
2014/03/10 Javascript
JavaScript中使用ActiveXObject操作本地文件夹的方法
2014/03/28 Javascript
jquery 取子节点及当前节点属性值的方法
2014/08/24 Javascript
Perl Substr()函数及函数的应用
2015/12/16 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
jQuery实现自动输入email、时间和域名的方法
2016/08/24 Javascript
nodejs模块nodemailer基本使用-邮件发送示例(支持附件)
2017/03/28 NodeJs
微信小程序 ES6Promise.all批量上传文件实现代码
2017/04/14 Javascript
使用JavaScript实现表格编辑器(实例讲解)
2017/08/02 Javascript
JS和Canvas实现图片的预览压缩和上传功能
2018/03/30 Javascript
vue-cli2.0转3.0之项目搭建的详细步骤
2018/12/11 Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
2019/04/12 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
在vue中使用防抖函数组件操作
2020/07/26 Javascript
在vue-cli3中使用axios获取本地json操作
2020/07/30 Javascript
在Vue中使用Select选择器拼接label的操作
2020/10/22 Javascript
利用Python绘制MySQL数据图实现数据可视化
2015/03/30 Python
python操作ie登陆土豆网的方法
2015/05/09 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
Python常用编译器原理及特点解析
2020/03/23 Python
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
世界上最大的艺术和工艺用品商店:MisterArt.com
2018/07/13 全球购物
英国折扣零售连锁店:QD Stores
2018/12/08 全球购物
2014年六一儿童节演讲稿
2014/05/23 职场文书
乡领导班子四风问题对照检查材料
2014/09/25 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
2015小学语文教师个人工作总结
2015/05/20 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
vue使用Google Recaptcha验证的实现示例
2021/08/23 Vue.js