我想使用1初始化使用get_variable函数声明的变量。 我尝试了以下方法:
1。tf.get_variable(name = 'yd1', shape = shape_t, dtype = tf.float32,initializer = tf.ones())
收到错误-> TypeError:ones()至少接受1个参数(给定0个参数)
tf.get_variable(name = 'yd1', shape = shape_t ,dtype = tf.float32,initializer = tf.ones(shape=shape_t))
收到错误-> ValueError(“如果初始值设定项是常量,则不要指定形状。”)
用1初始化变量的最佳方法是什么? tf.zeros_initializer可以用于初始化为0,但是在tf 1中没有等效项。
答案 0 :(得分:0)
您需要使用tf.ones_initializer
:
tf.get_variable(name='yd1', shape=shape_t, dtype=tf.float32,
initializer=tf.ones_initializer())
或者,如第二条错误消息所述,您可以使用常量值,但不要传递形状:
tf.get_variable(name='yd1', initializer=tf.ones(shape=shape_t, dtype=tf.float32))
答案 1 :(得分:0)
tf.ones_initializer在tf 1中不可用,它在tf 2中引入。
以下代码可以完成
tf.get_variable(name = 'yd1', shape = shape_t ,dtype = tf.float32,initializer = tf.constant_initializer(1))