代码之家  ›  专栏  ›  技术社区  ›  Shubham Panchal

在seq2seq translations中,将<start>和<end>标记放在哪里?

  •  0
  • Shubham Panchal  · 技术社区  · 6 年前

    我看了很多教程,在那里我的问题的答案是不同的。

    所以,对于seq2seq模型(英法翻译),我有 encoder_input_data 有英文短语没有 <start> <stop> 标签。 我很困惑 decoder_input_data decoder_target_data .

    目前,我的数据是以这样一种方式组织的,结果一无所获。

    • 解码器输入数据 :包含同时包含 <开始& GT; <停止& 标签。
    • 解码器目标数据 :包含只有 <停止& 标签。

    这个 lesson from Google 说英语和法语短语必须在开头和结尾都有标记。而且,我也没有结果。

    我应该把 <开始& GT; <停止& 解码器输入中的标签?或者,我应该只包括 <开始& GT; 在解码器的输入中,只有 <停止& 在解码器的目标中添加标签?为NMT放置这些标签的正确方法是什么?

    0 回复  |  直到 6 年前
        1
  •  2
  •   cloudyyyyy    6 年前

    你应该把 <start> 在解码器的输入端加上标签 <end> 在解码器的目标中标记。

    请看下图:

    enter image description here

    这个 <开始& GT; 解码器输入中的标记用于预测解码器中的第一个令牌,并且 <结束gt; 解码器目标中的标记用于标记解码器中的结束。

    没有必要 <开始& GT; 在目标中标记,因为解码器中有一个清晰的初始值。而且,没有必要 <结束gt; 在输入中标记,因为结尾是由输出而不是输入标记的。

    此外,还有一些工作 <开始& GT; <结束& gt; 同样的标记。实际上,他们在不同的地方,所以他们没有冲突。

    例如:

    enter image description here