Python训练模型时如何将实验日志保存在一个文件中

Python训练模型时如何将实验日志保存在一个文件中


问题描述

在训练模型时,想把终端打印出来的结果全部保存在一个实验日志中,方便以后查看。(如有更简便的方法请大家赐教,抱拳感谢!)

解决办法

1.首先创建一个实验结果的保存路径

output_dir = './ResultData'
os.makedirs(output_dir, exist_ok=True)

2.新建一个空的文件

timeslot = int(time.time())
dt = time.strftime("%Y%m%d%H%M%S", time.localtime(timeslot))
file = open(f'./ResultData/Baseline_01_exp{args.seed}_{args.dataset}_noniid[{args.degree_noniid}]_labelrate[{args.shot}]_FedavgFixmatch_{dt}_log.txt','w')

3.在print的时候,将其写入文件中(只写入文件中,终端不会打印结果),例如:

print('hello world',file=file)

文件中就会保存下来这句话,如图:
在这里插入图片描述
4.如果想在终端看到print的结果,把file=file去掉即可。

print('hello world')

在这里插入图片描述
以上是本人的笨办法,嘻嘻~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要提取Python模型的训练集loss,你需要在训练代码添加代码来记录每个训练步骤的loss。具体来说,你可以使用TensorFlow或PyTorch等框架提供的内置功能来记录每个训练步骤的loss。 在TensorFlow,你可以使用`tf.keras.callbacks.TensorBoard`回调来记录和可视化训练过程的loss。在PyTorch,你可以使用`torch.utils.tensorboard.SummaryWriter`类来记录和可视化训练过程的loss。 一旦你记录了每个训练步骤的loss,你可以通过简单的代码将其提取出来并保存文件。以下是一个示例代码,用于从TensorFlow模型的训练日志提取loss并将其保存文件: ```python import tensorflow as tf # 加载TensorBoard的日志文件 log_dir = '/path/to/tensorboard/logs' train_log_dir = log_dir + '/train' train_summary_writer = tf.summary.create_file_writer(train_log_dir) # 定义TensorBoard回调 tensorboard_callback = tf.keras.callbacks.TensorBoard( log_dir=log_dir, update_freq='batch', histogram_freq=1, write_graph=True, write_images=True, profile_batch=0, ) # 训练模型并记录每个训练步骤的loss model.fit( x_train, y_train, epochs=10, batch_size=32, callbacks=[tensorboard_callback] ) # 从TensorBoard日志提取loss并保存文件 with train_summary_writer.as_default(): for step, summary in enumerate(tf.compat.v1.summary.all_v2_summary_ops()): if 'loss' in summary.tag: tf.summary.scalar('loss', summary.simple_value, step=step) ``` 这将从TensorBoard的训练日志提取所有带有"loss"标签的摘要,并将其保存文件。你可以根据需要修改此代码以满足你的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甜度超标°

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值