Tensorflow softmax\u cross\u熵\u和逻辑要求无标度对数概率

Tensorflow softmax\u cross\u熵\u和逻辑要求无标度对数概率,tensorflow,Tensorflow,我注意到,对于logits参数,它要求“未标度的日志概率”。然而,我从未见过有人建议在提交到该函数之前对其NN预测执行日志操作。我在这里遗漏了什么吗?您不应该执行日志操作。实际上,您不应该执行任何操作:-)。这个评论(可能很糟糕)试图说的是,每个logit都是一个不受限制的实数(负数或正数,任意大小)。然后,softmax交叉熵函数(概念上)将应用softmax操作(指数化,将不受限制的实数转换为正数,然后进行规格化,使其总和为1)并计算交叉熵 因此,tl;dr,将最后一个线性层的输出输入到该层

我注意到,对于logits参数,它要求“未标度的日志概率”。然而,我从未见过有人建议在提交到该函数之前对其NN预测执行日志操作。我在这里遗漏了什么吗?

您不应该执行日志操作。实际上,您不应该执行任何操作:-)。这个评论(可能很糟糕)试图说的是,每个logit都是一个不受限制的实数(负数或正数,任意大小)。然后,softmax交叉熵函数(概念上)将应用softmax操作(指数化,将不受限制的实数转换为正数,然后进行规格化,使其总和为1)并计算交叉熵


因此,tl;dr,将最后一个线性层的输出输入到该层,而不使用任何标准化或传递函数,这样您就不会出错。

出于历史原因,最后一个线性层的输出表示:

Z2=np.dot(W2,A1)+b2

该输出称为“未标度对数概率”,因此softmax操作将对其进行规范化-->给出“标度对数概率”,并应用指数函数-->给出“标度概率”->,对其应用交叉熵损失


请参阅:

请参阅上一篇文章。我有,但它没有解决我的特殊问题