TypeError: sum() received an invalid combination of arguments - got (Tensor, axis=int)

1.问题描述:

运行torch.sum(torch.mul(users, pos_items), axis=1)时报错:

TypeError: sum() received an invalid combination of arguments - got (Tensor, axis=int), but expected one of:
 * (Tensor input)
 * (Tensor input, torch.dtype dtype)
      didn't match because some of the keywords were incorrect: axis
 * (Tensor input, tuple of ints dim, torch.dtype dtype, Tensor out)
 * (Tensor input, tuple of ints dim, bool keepdim, torch.dtype dtype, Tensor out)
 * (Tensor input, tuple of ints dim, bool keepdim, Tensor out)

其中,torch.mul函数的功能是两个维度相等的矩阵的对应位相乘,其中users和pos_items的大小都是:torch.Size([1024, 256])。

另外,torch.matmul是tensor的乘法,当输入是二维时和tensor.mm函数用法相同做普通的矩阵乘法,也能用作高维矩阵乘法。

2.解决方法

按照提示,axis关键字错误,经查,torch中用dim,或者直接把axis关键字去掉,即改成:

torch.sum(torch.mul(users, pos_items), dim=1)

或者

torch.sum(torch.mul(users, pos_items), 1)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值