比较与tf.keras.initializers.RandomUniform的功能差异
tf.keras.initializers.RandomUniform
tf.keras.initializers.RandomUniform(
minval=-0.05, maxval=0.05, seed=None, dtype=tf.dtypes.float32
)
mindspore.common.initializer.Uniform
class mindspore.common.initializer.Uniform(scale=0.07)
使用方式
TensorFlow:通过入参minval
和maxval
分别指定均匀分布的上下界,即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 ]]