tfl.lattice_layer.LinearInitializer

View source on GitHub

Class LinearInitializer

Initializes a tfl.layers.Lattice as linear function.

  • The linear function will have positive coefficients for monotonic dimensions and 0 otherwise. If all dimensions are unconstrained, all coefficients will be positive.
  • Linear coefficients are set such that the minimum/maximum output of the lattice matches the given output_min/output_max.
  • Each monotonic dimension contributes with same weight regardless of number of vertices per dimension.
  • No dimension can be both monotonic and unimodal.
  • Unimodal dimensions contribute with same weight as monotonic dimensions.
  • Unimodal dimensions linearly decrease for first (dim_size + 1) // 2 vertices and then linearly increase for following vertices.

Attributes:

  • All __init__ arguments.

__init__

View source

__init__(
    lattice_sizes,
    monotonicities,
    output_min,
    output_max,
    unimodalities=None
)

Initializes an instance of LinearInitializer.

Args:

  • lattice_sizes: Lattice sizes of tfl.layers.Lattice to initialize.
  • monotonicities: Monotonic dimensions for initialization. Does not need to match monotonicities of tfl.layers.Lattice.
  • output_min: Minimum layer output after initialization.
  • output_max: Maximum layer output after initialization.
  • unimodalities: None or unimodal dimensions after initialization. Does not need to match unimodalities of tfl.layers.Lattice.

Raises:

  • ValueError: If there is a mismatch between monotonicities and lattice_sizes.

Methods

__call__

View source

__call__(
    shape,
    dtype=None,
    partition_info=None
)

Returns weights of tfl.layers.Lattice layer.

Args:

  • shape: Must be: (prod(lattice_sizes), units).
  • dtype: Standard Keras initializer param.
  • partition_info: Standard Keras initializer param. Not used.

from_config

@classmethod
from_config(
    cls,
    config
)

Instantiates an initializer from a configuration dictionary.

Example:

initializer = RandomUniform(-1, 1)
config = initializer.get_config()
initializer = RandomUniform.from_config(config)

Args:

  • config: A Python dictionary. It will typically be the output of get_config.

Returns:

An Initializer instance.

get_config

View source

get_config()

Standard Keras config for serialization.