ConceptClassificationModel2D

class hybrid_learning.concepts.models.concept_models.concept_classification.ConceptClassificationModel2D(concept=None, model=None, layer_id=None, in_channels=None, act_map_size=None, **other_settings)[source]

Bases: ConceptDetectionModel2D

A concept model that classifies whether an image-level concept is recognized in an activation map. This is solved by a localization model with window respectively kernel size the same as the input size.

A forward run with a batch of size (batch, in_channels, h, w) returns a batch of confidence values of the size (batch, 1). For a usage example compare ConceptDetection2DTrainTestHandle.

Warning

An error is raised if a tensor with (height, width) different from kernel_size is provided to forward().

Public Data Attributes:

Inherited from : py: class:ConceptDetectionModel2D

concept

The concept for which this model was configured.

concept_name

The name of the associated concept if known.

main_model_stump

Stump of the main model for which this instance was configured.

main_model

Shortcut to access the main model.

layer_id

Layer to extract concept from.

kernel_size

Size of the convolution kernel.

in_channels

Number of input channels.

apply_sigmoid

Whether a sigmoid is applied to the output of the forward function before returning it.

apply_padding

Whether a zero-padding is applied to the input of the forward function.

settings

The current model settings as dictionary.

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:

forward(inp)

Wrapper around super forward method.

Inherited from : py: class:ConceptDetectionModel2D

reset_parameters()

Randomly (re)initialize weight and bias.

to_embedding()

Return the plain representation of the ensemble as list of ConceptEmbedding.

forward(inp)

Wrapper around super forward method.

Inherited from : py: class:Module

forward(inp)

Wrapper around super forward method.

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__([concept, model, layer_id, ...])

Init.

Inherited from : py: class:ConceptDetectionModel2D

__init__([concept, model, layer_id, ...])

Init.

Inherited from : py: class:Module

__init__([concept, model, layer_id, ...])

Init.

__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.


Parameters
__init__(concept=None, model=None, layer_id=None, in_channels=None, act_map_size=None, **other_settings)[source]

Init.

Wrapper around init of a ConceptDetectionModel2D with fixed kernel_size of \(1\times1\) and disabled padding. For details on the arguments see the init function of the super class ConceptDetectionModel2D.

Parameters
forward(inp)[source]

Wrapper around super forward method.

Parameters

inp (Tensor) –

Return type

List[Tensor]

training: bool