比较与tf.keras.initializers.RandomUniform的功能差异

tf.keras.initializers.RandomUniform

tf.keras.initializers.RandomUniform(
    minval=-0.05, maxval=0.05, seed=None, dtype=tf.dtypes.float32
)

更多内容详见tf.keras.initializers.RandomUniform

mindspore.common.initializer.Uniform

class mindspore.common.initializer.Uniform(scale=0.07)

更多内容详见mindspore.common.initializer.Uniform

使用方式

TensorFlow:通过入参minvalmaxval分别指定均匀分布的上下界,即U(-minval, maxval)。默认值:minval=-0.05,maxval=0.05。

MindSpore:仅通过一个入参scale指定均匀分布的范围,即U(-scale, scale)。默认值:scale=0.7。

代码示例

import tensorflow as tf

init = tf.keras.initializers.RandomUniform()
x = init(shape=(1, 2))

with tf.Session() as sess:
    print(x.eval())

# Out:
# [[0.9943197  0.93056154]]
import mindspore as ms
from mindspore.common.initializer import Uniform, initializer

x = initializer(Uniform(), shape=[1, 2], dtype=ms.float32)
print(x)

# out:
# [[0.01140347 0.0076657 ]]