我正在尝试建立一个图形,其中有一个可训练的变量,其大小等于输入的大小。但是,由于输入具有第一个维度(批次),因此无法静态地知道,因此我无法找到构建此类变量的方法。 背景是:我正在进行对抗性学习,在这种学习中,输入中添加了噪音。我想为此使用TF优化器之一,但在创建噪声变量时遇到问题。 一个简化的示例(不起作用):
with tf.Graph().as_default() as g:
x = tf.placeholder("float", [None, 2])
z = tf.get_variable(name="noise", shape=tf.shape(x), initializer=tf.zeros_initializer())
y = tf.add(x,z)
init = tf.global_variables_initializer()