Бинарная ошибка по логиту в PyTorch
Когда на каждый пример приходится
одно число-логит, а метка -
ноль или один, удобен класс
BCEWithLogitsLoss.
Он сам переводит логит
в вероятность и сравнивает
её с меткой; сигмоиду перед
ошибкой ставить не нужно.
Зададим логит, метку как дробный тензор и выведем одно число ошибки:
import torch
import torch.nn as nn
logits = torch.tensor([0.5])
target = torch.tensor([1.0])
loss_fn = nn.BCEWithLogitsLoss()
print(loss_fn(logits, target).item())
# выведет 0.4740769863128662
Посчитайте ошибку для логита
[-0.2] и метки
[0.0] в виде
дробного тензора. Выведите
одно число.
Возьмите три логита
[1.0, -1.0, 0.0]
и метки [1.0, 0.0, 1.0].
Выведите среднюю ошибку
по примерам одним числом.
При логите 0.0 и
метке 1.0 выведите
ошибку. Затем при том же
логите и метке 0.0
выведите второе число.
Выведите два числа
в двух строках.