【发布时间】:2020-08-16 21:42:10
【问题描述】:
我正在尝试在 python 中实现 Softmax 交叉熵损失。因此,我在 GitHub Tensorflow 存储库中查看了 Softmax 交叉熵损失的实现。我试图理解它,但我遇到了三个函数的循环,我不明白函数中的哪一行代码正在计算损失?
函数softmax_cross_entropy_with_logits_v2(labels, logits, axis=-1, name=None)返回函数softmax_cross_entropy_with_logits_v2_helper(labels=labels, logits=logits, axis=axis, name=name),而函数又返回softmax_cross_entropy_with_logits(precise_logits, labels, name=name)。
现在函数softmax_cross_entropy_with_logits(precise_logits, labels, name=name)返回函数softmax_cross_entropy_with_logits_v2(labels, logits, axis=-1, name=None)。
这让我陷入了函数循环,却没有明确知道计算 Softmax 函数的 cost 的代码在哪里。谁能指出 Softmax 交叉熵的代码在 Tensorflow GitHub 存储库中的实现位置?
我引用的 GitHub 存储库的链接是 here。它包含了上述三个函数的定义。
如果cost 的代码需要很多难以理解的函数,你能解释一下代码行吗?谢谢。
【问题讨论】:
标签: python tensorflow bazel softmax cross-entropy