【发布时间】:2020-09-25 23:22:22
【问题描述】:
我正在尝试访问/保存日志文件,以绘制在训练我的 torchvision mask rcnn 模型时显示的损失和其他指标。
model = torchvision.models.detection.maskrcnn_resnet50_fpn(pretrained=True)
Epoch: [0] [0/4] eta: 0:01:11 lr: 0.000334 loss: 1.4949 (1.4949) loss_classifier: 0.4294 (0.4294) loss_box_reg: 0.3279 (0.3279) loss_mask: 0.5124 (0.5124) loss_objectness: 0.0564 (0.0564) loss_rpn_box_reg: 0.1689 (0.1689) time: 17.8587 data: 10.8542 max mem: 5687
据我所知,这些指标是由 metric_logger (engine.py) 生成的,我应该可以通过在我的 model.train() 中添加一个 custom_callback 参数来保存它们
model.train(custom_callbacks = callbacks)
for epoch in range(num_epochs):
print ('+++++++++++++++++++++++++++')
# train for one epoch, printing every 10 iterations
train_one_epoch(model, optimizer, data_loader, device, epoch, print_freq=10)
此时,除了显示没有要显示的指标的张量板页面外,没有任何工作。 只需将损失附加到列表中,我就会很高兴...
谢谢
【问题讨论】:
-
为什么你认为你“应该能够通过向我的 model.train() 添加 custom_callback arg 来保存它们”?
-
Hello Berriel :我读到通过将参数 custom_callback 传递给 model.train() 函数,pytorch 将返回不同损失的值。不幸的是,这种方法根本不起作用
-
您是否在 PyTorch 之上使用任何类型的框架?
.train()应该只接受mode:bool。试图弄清楚你在哪里读到的。很难提供任何指导,因为相关代码隐藏在您的自定义train_one_epoch中。
标签: python pytorch google-colaboratory torchvision