Expected isFloatingType(grads[i].type().scalarType()) to be true, but got false.

Posted 我想月薪过万

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Expected isFloatingType(grads[i].type().scalarType()) to be true, but got false.相关的知识,希望对你有一定的参考价值。

错误原因

在进行 张量 梯度求解时,传入数据类型不对

解决方法

指定传入张量类型为 float 类型即可

错误代码示例

import torch

# 第一步:创建 tensor
x = torch.ones(2,2,requires_grad=True)
print(x)

# 第二步:对 tensor 做处理
y = x**2
print(y)

# 第三步:求梯度
y.backward(torch.tensor([[3,2],[2,2]]))
print(x.grad)

正确代码示例

import torch

# 第一步:创建 tensor
x = torch.ones(2,2,requires_grad=True)
print(x)

# 第二步:对 tensor 做处理
y = x**2
print(y)

# 第三步:求梯度
y.backward(torch.tensor([[3,2],[2,2]],dtype=float)) # 这里加了一个类型
print(x.grad)

以上是关于Expected isFloatingType(grads[i].type().scalarType()) to be true, but got false.的主要内容,如果未能解决你的问题,请参考以下文章

Grails 中的测试服务产生 'org.junit.ComparisonFailure: expected:<An[a]nymous> but was:<An[o]nymous&g

C语言出现expected identifier or '('是啥意思?

CORE EF The expected type was 'System.String' but the actual value was of type 'System.G

如何解决“RSpec::Expectations::ExpectationNotMetError: expected”错误?

机器学习报错解决2——ValueError: too many values to unpack (expected 3)

Incorrect column count: expected 1, actual 5,JdbcTemplate queryForList 出错