tf.compat.v1.variance_scaling_initializer

Initializer capable of adapting its scale to the shape of weights tensors.

Migrate to TF2

Although it is a legacy compat.v1 API, this symbol is compatible with eager execution and tf.function.

To switch to TF2 APIs, move to using either tf.initializers.variance_scaling or tf.keras.initializers.VarianceScaling (neither from compat.v1) and pass the dtype when calling the initializer.

Structural Mapping to TF2

Before:

initializer = tf.compat.v1.variance_scaling_initializer(
  scale=scale,
  mode=mode,
  distribution=distribution
  seed=seed,
  dtype=dtype)

weight_one = tf.Variable(initializer(shape_one))
weight_two = tf.Variable(initializer(shape_two))

After:

initializer = tf.keras.initializers.VarianceScaling(
  scale=scale,
  mode=mode,
  distribution=distribution
  seed=seed)

weight_one = tf.Variable(initializer(shape_one, dtype=dtype))
weight_two = tf.Variable(initializer(shape_two, dtype=dtype))

How to Map Arguments

TF1 Arg Name TF2 Arg Name Note
scale scale No change to defaults
mode mode No change to defaults
distribution distribution No change to defaults. 'normal' maps to 'truncated_normal'
seed seed
dtype dtype The TF2 api only takes it as a __call__ arg, not a constructor arg.
partition_info - (__call__ arg in TF1) Not supported