【问题标题】:Roberta Tokenization of multiple sequences多个序列的罗伯塔标记化
【发布时间】:2020-04-28 16:07:03
【问题描述】:

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

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

我很好奇为什么多个序列的标记化不是&lt;s&gt; A &lt;/s&gt;&lt;s&gt; B &lt;/s&gt;

在上述基础上,如果我要手动编码两个以上的序列,我应该将它们编码为 &lt;s&gt; A &lt;/s&gt;&lt;/s&gt; B &lt;/s&gt;&lt;/s&gt; C &lt;/s&gt; 还是 &lt;s&gt; A &lt;/s&gt;&lt;s&gt; B &lt;/s&gt;&lt;s&gt; C &lt;/s&gt;

【问题讨论】:

    标签: huggingface-transformers


    【解决方案1】:

    与许多其他问题一样,最好用“因为它已经以这种方式预训练”来回答这个问题。

    transformer 系列中模型的主要优势在于其中包含大量的预训练。除非您愿意复制该预训练阶段的几周/几个月,否则我认为最好接受该功能。

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

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

    【讨论】:

      猜你喜欢
      • 2020-11-23
      • 1970-01-01
      • 2021-09-15
      • 2023-03-23
      • 2022-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-15
      相关资源
      最近更新 更多