RuntimeError: cur_offset == offset ASSERT FAILED

在使用PyTorch 1.0框架和torch.nn.LSTM处理时间序列分类时,遇到反向传播过程中的RuntimeError。尝试了根据GitHub上的建议将网络权重类型从float改为double,但问题未解决。进一步排查发现,错误是由导入的数据类型(float64/double)引起,转换为float后,程序恢复正常。对于这种现象,作者感到困惑并认为这可能是个潜在的PyTorch Bug或代码设计问题。
摘要由CSDN通过智能技术生成

基于Pytorch(version=1.0)框架,利用torch.nn.LSTM模块构建对于时间序列数据的分类器。

训练过程中,当网络进行反向传播时,程序曝出异常

Traceback (most recent call last):
  File "train_version1.py", line 236, in <module>
    loss.backward()
  File "D:\ProgramFiles\Anaconda\lib\site-packages\torch\tensor.py", line 102, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph)
  File "D:\ProgramFiles\Anaconda\lib\site-packages\torch\autograd\__init__.py", line 90, in backward
    allow_unreachable=True)  # allow_unreachable flag
RuntimeError: cur_offset == offset ASSERT FAILED at ..\aten\src\ATen\native\cudnn\RNN.cpp:471, please report a bug to PyTorch. cur_offset = 1860; offset = 930

刚看到这个异常我是懵的,因为,显然错误出现在反向传播这一块,看起来并不是代码逻辑出了问题

经过一番查阅,在GitHub上有一位东京小哥的帖子引起了我的注意--

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值