2017-06-16 76 views
0

在NLP任务中,人们用SOC(句首)和EOC(句尾)注释一个句子是很常见的。他们为什么这样做?为什么我们在NLP任务中填充?

它是一个任务依赖性能?例如,在NER问题中填充填充的原因与填充翻译问题的原因不同?与在NER问题中一样,您可以使用填充以从上下文中提取更多有用的特征,但是在翻译问题中,您可以使用填充来识别句子的末尾,因为解码器是逐句训练的。

回答

0

为什么的输出在NLP中填充?

假设我们想使用RNN(循环神经网络)为我们完成一个句子。让我们给它一句“如果一开始你不成功”。我们希望它输出“尝试再试一次”,然后知道停止。这是重要的一站。如果我们只使用一段时间,那么我们不能使用相同的RNN来输出多句子响应。

如果我们使用RNN来回答问题,那么答案可能有多个句子。

为什么有开始输出在NLP中填充?

假设我们在诗歌上训练RNN,我们希望它能以我们训练它的方式创作原创诗歌。我们将不得不给它第一个启动诗歌的标志。我们可以给它第一个字,... 我们可以说开始。如果我们训练RNN到总是从一个唯一的标记开始(如输出标记的开始),那么RNN可以选择使用的第一个字。

摘要

的开始和的事情的东西到底是这么直观的告诉我们,我认为这是很容易忘记,在一个点上,我们必须知道什么时候适可而止(完令牌)和何时或如何开始(开始令牌),但是RNN必须学习这两件事情。

相关问题