cuda error:device-side assert triggered
1、根据上图中的bug,查找可得,embedding的num_embeddings 是要设置成你的字典的大小,但是要记住,一定是vocab_size + 1,而不是vocab_size,即要设置为字典大小+1。
bug 2 :cuda out of memory:
这个问题出现有很多原因:先贴一个最近遇到的
losses.append(loss.item)
使用上语句报显存过多的错。将上语句改为下语句则错误消失。
losses.append(loss.item())
原因:如果在累加损失时未将其转换为Python数字,则可能出现程序内存使用量增加的情况。这是因为上面表达式的右侧原本是一个Python浮点数,而它现在是一个零维张量。因此,总损失累加了张量和它们的梯度历史,这可能会产生很大的autograd 图,耗费内存和计算资源。