【发布时间】:2020-04-20 07:55:06
【问题描述】:
我最近开始使用 PyTorch 进行 ML/DL。下面的 pytorch 示例说明了我们如何训练一个简单的模型来将德语翻译成英语。
https://pytorch.org/tutorials/beginner/torchtext_translation_tutorial.html
但是,我对如何使用模型对自定义输入进行推理感到困惑。据我目前的理解:
1) 我们需要保存德语(输入)和英语(输出)的“词汇”[使用 torch.save()],以便以后可以将它们用于运行预测。
2) 在对德语段落进行推理时,我们首先需要使用德语词汇文件将德语文本转换为张量。
3) 上面的张量会传递给模型的forward方法进行平移
4) 模型将再次返回目标语言的张量,即当前示例中的英语。
5) 我们将使用第一步保存的英语词汇将该张量转换回英文文本。
问题:
1) 如果上述理解是正确的,如果我们知道源语言和目标语言并且拥有相同的词汇文件,上述步骤是否可以被视为在任何语言翻译模型上运行推理的通用方法?或者我们可以使用spacy等第三方库提供的词汇吗?
2) 我们如何将模型返回的输出张量转换回目标语言?我找不到任何关于如何做到这一点的例子。上面的博客解释了如何使用源语言词汇将输入文本转换为张量。
我可以很容易地找到图像/视觉模型的各种示例和详细说明,但对于文本来说却不多。
【问题讨论】:
-
你好,苛刻!您是否找到了解决方案或解决方法?我也坚持这一点,我已经尽我所能但没有奏效。如果你不介意分享你为摆脱这个坑所做的代码。请把链接放在这里!!
标签: deep-learning pytorch torch language-translation torchtext