Skip to content

Latest commit

 

History

History
49 lines (36 loc) · 1.58 KB

tf.nn.softmax_cross_entropy_with_logits.md

File metadata and controls

49 lines (36 loc) · 1.58 KB

tf.nn.softmax_cross_entropy_with_logits

tf.nn.softmax_cross_entropy_with_logits(
    _sentinel=None,
    labels=None,
    logits=None,
    dim=-1,
    name=None
)
paddle.fluid.layers.softmax_with_cross_entropy(
    logits, 
    label, 
    soft_label=False, 
    ignore_index=-100, 
    numeric_stable_mode=False, 
    return_softmax=False,
    axis=-1
)

功能差异

标签类型

TensorFlow:labels只能使用软标签,其shape[batch, num_classes],表示样本在各个类别上的概率分布;

PaddlePaddle:通过设置soft_label,可以选择软标签或者硬标签。当使用硬标签时,labelshape[batch, 1]dtypeint64;当使用软标签时,其shape[batch, num_classes]dtypeint64

返回值

TensorFlow:返回batch中各个样本的log loss;

PaddlePaddle:当return_softmaxFalse时,返回batch中各个样本的log loss;当return_softmaxTrue时,再额外返回logtis的归一化值。

代码示例

# logits的shape为[32, 10], dtype为float32; label的shape为[32, 1], dtype为int64

# loss的shape为[32, 1], dtype为float32
loss = fluid.layers.softmax_with_cross_entropy(logits, label, soft_label=False)