赞
踩
今天在写pytorch代码的时候,报了这样的一个错误
CUDA error: device-side assert triggered
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
这个问题的解决只要在前面加上一个指定cuda部分的代码
torch.cuda.set_device(0)
然而问题未解决,最终发现这里是由于padding中出现了-100
此时这里也引出了chinese roberta与bert的一个区别,作为所有的bert、所有的nezha以及chinese roberta模型,后面的padding加上的都是0,而作为english padding模型,padding加上的内容为1,所以chinese roberta直接调用bert即可,目前pythonicforbert库中还尚未解决这一问题,等待着后续的优化使用
这里一个问题出现在,预训练的时候label可以出现-100的数值,但是输入的input不可以出现-100的数值,否则没法通过embedding的网络层
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。