关于T5模型中<extra_id*>类特殊token含义的技术问询
关于mT5模型中<extra_id0>等特殊token的解答
- 你的猜测不完全准确,这些
<extra_id-*>系列token是T5(包括mT5)专为**文本填充(text infilling)**预训练任务设计的,并非传统MLM任务的掩码token。 - T5的预训练核心是“文本到文本”统一框架,文本填充任务的逻辑是:把输入文本里的连续片段替换成一个
<extra_id>token,模型需要在输出中生成被替换的内容,同时用对应的<extra_id>标记填充位置。比如输入为"今天<extra_id0>去<extra_id1>",模型输出需要是"<extra_id0>打算<extra_id1>公园",以此完成内容填充训练。 - 这类token不在
T5Tokenizer.special_tokens里的原因是:HuggingFace将它们归类为附加特殊token(additional_special_tokens),你可以通过调用tokenizer.additional_special_tokens来查看完整列表。 - 你在模型未充分训练时看到这些token,是因为模型还没掌握当前条件生成/文本分类任务的映射逻辑,反而退回了预训练阶段的文本填充任务模式,所以会输出这类预训练常用的特殊标记。
内容的提问来源于stack exchange,提问作者Sean
相关产品推荐
相关产品推荐

