gpt4 book ai didi

tensorflow - softmax_cross_entropy_with_logits 的 PyTorch 等价

转载 作者:行者123 更新时间:2023-12-04 16:05:22 27 4
gpt4 key购买 nike

我想知道 TensorFlow 的 softmax_cross_entropy_with_logits 是否有等效的 PyTorch 损失函数?

最佳答案

is there an equivalent PyTorch loss function for TensorFlow's softmax_cross_entropy_with_logits?

torch.nn.functional.cross_entropy这将 logits 作为输入(在内部执行 log_softmax)。这里的“logits”只是一些不是概率的值(即不一定在区间 [0,1] 中)。
但是,logits 也是将转换为概率的值。
如果您考虑 tensorflow 函数的名称,您就会明白它是 pleonasm(因为 with_logits 部分假设 softmax 将被调用)。
在 PyTorch 实现中是这样的:
loss = F.cross_entropy(x, target)
这相当于:
lp = F.log_softmax(x, dim=-1)
loss = F.nll_loss(lp, target)
不是 F.binary_cross_entropy_with_logits因为这个函数假设多标签分类:
F.sigmoid + F.binary_cross_entropy = F.binary_cross_entropy_with_logits
不是 torch.nn.functional.nll_loss要么是因为此函数采用对数概率(在 log_softmax() 之后)而不是对数。

关于tensorflow - softmax_cross_entropy_with_logits 的 PyTorch 等价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46218566/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com