kaira.models.image.Xie2023DTDeepJSCCDecoder

Inheritance diagram of Xie2023DTDeepJSCCDecoder

Inheritance diagram for Xie2023DTDeepJSCCDecoder

class kaira.models.image.Xie2023DTDeepJSCCDecoder(latent_channels, out_classes, architecture='cifar10', num_embeddings=None, *args, **kwargs)[source]

Bases: BaseModel

Discrete Task-Oriented Deep JSCC decoder [Xie et al., 2023].

This implements the decoder part of the DT-DeepJSCC architecture as described in [Xie et al., 2023]. It maps discrete latent representations back to class predictions.

Parameters:
  • architecture (str, optional) – Type of architecture to use. Defaults to ‘cifar10’. Options: ‘cifar10’ or ‘custom’.

  • latent_channels (int) – Number of channels in the latent representation

  • out_classes (int) – Number of output classes

  • num_embeddings (int, optional) – Size of the discrete codebook. Defaults to None (automatically determined by architecture).

References

[Xie et al., 2023]

Methods

__init__

forward

Forward pass for the DT-DeepJSCC decoder.

from_config

Create model instance from configuration.

from_hydra_config

Create model from Hydra DictConfig.

from_pretrained_config

Create model from Hugging Face PretrainedConfig.

__init__(latent_channels, out_classes, architecture='cifar10', num_embeddings=None, *args, **kwargs)[source]
classmethod from_config(config, **kwargs)

Create model instance from configuration.

Parameters:
  • config – Configuration object (PretrainedConfig, DictConfig, or dict)

  • **kwargs – Additional parameters to override config

Returns:

Model instance

classmethod from_hydra_config(config: DictConfig, **kwargs)

Create model from Hydra DictConfig.

Parameters:
  • config – Hydra configuration

  • **kwargs – Additional parameters

Returns:

Model instance

classmethod from_pretrained_config(config: PretrainedConfig, **kwargs)

Create model from Hugging Face PretrainedConfig.

Parameters:
  • config – PretrainedConfig instance

  • **kwargs – Additional parameters

Returns:

Model instance

forward(received_bits)[source]

Forward pass for the DT-DeepJSCC decoder.

Parameters:

received_bits (torch.Tensor) – Received bits from the channel [batch_size, h*w, bits_per_symbol]

Returns:

Class logits [batch_size, out_classes]

Return type:

torch.Tensor