为了账号安全,请及时绑定邮箱和手机立即绑定

计算 2 个张量之间的均方误差存在困难

计算 2 个张量之间的均方误差存在困难

江户川乱折腾 2023-09-19 17:40:23
我正在尝试构建一个损失函数,它将计算两个相同大小的期限的均方误差。换句话说,我需要一个函数来计算矩阵 A 和矩阵 B 上每 2 个单元格(具有相同行和列)单元格的差异,对其进行平方并计算差异的平均值。据我了解 nn.MSELoss 应该做到这一点。当我将 2 个张量传递给 nn.MSELoss 时,我收到以下错误消息:RuntimeError: Boolean value of Tensor with more than one value is ambiguous这是我的代码nn.MSELoss(stack_3[0,:],stack_7[0,:])张量是相同形状的浮点数。stack_3.shape, stack_7.shape (torch.Size([6131, 784]), torch.Size([6131, 784]))
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

nn.MSELoss是一个可调用的类,而不是一个函数。您需要首先定义 的实例nn.MSELoss,然后才能调用它。或者您可以直接使用torch.nn.functional.mse_loss.

from torch import nn
criterion = nn.MSELoss()
loss = criterion(stack_3[0, :], stack_7[0, :])

或者

import torch.nn.functional as F
loss = F.mse_loss(stack_3[0, :], stack_7[0, :])


查看完整回答
反对 回复 2023-09-19
  • 1 回答
  • 0 关注
  • 136 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信