torch.nn.MSELoss

*CLASS* torch.nn.MSELoss(size_average=None, reduce=None, reduction=mean)

torch.nn.functional.mse_loss(input, target, size_average=None, reduce=None, reduction=mean) → Tensor


参数

  • size_average: 默认为True, 计算一个batch中所有loss的均值;reduce为 False时,忽略这个参数;
  • reduce: 默认为True, 计算一个batch中所有loss的均值或者和;
    • reduce = False,size_average 参数失效,返回的 loss是向量,维度为 (batch_size, ) ;
    • reduce = True,size_average 参数失效,返回的 loss是标量;
      • size_average = True,返回 loss.mean();
      • size_average = False,返回 loss.sum();
  • reduction'none' | 'mean' | 'sum',默认均值;指定size_averagereduce参数就不使用reduction ,与之相反。

输入

"mse_cpu" not implemented for 'Int'

  • Input: (N,∗) where *∗ means, any number of additional dimensions;input.float()
  • Target: (N,∗) , same shape as the input;Target.float()

例子

loss = nn.MSELoss(reduce=False, size_average=False)
input = torch.randn(3, 5)
target = torch.randn(3, 5)
output = loss(input.float(), target.float())
print(output)

tensor([[1.2459e+01, 5.8741e-02, 1.8397e-01, 4.9688e-01, 7.3362e-02],
[8.0921e-01, 1.8580e+00, 4.5180e+00, 7.5342e-01, 4.1929e-01],
[2.6371e-02, 1.5204e+00, 1.5778e+00, 1.1634e+00, 9.5338e-03]])

loss = nn.MSELoss(reduce = True, size_average=True)
input = torch.randn(3, 5)
target = torch.randn(3, 5)
output = loss(input, target)
print(output)

tensor(1.2368)

参考

TORCH.NN
torch.nn.functional

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值