神经网络输出层激活

时间:2019-03-11 16:30:46

标签: deep-learning

我熟悉Keras,在Keras中,我们需要根据需要在输出层中添加激活函数,但是在学习Tensorflow时,我发现没有将激活函数添加到输出层中。

任何人都可以解释其背后的原因。

1 个答案:

答案 0 :(得分:1)

在Tensorflow中,损失函数通常需要 logit 作为输入,例如sigmoid_cross_entropy_with_logitssoftmax_cross_entropy_with_logits Logits 是激活功能之前的输出。

但是,在Keras中,默认情况下,您需要传递输出(带有激活)以计算损失,因为如果您将损失转移给了categorical_cross_entropy,则可以看到from_logits=True的{​​{3}}不是logit(具有激活函数)(默认设置),它直接基于输出计算交叉熵,但是如果它来自logit,则必须指定If ... If ... If... For ... For ... If ... ... End If Next Next End If End If End If ,并且将使用期望logits作为输入的相应TF损失函数。