如何在 Pytorch 中将张量类型转换为原始文本(标记化之前)



例如,下面的张量类型数据由一种英语分词器标记化。

tensor([[ 2992,  1852,  9439,  ...,  2610,  1704, 29189],
[ 1852,  9439,     7,  ...,  1704, 29189, 23223],
[ 9439,     7,  2367,  ..., 29189, 23223,   838],
...,
[   12,  7469, 28844,  ...,  2973,    16,    73],
[ 7469, 28844, 28469,  ...,    16,    73,   735],
[28844, 28469,   191,  ...,    73,   735,  4482]])

如何将其转换为英文原文?(使用 Pytorch)

您要查找的方法tokenizer.decode,它应用于数字序列以产生原始源文本。在你的例子中,你有一批句子(即序列序列),所以你需要在你的张量上迭代函数,即

decoded = [tokenizer.decode(x) for x in xs]

其中tokenizer您的标记化模型并xs要解码的张量。


也许也很有用:

tokenizer还提供了方法convert_ids_to_tokens这些方法可以执行名称所暗示的操作,convert_tokens_to_string方法可以将子单词标记合并到单词中以恢复原始输入。

最新更新