计算 Softmax 输出层的成本
使用 tf.nn.sparse_softmax_cross_entropy_with_logits
,但要注意它不能接受 tf.nn.softmax
的输出。相反,计算未缩放的激活,然后计算成本:
logits = tf.matmul(state_below, U) + b
cost = tf.nn.sparse_softmax_cross_entropy_with_logits(logits, labels)
在这种情况下:state_below
和 U
应该是 2D 矩阵,b
应该是一个大小等于类数的向量,labels
应该是 int32
或 int64
的 2D 矩阵。此功能还支持具有两个以上维度的激活张量。