【发布时间】:2017-08-17 20:41:30
【问题描述】:
我正在尝试运行这段代码:
def somefunc(x, rows, n_hidden):
vectors = tf.contrib.layers.embed_sequence(nodes, vocab_size=vocab_size, embed_dim=n_hidden)
batch_size = tf.shape(vectors)[0]
state = tf.zeros([batch_size, rows, n_hidden])
bias = tf.Variable(tf.constant(0.1, shape=[batch_size,1]) # Error here!
...
x = tf.placeholder(tf.int32, shape=[None, 200])
pred = somefunc(x, 200, 40)
loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=pred, labels=target))
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(loss)
调用函数时出现此错误(错误是偏置形状):
TypeError: int() 参数必须是字符串、类似字节的对象或数字,而不是“张量”
我尝试做b = tf.Variable(0.1, validate_shape=False),但后来我在optimizer 收到此错误:
ValueError: as_list() 未在未知的 TensorShape 上定义。
如果我删除 validate_shape=False,我会收到形状错误。
如果我忽略了一些明显的事情,我很抱歉,但有人能告诉我哪里出错了吗?
非常感谢!
【问题讨论】:
标签: tensorflow