CalibrationCurve

class hybrid_learning.concepts.train_eval.kpis.aggregating_kpis.CalibrationCurve(n_bins=10, threshold=0.5, for_neg_class=False)[source]

Bases: AggregatingKpi

Calibration Curve: Shows the difference between true positive rate and the average predicted confidence over n_bins. Uses static binning.

Parameters
  • n_bins (int) – number of bins

  • threshold (float) – Positive class threshold for ground truth

  • for_neg_class (bool) – If True, cc is plotted for the negative class instead of the positive

Public Data Attributes:

Inherited from : py: class:Module

dump_patches

This allows better BC support for load_state_dict().

T_destination

alias of TypeVar('T_destination', bound=Mapping[str, Tensor])

Public Methods:

update(outputs, labels)

Called every batch.

reset()

Called once at the beginning of a new epoch.

value()

Shall return the aggregated metric value as a scalar.

Inherited from : py: class:AggregatingKpi

update(outputs, labels)

Called every batch.

reset()

Called once at the beginning of a new epoch.

value()

Shall return the aggregated metric value as a scalar.

value_and_reset()

Shorthand for subsequent calls to value and to reset.

forward(outputs, labels)

Calculate KPI without gradient.

Inherited from : py: class:Module

forward(outputs, labels)

Calculate KPI without gradient.

register_buffer(name, tensor[, persistent])

Adds a buffer to the module.

register_parameter(name, param)

Adds a parameter to the module.

add_module(name, module)

Adds a child module to the current module.

get_submodule(target)

Returns the submodule given by target if it exists, otherwise throws an error.

get_parameter(target)

Returns the parameter given by target if it exists, otherwise throws an error.

get_buffer(target)

Returns the buffer given by target if it exists, otherwise throws an error.

apply(fn)

Applies fn recursively to every submodule (as returned by .children()) as well as self.

cuda([device])

Moves all model parameters and buffers to the GPU.

xpu([device])

Moves all model parameters and buffers to the XPU.

cpu()

Moves all model parameters and buffers to the CPU.

type(dst_type)

Casts all parameters and buffers to dst_type.

float()

Casts all floating point parameters and buffers to float datatype.

double()

Casts all floating point parameters and buffers to double datatype.

half()

Casts all floating point parameters and buffers to half datatype.

bfloat16()

Casts all floating point parameters and buffers to bfloat16 datatype.

to_empty(*, device)

Moves the parameters and buffers to the specified device without copying storage.

to(*args, **kwargs)

Moves and/or casts the parameters and buffers.

register_backward_hook(hook)

Registers a backward hook on the module.

register_full_backward_hook(hook)

Registers a backward hook on the module.

register_forward_pre_hook(hook)

Registers a forward pre-hook on the module.

register_forward_hook(hook)

Registers a forward hook on the module.

state_dict([destination, prefix, keep_vars])

Returns a dictionary containing a whole state of the module.

load_state_dict(state_dict[, strict])

Copies parameters and buffers from state_dict into this module and its descendants.

parameters([recurse])

Returns an iterator over module parameters.

named_parameters([prefix, recurse])

Returns an iterator over module parameters, yielding both the name of the parameter as well as the parameter itself.

buffers([recurse])

Returns an iterator over module buffers.

named_buffers([prefix, recurse])

Returns an iterator over module buffers, yielding both the name of the buffer as well as the buffer itself.

children()

Returns an iterator over immediate children modules.

named_children()

Returns an iterator over immediate children modules, yielding both the name of the module as well as the module itself.

modules()

Returns an iterator over all modules in the network.

named_modules([memo, prefix, remove_duplicate])

Returns an iterator over all modules in the network, yielding both the name of the module as well as the module itself.

train([mode])

Sets the module in training mode.

eval()

Sets the module in evaluation mode.

requires_grad_([requires_grad])

Change if autograd should record operations on parameters in this module.

zero_grad([set_to_none])

Sets gradients of all model parameters to zero.

share_memory()

See torch.Tensor.share_memory_()

extra_repr()

Set the extra representation of the module

Special Methods:

__init__([n_bins, threshold, for_neg_class])

Initializes internal Module state, shared by both nn.Module and ScriptModule.

Inherited from : py: class:AggregatingKpi

__init__([n_bins, threshold, for_neg_class])

Initializes internal Module state, shared by both nn.Module and ScriptModule.

Inherited from : py: class:Module

__init__([n_bins, threshold, for_neg_class])

Initializes internal Module state, shared by both nn.Module and ScriptModule.

__call__(*input, **kwargs)

Call self as a function.

__setstate__(state)

__getattr__(name)

__setattr__(name, value)

Implement setattr(self, name, value).

__delattr__(name)

Implement delattr(self, name).

__repr__()

Return repr(self).

__dir__()

Default dir() implementation.


__init__(n_bins=10, threshold=0.5, for_neg_class=False)[source]

Initializes internal Module state, shared by both nn.Module and ScriptModule.

Parameters
  • n_bins (int) –

  • threshold (float) –

  • for_neg_class (bool) –

reset()[source]

Called once at the beginning of a new epoch. Shall reset the aggregating statistics.

update(outputs, labels)[source]

Called every batch. Shall be used to update the aggregating statistics.

Parameters
  • outputs (Tensor) – Output tensors of shape (BATCH x H x W);

  • labels (Tensor) – Label tensors of shape (BATCH x H x W);

value()[source]

Shall return the aggregated metric value as a scalar.

Returns

tensor containing the given metric value.

Return type

Figure

count: Tensor

Total amount of predictions per bin.

for_neg_class

Defined for which class the curve should be computed

high_bound

Upper bound per bin.

low_bound

Lower bound per bin.

prob_sum: Tensor

Buffer collecting the sum of probabilities for each bin.

threshold

Threshold for the positive class for the ground truth

tp_sum: Tensor

Buffer collecting the true positives for each bin.

training: bool