mindspore.common.initializer

Initializer for cell parameters.

class mindspore.common.initializer.Constant(value)[source]

Initialize a constant.

Parameters

value (Union[int, numpy.ndarray]) – The value to initialize.

Returns

Array, an array after being assigned.

class mindspore.common.initializer.HeNormal(negative_slope=0, mode='fan_in', nonlinearity='leaky_relu')[source]

Initialize the array with He kaiming Normal algorithm, and from a normal distribution collect samples within N(0, sigma).

Parameters
  • negative_slope (int, float, bool) – Default: 0, used when nonlinearity is ‘leaky_relu’.

  • mode (str) – Default: fan_in.

  • nonlinearity (str) – Default: leaky_relu.

Returns

Array, assigned array.

class mindspore.common.initializer.HeUniform(negative_slope=0, mode='fan_in', nonlinearity='leaky_relu')[source]

Initialize the array with He kaiming uniform algorithm, and from a uniform distribution collect samples within U[-boundary, boundary] The boundary is defined as :

where \(boundary = \sqrt{\frac{6}{(1 + a^2) \times \text{fan_in}}}\).

Parameters
  • negative_slope (int, float, bool) – Default: 0, used when nonlinearity is ‘leaky_relu’.

  • mode (str) – Default: fan_in.

  • nonlinearity (str) – Default: leaky_relu.

Returns

Array, assigned array.

class mindspore.common.initializer.Initializer(**kwargs)[source]

The base class of the initializer. Initialization of tensor basic attributes and model weight values.

Parameters

kwargs (dict) – Keyword arguments for Initializer.

Returns

Array, an array after being initialized.

class mindspore.common.initializer.Normal(sigma=0.01)[source]

Initialize a normal array, and obtain values N(0, sigma) from the uniform distribution to fill the input tensor.

Parameters

sigma (float) – The sigma of the array. Default: 0.01.

Returns

Array, normal array.

class mindspore.common.initializer.One(**kwargs)[source]

Initialize the array to one.

Parameters

arr (Array) – The array to be assigned.

Returns

Array, assigned array.

class mindspore.common.initializer.TruncatedNormal(sigma=0.01)[source]

Initialize a truncated normal distribution which is a bounded normal distribution within N(low, high).

Parameters

sigma (float) – The sigma of the array. Default: 0.01.

Returns

Array, truncated normal array.

class mindspore.common.initializer.Uniform(scale=0.07)[source]

Initialize a uniform array, and obtain values U(-scale, scale) from the uniform distribution to fill the input tensor.

Parameters

scale (float) – The scale of the array. Default: 0.07.

Returns

Array, uniform array.

class mindspore.common.initializer.XavierUniform(gain=1)[source]

Initialize the array with xavier uniform algorithm, and from a uniform distribution collect samples within U[-boundary, boundary] The boundary is defined as :

where \(boundary = gain * \sqrt{\frac{6}{n_{in} + n_{out}}}\).

where \(n_{in}\) is the number of input units in the weight tensor. where \(n_{out}\) is the number of output units in the weight tensor.

Parameters

gain (Array) – The array to be assigned. Default: 1.

Returns

Array, assigned array.

class mindspore.common.initializer.Zero(**kwargs)[source]

Initialize the array to zero.

Parameters

arr (Array) – The array to be assigned.

Returns

Array, an array after being assigned.

mindspore.common.initializer.initializer(init, shape=None, dtype=mindspore.float32)[source]

Create and initialize a tensor.

Parameters
  • init (Union[Tensor, str, Initializer, numbers.Number]) –

    Initialize value.

    • str: The init should be the alias of the class inheriting from Initializer and the corresponding class will be called.

    • Initializer: The init should be the class inheriting from Initializer to initialize tensor.

    • numbers.Number: The Constant will be called to initialize tensor.

  • shape (Union[tuple, list, int]) – A list of integers, a tuple of integers or an integer as the shape of output. Default: None.

  • dtype (mindspore.dtype) – The type of data in initialized tensor. Default: mindspore.float32.

Returns

Union[Tensor, MetaTensor], When init is Tensor, the return is Tensor object, otherwise the return is Initialize object.

Examples

>>> tensor = initializer('ones', [1, 2, 3], mindspore.float32)
>>> tensor = initializer(One(), [1, 2, 3], mindspore.float32)
>>> tensor = initializer(0, [1, 2, 3], mindspore.float32)