• 文档 >
  • 指标 >
  • torcheval.metrics.WindowedWeightedCalibration
快捷方式

torcheval.metrics.WindowedWeightedCalibration

class torcheval.metrics.WindowedWeightedCalibration(*, num_tasks: int = 1, max_num_updates: int = 100, enable_lifetime: bool = True, device: device | None = None)

计算加权校准指标。当未提供权重时,它计算非加权校准。其函数版本为 torcheval.metrics.functional.weighted_calibration()

加权校准 = 输入 * 权重之和 / 目标 * 权重之和

参数:
  • num_tasks (int) – 需要加权校准计算的任务数量。默认值为 1。

  • max_num_updates (int) – 可以容纳更新次数的最大窗口大小。

  • enable_lifetime (bool) – 一个布尔指示器,指示是否计算生命周期值。

引发:

ValueError – 如果权重值既不是 float 也不是 int 也不是与输入张量大小匹配的 torch.Tensor

示例

>>> import torch
>>> from torcheval.metrics import WindowedWeightedCalibration
>>> metric = WindowedWeightedCalibration(max_num_updates=2, enable_lifetime=False)
>>> metric.update(torch.tensor([0.8, 0.4]),torch.tensor([1, 1]))
>>> metric.update(torch.tensor([0.3, 0.8]),torch.tensor([0, 0]))
>>> metric.update(torch.tensor([0.7, 0.6]),torch.tensor([1, 0]))
>>> metric.compute()
tensor([2.4], dtype=torch.float64)

>>> metric = WindowedWeightedCalibration(max_num_updates=2, enable_lifetime=True)
>>> metric.update(torch.tensor([0.8, 0.4]),torch.tensor([1, 1]))
>>> metric.update(torch.tensor([0.3, 0.8]),torch.tensor([0, 0]))
>>> metric.update(torch.tensor([0.7, 0.6]),torch.tensor([1, 0]))
>>> metric.compute()
(
tensor([1.2], dtype=torch.float64)
tensor([2.4], dtype=torch.float64)
)

>>> metric = WindowedWeightedCalibration(num_tasks=2)
>>> metric.update(torch.tensor([[0.8, 0.4], [0.8, 0.7]]),torch.tensor([[1, 1], [0, 1]]),)
>>> metric.compute()
tensor([0.6000, 1.5000], dtype=torch.float64)
__init__(*, num_tasks: int = 1, max_num_updates: int = 100, enable_lifetime: bool = True, device: device | None = None) None

初始化指标对象及其内部状态。

使用 self._add_state() 初始化指标类的状态变量。状态变量应为 torch.Tensortorch.Tensor 列表、以 torch.Tensor 作为值的字典或 torch.Tensor 的 deque。

方法

__init__(*[, num_tasks, max_num_updates, ...])

初始化指标对象及其内部状态。

compute()

返回加权校准。

load_state_dict(state_dict[, strict])

从 state_dict 加载指标状态变量。

merge_state(metrics)

将指标状态与其来自其他指标实例的对应部分合并。

reset()

将指标状态变量重置为其默认值。

state_dict()

在 state_dict 中保存指标状态变量。

to(device, *args, **kwargs)

将指标状态变量中的张量移动到设备上。

update(input, target[, weight])

使用加权输入的总和和加权标签的总和更新指标状态。

属性

device

Metric.to() 的最后一个输入设备。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取适合初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源