比较与tf.keras.initializers.Constant的差异
tf.keras.initializers.Constant
tf.keras.initializers.Constant(value=0)
mindspore.common.initializer.Constant
mindspore.common.initializer.Constant(value)
使用方式
TensorFlow:函数入参value
支持标量,列表,元组,数组类型。假设需要创建一个指定shape的张量,且此接口的入参value
类型为列表或数组时,value
包含的元素数量必须小于等于指定shape的元素数量,小于的情况下,value
的最后一个元素值用来填充剩余的位置。
MindSpore:函数入参value
支持标量,元素个数为1的numpy数组。
代码示例
以输入为标量为例,代码样例如下:
TensorFlow:
import tensorflow as tf
init = tf.keras.initializers.Constant(2)
x = init(shape=(2, 4))
y = init(shape=(3, 4))
with tf.Session() as sess:
print(x.eval(), "\n")
print(y.eval())
# out:
# [[2. 2. 2. 2.]
# [2. 2. 2. 2.]]
# [[2. 2. 2. 2.]
# [2. 2. 2. 2.]
# [2. 2. 2. 2.]]
MindSpore:
import mindspore as ms
from mindspore.common.initializer import initializer, Constant
x = initializer(Constant(2), shape=[2, 4], dtype=ms.float32)
print(x)
# out:
# [[2. 2. 2. 2.]
# [2. 2. 2. 2.]]