tensorflow - 理解 tensorflow sequence_loss 参数

标签 tensorflow

sequence_Loss模块的source_code具有三个必需的参数,它们将它们列为输出、目标和权重。

输出和目标是不言自明的,但我希望更好地理解 weight 是什么范围?

我感到困惑的另一件事是它指出 targets应该是一样的length作为输出,张量的长度究竟是什么意思?特别是如果它是一个 3 维张量。

最佳答案

将权重视为应用于输入张量的掩码。在一些 NLP 应用中,我们经常为每个句子设置不同的句子长度。为了将多个实例句子并行/批处理成一个小批量以输入神经网络,人们使用掩码矩阵来表示输入张量中的哪个元素实际上是有效输入。例如,权重可以是 np.ones([batch, max_length])这意味着所有输入元素都是合法的。

我们还可以使用与标签相同形状的矩阵,例如 np.asarray([[1,1,1,0],[1,1,0,0],[1,1,1,1]]) (我们假设标签的形状是 3x4),那么第一行最后一列的 crossEntropy 将被屏蔽为 0。

您还可以使用权重来计算交叉熵的加权累积。

关于tensorflow - 理解 tensorflow sequence_loss 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41134593/

相关文章:

tensorflow - 在tensorflow中使用两幅图像的平方差作为损失函数

tensorflow - 将自定义 AutoML tflite 模型与 Flutter 应用程序集成

python - 如何将 PrefetchDataset 转换为 TF 张量?

python - tf.keras.backend 替换小于 1 的张量值的方法

python - Tensorflow:连接多个 tf.Dataset 非常慢

python - 自定义损失函数: NotImplementedError: Cannot convert a symbolic Tensor (truediv_2:0) to a numpy array

python - Keras softmax 输出和准确率

python - 在 TensorFlow v1 中隐式启用 TensorFlow v2 行为

python - 使用 Keras ImageDataGenerator 时出现内存错误

python - 在音频分析中绘制频谱图