我对NLP任务中的序列到序列RNN感到相当困惑。之前,我已经实现了一些分类任务的神经模型。在这些任务中,模型以词嵌入作为输入,并在网络末端使用softmax层进行分类。但是,神经模型是如何处理序列到序列任务的呢?如果输入是词嵌入,那么神经模型的输出是什么?这些任务的例子包括问答、对话系统和机器翻译。
回答:
你可以使用编码器-解码器架构。编码器部分将你的输入编码成一个固定长度的向量,然后解码器将这个向量解码成你的输出序列,无论这个序列是什么。编码和解码层可以针对你的目标函数共同学习(仍然可以涉及softmax)。查看这篇论文,它展示了这种模型如何在神经机器翻译中使用。这里的解码器一次发出一个词,以生成正确的翻译。