解决 torch.nn.utils.rnn.pack_padded_sequence(input, length, batch_first=True) length should be sort的问题

torch.nn.utils.rnn.pack_padded_sequence(input, length, batch_first=True) length should be sort

一开始我就去torch的官网:https://pytorch.org/docs/stable/generated/torch.nn.utils.rnn.pack_padded_sequence.html

torch.nn.utils.rnn.pack_padded_sequence(输入,长度,batch_first =假,enforce_sorted =真)

此函数接受至少具有二维的任何输入。您可以将其应用于包装标签,并与它们一起使用RNN的输出直接计算损失。可以PackedSequence通过访问对象的.data属性从对象中检索张量。

参数:

输入(Tensor)–填充可变长度序列的批处理
lengths(张量或list(int))–每个批处理元素的序列长度列表(如果作为张量提供,则必须在CPU上)。

batch_first(bool,可选)–如果为True,则输入应采用 格式。B x T x *

force_sorted(bool,可选)–如果为True,则输入应包含按长度降序排列的序列。如果为
False,则输入将无条件排序。默认值:True。

然而我用了enforce_sorted =False,代码还一直报错。 torch.nn.utils.rnn.pack_padded_sequence()got an unexpected keyword argument:enforce_sorted
我看了我的torch版本,重点来了。。。。。

torch.__version__  =1.0.1

官方解释

在torch=1.1.0版本之前是没有enforce_sorted 这个参数的,所以下面,毫无疑问,torch重新安装,与此同时,我的环境还有tensorflow,版本为2.4.1,匹配的torch版本可以是1.8.0

官方没有torch的1.8.0的对应的torchvision版本,下面我就安装了torch=1.7.0版本的

pip   uninstall  torch   卸载以前1.0.1版本的torch
pip install torch==1.7.1 torchvision==0.8.2 -f https://download.pytorch.org/whl/torch_stable.html 

安装成功!!! 大功告成。
接下来就可以愉快滴跑代码了O(∩_∩)O哈哈~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值