pytorch 报告bug: Assertion idx_dim >= 0 && idx_dim < index_size && “index out of bounds“

这个bug一般是索引出现了问题,索引越界。
但是debug的时候由于模型在cuda上,所以当出现问题时,cuda将之前所有在cuda的tensor全部丢弃,无法查看具体时哪里的问题。报错的那一行代码很有可能不是有问题的地方,存在问题的可能是之前的变量。

  • 这种情况建议在cpu上进行调试,用.cpu代替.cuda。定位出现问题的地方和变量的形状。
  • 或者使用assert命令,对变量维度进行判断,但是此前需要明确是哪个变量出现的问题。

你可能感兴趣的:(pytorch,bug,深度学习)