如何解决PytorchLightning 在 epoch 的所有步骤完成之前调用 training_epoch_end总是大约 0.25 步长
我是 pytorch_lightning 的新手,我的训练进行得很顺利,但由于某种原因,training_epoch_end 在一些步骤之后而不是在 epoch 结束时被调用。
这些是我的输出:
GPU 可用:错误,已使用:错误
TPU 可用:无,使用:0 个 TPU 内核
验证健全性检查:0%| | 0/2 [00:00,?it/s]
|姓名 |类型 |参数
纪元 0:0%| | 0/13 [00:00,?it/s]
纪元 0:23%|██▎ | 3/13 [01:38
//training_epoch_end:outputs = [{'loss': tensor(6.4593)},{'loss': tensor(5.7653)},{'loss': tensor(1.9642)}]
验证:0it [00:00,?it/s]
验证:0%| | 0/10 [00:00,?it/s]
纪元 0:38%|███▊ | 5/13 [01:48
时代 0:46%|████▌ | 6/13 [01:59
纪元 0:54%|█████▍ | 7/13 [02:10
纪元 0:62%|██████▏ | 8/13 [02:20
时代 0:69%|██████▉ | 9/13 [02:31
时代 0:77%|███████▋ | 10/13 [02:42
纪元 0:85%|████████▍ | 11/13 [02:52
纪元0:92%|█████████▏| 12/13 [03:04
纪元0:100%|██████████| 13/13 [03:15
纪元0:100%|██████████| 13/13 [03:16
时期 1:23%|██▎ | 3/13 [01:42
//training_epoch_end:outputs = [{'loss': tensor(2.6766)},{'loss': tensor(2.3010)},{'loss': tensor(1.1722)}]
时期 1:31%|███ | 4/13 [01:48
验证:0it [00:00,?it/s]
时期 1:38%|███▊ | 5/13 [02:02
已完成 6.8 MiB/327.9 MiB (48.7 KiB/s),剩余 2 个文件
时期 1:100%|██████████| 13/13 [03:48
时代 2:23%|██▎ | 3/13 [01:44
//training_epoch_end:outputs = [{'loss': tensor(1.2504)},{'loss': tensor(1.4905)},{'loss': tensor(1.4158)}]
时代 2:31%|███ | 4/13 [01:49
验证:0it [00:00,?it/s]
时代 2:100%|██████████| 13/13 [03:50
时期 3:23%|██▎ | 3/13 [01:43
training_epoch_end: 3 输出 = [{'loss': tensor(0.6632)},{'loss': tensor(0.9215)},{'loss': tensor(1.1396)}]
时代 3:31%|███ | 4/13 [01:49
验证:0it [00:00,?it/s]
有人知道为什么会这样吗?
worker 或 gpus 的数量不影响订单。
谢谢!!!
解决方法
好吧,那完全是我的错!
我对 epoch 0..13 的打印输出感到困惑,不明白其中只有三个是训练,其余是验证。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。