PHP前端开发

深度学习训练突然退出,提示“进程已结束,退出代码为 -1073741571”,该如何解决?

百变鹏仔 5天前 #Python
文章标签 该如何

进程异常退出,错误代码 -1073741571

在使用 pycharm 和 anaconda prompt 时,深度学习训练可能会突然结束,没有任何报错信息,也不会进行到预期的迭代上限。提示的信息为:"进程已结束,退出代码为 -1073741571 (0xc00000fd)”。

分析事件查看器中应用程序日志显示:

经过反复排查,发现问题代码段如下:

loss_list = torch.zeros(len(dataloader.dataset))

将 loss_list 初始化为 torch.zeros 会导致异常退出。修改为以下代码即可解决问题:

loss_list = np.zeros(len(dataloader.dataset))

如果收集的损失不需要梯度,则还可以进一步优化代码:

for j in range(batch_size):  loss_list[index[j]] = loss[j].item()