nn.MSELoss()
该函数叫做平均平方误差,简称均方误差。它的英文名是mean squared error,该损失函数是挨个元素计算的。该元素的公式如下:
其连个输入参数,第一个参数是输出的参数,第二个参数是与之对比的参数。
loss= torch.nn.MSELoss(reduce=True, size_average=True)
1、 如果reduce = False,返回向量形式的 loss
2、如果reduce = True, 返回标量形式的loss
3、如果size_average = True,返回 loss.mean();
4、如果 size_average = False,返回 loss.sum()
默认情况下:两个参数都为True.
其代码如下: 文章来源:https://www.toymoban.com/news/detail-523947.html
import torch
from torch import nn
loss = nn.MSELoss()
input = torch.randn(3, 5, requires_grad=True)
target = torch.randn(3, 5)
output = loss(input, target)
output.backward() # 反向传播
print('Loss: ',output.item())
# Loss: 1.120721459388733
import torch
from torch import nn
loss = nn.MSELoss(size_average=False) # 以向量的形式返回
input = torch.randn(3, 5,requires_grad=True)
target = torch.randn(3, 5)
output = loss(input, target)
output.backward() # 反向传播
print('Loss: ',output)
# Loss: tensor(35.4082, grad_fn=<MseLossBackward>)
文章来源地址https://www.toymoban.com/news/detail-523947.html
到了这里,关于深度学习中常用的损失函数(一) —— MSELoss()的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!