torcheval.metrics.functional.binary_normalized_entropy¶
- torcheval.metrics.functional.binary_normalized_entropy(input: Tensor, target: Tensor, *, weight: Tensor | None = None, num_tasks: int = 1, from_logits: bool = False) Tensor ¶
计算预测输入和真实二元目标之间的归一化二元交叉熵。其类版本为
torcheval.metrics.binary_normalized_entropy
- 参数:
input (Tensor) – 预测的未归一化分数(通常称为 logits)或二元类概率(num_tasks, num_samples)。
target (Tensor) – 真实二元类索引(num_tasks, num_samples)。
weight (Tensor) – 可选。手动重新缩放权重以匹配输入张量形状(num_tasks, num_samples)。
num_tasks (int) – 需要计算 BinaryNormalizedEntropy 的任务数量。默认值为 1。
from_logit (bool) – 一个布尔指示符,表示预测值 y_pred 是一个浮点型 logit 值(即,当 from_logits=True 时值为 [-inf, inf])还是一个概率值(即,当 from_logits=False 时值为 [0., 1.])默认值为 False。
示例
>>> import torch >>> from torcheval.metrics.functional import binary_normalized_entropy >>> input = torch.tensor([0.2, 0.3]) >>> target = torch.tensor([1.0, 0.0]) >>> weight = None >>> binary_normalized_entropy(input, target, weight, from_logits=False) tensor(1.4183, dtype=torch.float64) >>> input = torch.tensor([0.2, 0.3]) >>> target = torch.tensor([1.0, 0.0]) >>> weight = torch.tensor([5.0, 1.0]) >>> binary_normalized_entropy(input, target, weight, from_logits=False) tensor(3.1087, dtype=torch.float64) >>> input = torch.tensor([-1.3863, -0.8473]) >>> target = torch.tensor([1.0, 0.0]) >>> weight = None >>> binary_normalized_entropy(input, target, weight, from_logits=True) tensor(1.4183, dtype=torch.float64) >>> input = torch.tensor([[0.2, 0.3], [0.5, 0.1]]) >>> target = torch.tensor([[1.0, 0.0], [0.0, 1.0]]) >>> weight = None >>> binary_normalized_entropy(input, target, weight, from_logits=True) tensor([1.4183, 2.1610], dtype=torch.float64)