【python报错】CUDA error: device-side assert triggered

在使用spert模型做实体关系联合抽取时遇到报错CUDA error: device-side assert triggered,如下图所示,经查得知有可能是因为数据标签的下标溢出。

一开始不知道怎么排查哪个样本出问题,因为数据经过shuffle,分完batch后样本是随机的。print了半天也没找到,师兄说了一句,把shuffle设为false不就行了,tnnd,一语惊醒梦中人。

data_loader = DataLoader(dataset, batch_size=self._args.train_batch_size, 
                         shuffle=False, drop_last=True, 
                         num_workers=self._args.sampling_processes, 
                         collate_fn=sampling.collate_fn_padding)

把shuffle改成false,batch-size改成1,最终找到第184个样本的实体。

{
    "type": "SYMBOL",
    "start": 39,
    "end": 164
}

应该是实体长度太长了导致的,把这个样本直接删掉,跑通!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值