kaira.data.WynerZivCorrelationDataset

Inheritance diagram of WynerZivCorrelationDataset

Inheritance diagram for WynerZivCorrelationDataset

class kaira.data.WynerZivCorrelationDataset(source: Tensor, correlation_type: str = 'gaussian', correlation_params: Dict[str, Any] | None = None, *args, **kwargs)[source]

Bases: Dataset

Dataset for Wyner-Ziv coding scenarios with correlated sources.

This dataset pairs source data with correlated side information according to a specified correlation model. It’s particularly useful for simulating and evaluating Wyner-Ziv coding scenarios where the decoder has access to side information that is statistically correlated with the source.

model

The correlation model used to generate side information

data

The source data tensor with shape (n_samples, *feature_dims)

correlated_data

The correlated side information with same shape as source data

Methods

__init__

Initialize the Wyner-Ziv correlated dataset.

__init__(source: Tensor, correlation_type: str = 'gaussian', correlation_params: Dict[str, Any] | None = None, *args, **kwargs)[source]

Initialize the Wyner-Ziv correlated dataset.

Parameters:
  • source – Source data tensor where the first dimension represents the number of samples

  • correlation_type – Type of correlation model: - ‘gaussian’: Additive Gaussian noise - ‘binary’: Binary symmetric channel - ‘custom’: User-defined model

  • correlation_params – Parameters for the correlation model: - For ‘gaussian’: {‘sigma’: float} - Standard deviation of the noise - For ‘binary’: {‘crossover_prob’: float} - Probability of bit flipping - For ‘custom’: {‘transform_fn’: callable} - Custom transformation function

  • *args – Variable length argument list.

  • **kwargs – Arbitrary keyword arguments.