赞
踩
训练模型时候,训练日志在控制台展示,关闭控制台后日志会消失。这时,我们需要将控制台中的训练日志信息输出到一个指定文件中,方便我们随时查看。
logging 是Python中非常强大且灵活的库,用于记录和跟踪应用程序运行时发生的事件。
在Python中,使用 logging 模块可以写入日志信息到指定文件。
import logging import warnings # 忽略所有 UserWarning 警告 warnings.filterwarnings("ignore", category=UserWarning) # 1、设置全局的日志格式和级别 logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s - %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.INFO) # 2、获取logger (给日志器起个名字 "__name__") logger = logging.getLogger(__name__)# __name__内置变量模块名称,轻松地识别出哪个模块产生了哪些日志消息(主程序模块) # 3、创建文件处理器,指定日志文件和日志级别(局部)---文件输出FileHandle(输出到指定文件) file_handler = logging.FileHandler('application.log') #指定日志文件名application.log,默认在当前目录下创建 file_handler.setLevel(logging.INFO) # 设置日志级别(只输出对应级别INFO的日志信息) # 设置日志格式 file_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(name)s - %(message)s', '%m/%d/%Y %H:%M:%S')) # 4、添加文件处理器到logger logger.addHandler(file_handler) # 训练模型的代码 epoch = 7 # 记录日志信息 logger.info("Get better performance at epoch {}".format(epoch)) # 在主类中编写日志代码 # 判断当前程序是否为主程序,确保 main() 函数只在直接运行该Python文件时执行,如果文件被其他模块导入,则不执行 main() # 主程序内置变量 __name__ if __name__ == "__main__": main()
StreamHandler
(控制台输出)和FileHandle
(文件输出)debug,info,warning,error,critical
。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。