RuntimeError: expected scalar type Long but found Float

本文探讨了在使用torch.arange生成张量时遇到的RuntimeError,如何通过理解数据类型转换解决了x1.mm(w)问题。作者介绍了将torch.arange设置为float类型以保持实验精度,并提到了torch.arange与torch.range的区别。
摘要由CSDN通过智能技术生成
 x1 = t.arange(0, 20).view(-1, 1)
 y1 = x1.mm(w) + b.expand_as(x1)

报错RuntimeError: expected scalar type Long but found Float

debug发现是x1.mm(w)的问题,尝试通过更改w的类型解决(w.long()),虽然不报错,但是数据要求float类型,更改后会影响实验结果;尝试更改x1的类型,查询后发现torch.arange输出的是long型,torch.range输出float型,但是后者已经弃用,通过更改torch.arange参数dtype=torch.float解决

x1 = t.arange(0, 20, dtype=t.float).view(-1, 1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值