Initializer capable of adapting its scale to the shape of weights tensors.
tf.compat.v1.keras.initializers.VarianceScaling(
    scale=1.0,
    mode='fan_in',
    distribution='truncated_normal',
    seed=None,
    dtype=tf.dtypes.float32
)
 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.
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))
| 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 | 
With distribution="truncated_normal" or "untruncated_normal", samples are drawn from a truncated/untruncated normal distribution with a mean of zero and a standard deviation (after truncation, if used) stddev = sqrt(scale / n) where n is:
With distribution="uniform", samples are drawn from a uniform distribution within [-limit, limit], with limit = sqrt(3 * scale / n).
| Args | |
|---|---|
| scale | Scaling factor (positive float). | 
| mode | One of "fan_in", "fan_out", "fan_avg". | 
| distribution | Random distribution to use. One of "normal", "uniform". | 
| seed | A Python integer. Used to create random seeds. See tf.compat.v1.set_random_seedfor behavior. | 
| dtype | Default data type, used if no dtypeargument is provided when calling the initializer. Only floating point types are supported. | 
| Raises | |
|---|---|
| ValueError | In case of an invalid value for the "scale", mode" or "distribution" arguments. | 
from_config
@classmethod
from_config(
    config
)
 Instantiates an initializer from a configuration dictionary.
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_configget_config()
Returns the configuration of the initializer as a JSON-serializable dict.
| Returns | |
|---|---|
| A JSON-serializable Python dict. | 
__call__
__call__(
    shape, dtype=None, partition_info=None
)
 Returns a tensor object initialized as specified by the initializer.
| Args | |
|---|---|
| shape | Shape of the tensor. | 
| dtype | Optional dtype of the tensor. If not provided use the initializer dtype. | 
| partition_info | Optional information about the possible partitioning of a tensor. | 
    © 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
    https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/compat/v1/keras/initializers/VarianceScaling