多个序列的 Roberta 分词

Roberta Tokenization of multiple sequences

huggingface-transformers 中的 Roberta Tokenizer 描述了 Roberta 的标记化 这样的方法:

- single sequence: ``<s> X </s>``
- pair of sequences: ``<s> A </s></s> B </s>``

我很好奇为什么多个序列的标记化不是<s> A </s><s> B </s>

基于上述内容,如果我要手动编码两个以上的序列,我应该将它们编码为 <s> A </s></s> B </s></s> C </s> 还是 <s> A </s><s> B </s><s> C </s>

与许多其他问题一样,"because it has been pretrained that way" 可能最能回答这个问题。

transformer 系列中模型的主要优点是其中包含大量的预训练。除非你愿意复制那个预训练阶段的weeks/months,否则我认为最好接受这个特性。

与此相关,这也意味着您建议的一次输入两个以上句子的方法可能行不通,请参阅 this 相关问题;由于 RoBERTa 没有接受过接受超过两个句子的输入的训练,如果没有非常大的预训练数据集,它可能无法工作。

我认为对于更多特定于实现的细节,您可能还应该转到 huggingface 问题跟踪器本身,这听起来像是一个很有前途的功能,其他人可能有兴趣为自己工作 on/use。但请记住,令牌限制保持不变,512 个令牌对于三个或更多句子来说并不多...