torch.nn.functional.nll_loss
-
torch.nn.functional.nll_loss(input, target, weight=None, size_average=None, ignore_index=-100, reduce=None, reduction='mean')[исходный код] -
Вычисляет функцию потерь отрицательного логарифмического правдоподобия.
Подробные сведения см. в
NLLLoss.- Параметры:
-
-
input (Tensor) – , где
C = number of classes, или для двумерной функции потерь, или , где , для K-мерной функции потерь. Ожидается, чтоinputсодержит логарифмы вероятностей. - target (Tensor) – , где каждое значение равно , или , где , для K-мерной функции потерь.
-
weight (Tensor, необязательный) – Вес для ручного масштабирования, задаваемый каждому классу. Если указан, должен быть тензором размера
C -
size_average (bool, необязательный) – Устарел (см.
reduction). -
ignore_index (int, необязательный) – Задает целевое значение, которое игнорируется и не влияет на градиент входных данных. Если
size_averageравноTrue, функция потерь усредняется по целевым значениям, которые не игнорируются. Значение по умолчанию: -100 -
reduce (bool, необязательный) – Устарел (см.
reduction). -
reduction (str, необязательный) – Задает способ сведения выходных данных:
'none'|'mean'|'sum'.'none': сведение не выполняется,'mean': сумма выходных данных делится на количество элементов в них,'sum': выходные данные суммируются. Примечание:size_averageиreduceпостепенно выводятся из употребления; пока что указание любого из этих аргументов переопределитreduction. Значение по умолчанию:'mean'
-
input (Tensor) – , где
- Тип возвращаемого значения:
Пример:
>>> # input is of size N x C = 3 x 5 >>> input = torch.randn(3, 5, requires_grad=True) >>> # each element in target has to have 0 <= value < C >>> target = torch.tensor([1, 0, 4]) >>> output = F.nll_loss(F.log_softmax(input, dim=1), target) >>> output.backward()
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nn.functional.nll_loss.html