记得上次遇到过一次该错误,当时没有总结,今天又遇到了,总结一下!
问题:
cuda runtime error (59) : device-side assert triggered at /pytorch/aten/src/THC/generated/../generic/T HCTensorMathPointwise.cu:265
解决方案:
很多是由于label中存在-1才报该错误。
虽然我不是这个原因,但也类似了。
报错是在计算loss的时候,受上面回答的启发,就想是不是label里哪里不对应?
发现:
- gt label一共有一千类,而网络的类别数忘记改了,还是200多类,这是第一个不对应;
- 后面的l2_loss那里,加载的checkpoint里面size是(261,),而网络中是(1000,),这是第二个不对应。
总之,报这个错误一般是计算损失函数时,输入进去的参数有问题,比如-1,比如不对应等。