Autoencoder
Model
- class ParticleAutoencoder(*args, **kwargs)[source]
Bases:
ModelAutoencoder model for dimensionality reduction.
- activation_latent[source]
activation before bottleneck, default :class:tensorflow.keras.activations.linear`
- Type:
tensorflow.keras.activations, optional
- build_encoder(mean, stdev)[source]
Builds encoder model
- Parameters:
mean (float) – Mean of data.
stdev (float) – Standard deviation of data.
- Returns:
encoder
- Return type:
tensorflow.keras.Model
- build_decoder(mean, stdev)[source]
Builds decoder model
- Parameters:
mean (float) – Mean of data.
stdev (float) – Standard deviation of data.
- Returns:
decoder
- Return type:
tensorflow.keras.Model
- classmethod load(path)[source]
Loads autoencoder.
- Parameters:
path (str) – Model path.
- Returns:
autoencoder
- Return type:
tensorflow.keras.Model
- compile(optimizer, reco_loss)[source]
Compiles the autoencoder - set model’s configuration.
- Parameters:
optimizer (
tensorflow.keras.Optimizer) – optimizer.reco_loss (Callable) – reconstruction loss function
- call(x)[source]
Calls the model.
- Parameters:
x (
numpy.ndarray) – inputs- Returns:
outputs
- Return type:
numpy.ndarray
Layers
- class Conv1DTranspose(*args, **kwargs)[source]
Bases:
LayerCustom 1d transposed convolution that expands to 2d output for vae decoder
- __init__(filters, kernel_sz, activation, kernel_initializer, **kwargs)[source]
Construtor.
- Parameters:
filters (int) – number kernels
activation (
tensorflow.keras.activation) – activationkernel_initializer (
tensorflow.keras.Initializer) – kernel initkernel_sz (int) – kernel size
- class StdNormalization(*args, **kwargs)[source]
Bases:
LayerNormalizing input feature to std Gauss (mean 0, var 1).
- __init__(mean_x, std_x, name='Std_Normalize', **kwargs)[source]
Constructor.
- Parameters:
mean_x (float) – mean of inputs
std_x (float) – standard deviation of inputs
name (str, optional) – name
- class StdUnnormalization(*args, **kwargs)[source]
Bases:
StdNormalizationRescaling feature to original domain
Train
- train(data_sample, input_shape=(100, 3), read_n=10000, batch_size=256, latent_dim=6, epochs=10, act_latent=None)[source]
Trains autoencoder
- Parameters:
data_sample (
numpy.ndarray) – inputsinput_shape (tuple, optional) – shape, default (100, 3)
batch_size (int, optional) – batch size, default 256
latent_dim (int, optional) – latent dim, default 6
epochs (int, optional) – number of epochs, default 10
act_latent (
tensorflow.keras.Actication, optional) – latent activation, default None
Predict
- map_to_latent_space(data_sample, model) ndarray[source]
Autoencoder mapping input space to latent representation.
- Parameters:
data_sample (
tensorflow.data.Dataset) – tensorflow.data.Dataset.from_tensor_slices(input_sample (:class:`numpy.ndarray)).batch(batch_size)`model (
tensorflow.keras.Model) – the autoencoder
- Returns:
latent representation
- Return type:
numpy.ndarray