0

我已经实现了绝大多数的多输入模型,并且我在为 2 个传入的 logit 张量定义单个损失函数的最后几个步骤中苦苦挣扎。

可以说我有以下内容:

logits_cnn =  tf.layers.dense(input1) # shape is [batch_size, num_classes] (e.g. [64,1])
logits_lstm = tf.layers.dense(input2) # shape is [batch_size, num_classes] (e.g. [64,1])

然后我想将它们提供给以下损失函数:

tf.losses.sigmoid_cross_entropy(multi_class_labels, logits, ...)

我在想这样的事情:

logits_concat = tf.concat(values = [logits_cnn, logits_lstm], axis= -1, name='concat_logits')
loss = tf.losses.sigmoid_cross_entropy(multi_class_labels= y, logits = logits_concat)

损失实现有意义吗?我觉得这不是一个概念上正确的方法。例如,如果yis shape[64,1]logits_concatis shape [64,2],那么我建议有 2 个类在起作用,这不是我的意图。

4

0 回答 0