Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.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
Python 如何将解码器LSTM的输出数据转换回字?_Python_Python 3.x_Tensorflow_Keras_Sequence To Sequence - Fatal编程技术网

Python 如何将解码器LSTM的输出数据转换回字?

Python 如何将解码器LSTM的输出数据转换回字?,python,python-3.x,tensorflow,keras,sequence-to-sequence,Python,Python 3.x,Tensorflow,Keras,Sequence To Sequence,我有一个编码器-解码器网络,与本教程中生成的网络类似: 然而,解码器LSTM的输出将是介于0和1之间的数字。但是,在本教程中,单词被标记为整数。如何使用此标记化将0和1之间的输出转换回单词 另一个选项可能是使用一个热编码标记化,但您肯定仍然需要对输出进行四舍五入以将浮点输出转换为整数?使用tf.math.argmax()查找最佳单词的索引。然后从词汇表中提取单词您引用的教程使用了15000个标记的词汇表。它输出每个样本10个标记的序列,这样10个字中的每一个都是15000个浮点的向量。您可以将

我有一个编码器-解码器网络,与本教程中生成的网络类似:

然而,解码器LSTM的输出将是介于0和1之间的数字。但是,在本教程中,单词被标记为整数。如何使用此标记化将0和1之间的输出转换回单词


另一个选项可能是使用一个热编码标记化,但您肯定仍然需要对输出进行四舍五入以将浮点输出转换为整数?

使用
tf.math.argmax()
查找最佳单词的索引。然后从词汇表中提取单词

您引用的教程使用了15000个标记的词汇表。它输出每个样本10个标记的序列,这样10个字中的每一个都是15000个浮点的向量。您可以将其视为一种概率,理想情况下,这15000个浮点数的总和加起来等于1,最高分数告诉您选择了哪个令牌。因此,在输入时,每个令牌将转换为1个大小为15000的热编码向量,在输出时,您将有一个softmax节点,该节点输出每个令牌的分数,其中最高分数将为您提供所选令牌。

感谢您的回复。我不知道这是怎么回事-你说的“最佳单词”是什么意思?Softmax提供了单词索引之间的概率分布。价值越高,这个词就越好