torch.nn中常用的损失函数及使用方法

1)**torch.nn.MSELoss():**使用均方差函数对损失值进行计算
定义类时不需要传入参数,调用的时候需要传入参数

import torch
from torch.autograd import Variable
x = Variable(torch.randn(100, 100))
y = Variable(torch.randn(100, 100))
loos_f = torch.nn.MSELoss()#定义
loss = loos_f(x, y)#调用

2)torch.nn.L1Loss()类:使用平均绝对误差对损失值进行计算
定义类时不需要传入参数,在使用时要传入两个维度一样的参数:

import torch
from torch.autograd import Variable
x = Variable(torch.randn(100, 100))
y = Variable(torch.randn(100, 100))
loos_f = torch.nn.L1Loss()
loss = loos_f(x,y)

3)torch.nn.CrossEntropyLoss().使用计算交叉嫡
定义类时不需要传递参数,使用实例时需要输入两个满足交叉嫡的计算条件的参数:

import torch
from torch.autograd import Variable
x = Variable(torch.randn(100, 100))
y = Variable(torch.LongTensor(3).random_(5))#3个0-5之间的随机数字
loos_f = torch.nn.CrossEntropyLoss()
loss = loos_f(x,y)

你可能感兴趣的:(pytorch)