博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ZeroDivisionError: integer division or modulo by zero解决记录
阅读量:3972 次
发布时间:2019-05-24

本文共 1287 字,大约阅读时间需要 4 分钟。

运行代码时,出现ZeroDivisionError: integer division or modulo by zero问题,具体如下:

Traceback (most recent call last):  File "./tools/train_net.py", line 51, in 
launch( File "./fastreid/engine/launch.py", line 71, in launch main_func(*args) File "./tools/train_net.py", line 45, in main return trainer.train() File "./fastreid/engine/defaults.py", line 364, in train super().train(self.start_epoch, self.max_epoch, self.iters_per_epoch) File "./fastreid/engine/train_loop.py", line 147, in train self.after_epoch() File "./fastreid/engine/train_loop.py", line 181, in after_epoch h.after_epoch() File "./fastreid/engine/hooks.py", line 261, in after_epoch self._scheduler["lr_sched"].step() File "/home/camila/.local/lib/python3.8/site-packages/torch/optim/lr_scheduler.py", line 154, in step values = self.get_lr() File "/home/camila/.local/lib/python3.8/site-packages/torch/optim/lr_scheduler.py", line 513, in get_lr elif (self.last_epoch - 1 - self.T_max) % (2 * self.T_max) == 0:ZeroDivisionError: integer division or modulo by zero

主要原因:

主要是数据量比较小,参数设置epoch_size=10,导致计算得到的运行轮数epoch_size小于10,从而epoch_size // 10结果为0

解决方案:

把参数设置的.yml文件中, 每次迭代输出10次信息更改成1,即epoch_size=10更改为epoch_size=1。成功解决ZeroDivisionError: integer division or modulo by zero问题,特此记录!!!

转载地址:http://uetki.baihongyu.com/

你可能感兴趣的文章
struct inode 和 struct file
查看>>
mknod
查看>>
模板匹配函数cvMatchTemplate中的…
查看>>
模板匹配函数cvMatchTemplate中的…
查看>>
模板匹配函数cvMatchTemplate中的…
查看>>
C语言 链表操作
查看>>
C语言 链表操作
查看>>
深入探讨C++中的引用
查看>>
深入探讨C++中的引用
查看>>
assert用法
查看>>
assert用法
查看>>
堆与栈有什么区别?
查看>>
堆与栈有什么区别?
查看>>
操作系统:进程/线程同步的方式和…
查看>>
操作系统:进程/线程同步的方式和…
查看>>
Makefile的编写
查看>>
Makefile的编写
查看>>
C语言常用算法
查看>>
Linux设备驱动调试技术 2
查看>>
Linux设备驱动调试技术 3
查看>>