Skip to content
heliaEDGE
Reference
HELIA

gs_autoencoder

Machine-readable model

  • GSAutoencoderclassConvenience wrapper around (encoder -> GumbelSoftmaxBottleneck -> decoder).
class

Convenience wrapper around (encoder -> GumbelSoftmaxBottleneck -> decoder).

helia_edge/trainers/gs_autoencoder.py:6

GSAutoencoder(encoder: keras.Model, gs: GumbelSoftmaxBottleneck, decoder: keras.Model, **kwargs={})

Convenience wrapper around (encoder -> GumbelSoftmaxBottleneck -> decoder).

  • Supports extra reconstruction-side losses and metrics.
  • Can return discrete code indices and/or code probabilities from the bottleneck.
  • Exposes Gumbel-Softmax layer metrics alongside base model metrics.
Parameters of GSAutoencoder
NameTypeDefaultDescription
encoderkeras.ModelRequiredEncoder model producing continuous latents.
gsGumbelSoftmaxBottleneckRequiredGumbelSoftmaxBottleneck layer that discretizes latents.
decoderkeras.ModelRequiredDecoder model mapping bottleneck outputs to reconstructions.
method

call

Python

Run encoder -> GS bottleneck -> decoder.

helia_edge/trainers/gs_autoencoder.py:33

call(
x: keras.KerasTensor,
training: bool = False,
return_indices: bool = False,
return_probs: bool = False,
) -> keras.KerasTensor | tuple[keras.KerasTensor, ...]

Run encoder -> GS bottleneck -> decoder.

Parameters of call
NameTypeDefaultDescription
xkeras.KerasTensorRequiredInput batch.
trainingboolFalseWhether to run in training mode (affects encoder/decoder/gs).
return_indicesboolFalseIf True, also return the discrete code indices.
return_probsboolFalseIf True, also return code probabilities.
Returns of call
TypeDescription
keras.KerasTensor | tuple[keras.KerasTensor, ...]Reconstruction, optionally with indices and/or probabilities.
method

compile

Python

Compile with optional extra losses/metrics.

helia_edge/trainers/gs_autoencoder.py:73

compile(
optimizer: keras.optimizers.Optimizer,
loss: keras.losses.Loss | None = None,
metrics: list | None = None,
extra_losses: list | None = None,
extra_metrics: list | None = None,
**kwargs={},
)

Compile with optional extra losses/metrics.

Parameters of compile
NameTypeDefaultDescription
optimizerkeras.optimizers.OptimizerRequiredKeras optimizer.
losskeras.losses.Loss | NoneNoneBase reconstruction loss (e.g., keras.losses.MeanSquaredError()).
metricslist | NoneNoneStandard Keras metrics (Metric instances or callables).
extra_losseslist | NoneNoneList of callables (y_true, y_pred) -> scalar to add to loss.
extra_metricslist | NoneNoneMetric instances or callables (y_true, y_pred) -> scalar.
method

Compute total loss = recon + extra losses + layer-added losses.

helia_edge/trainers/gs_autoencoder.py:106

compute_loss(x=None, y=None, y_pred=None, sample_weight=None, allow_empty=False)

Compute total loss = recon + extra losses + layer-added losses.