Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neural network Tensorflow:具有交叉熵的标度Logit_Neural Network_Tensorflow_Cross Entropy - Fatal编程技术网

Neural network Tensorflow:具有交叉熵的标度Logit

Neural network Tensorflow:具有交叉熵的标度Logit,neural-network,tensorflow,cross-entropy,Neural Network,Tensorflow,Cross Entropy,在Tensorflow中,我有一个分类器网络和不平衡的训练类。由于各种原因,我无法使用重采样来补偿不平衡的数据。因此,我不得不用其他方法来补偿这种不平衡,特别是根据每个类中示例的数量,用logits乘以权重。我知道这不是首选方法,但重新采样不是一种选择。我的训练损失op是tf.nn.softmax\u cross\u entropy\u with\u logits(我也可以尝试tf.nn.sparse\u softmax\u cross\u entropy\u with\u logits)。Te

在Tensorflow中,我有一个分类器网络和不平衡的训练类。由于各种原因,我无法使用重采样来补偿不平衡的数据。因此,我不得不用其他方法来补偿这种不平衡,特别是根据每个类中示例的数量,用logits乘以权重。我知道这不是首选方法,但重新采样不是一种选择。我的训练损失op是
tf.nn.softmax\u cross\u entropy\u with\u logits
(我也可以尝试
tf.nn.sparse\u softmax\u cross\u entropy\u with\u logits
)。Tensorflow文档在对这些操作的描述中包括以下内容:

警告:此op需要无标度的Logit,因为它执行softmax 为提高效率,在内部进行登录。不要将此op与 softmax的输出,因为它将产生不正确的结果

我的问题:上面的警告只是指softmax进行的缩放,还是意味着禁止任何类型的logit缩放?如果是后者,那么我的类重新平衡logit缩放是否会导致错误的结果

谢谢


Ron

警告只是通知您,在计算交叉熵之前,
tf.nn.softmax\u cross\u entropy\u with\u logits
将在输入logits上应用
softmax
。这个警告似乎真的避免了两次应用softmax,因为交叉熵的结果会非常不同

以下是有关函数的注释,该函数使用逻辑实现
tf.nn.softmax\u cross\u entropy\u

// NOTE(touts): This duplicates some of the computations in softmax_op
// because we need the intermediate (logits -max(logits)) values to
// avoid a log(exp()) in the computation of the loss.
如警告所述,此实现是为了提高性能,但需要注意的是,您不应将自己的
softmax
层作为输入(这在实践中有点方便)

如果强制的
softmax
妨碍了您的计算,也许另一个API可以帮助您:或者



不过,该实现似乎并未表明任何缩放都会影响结果。我想线性缩放函数应该可以,只要它保留原始的logits重新分区。但是无论在输入logits上应用什么,
tf.nn.softmax\u cross\u entropy\u with\u logits
将在计算交叉熵之前应用
softmax

好奇您是否找到了适合您的解决方案?我正面临着一个类似的挑战,我想知道其他人是如何应对的?我试着用每个例子的交叉熵乘以这个例子中真实类的权重,结果令人怀疑。我求助于对数据进行重新采样。