带有字符嵌入的BERT训练

时间:2020-03-31 02:30:42

标签: nlp pytorch tokenize transformer

将BERT模型中的令牌化范例更改为其他内容有意义吗?也许只是简单的单词标记或字符级标记?

2 个答案:

答案 0 :(得分:3)

这是论文“ CharacterBERT: Reconciling ELMo and BERT for Word-Level Open-Vocabulary Representations From Characters”背后的动机,在该论文中,BERT的单词系统被丢弃,并被CharacterCNN取代(就像ELMo中一样)。这样,就可以使用字级标记,而不会出现任何OOV问题(因为该模型会处理每个标记的字符),并且该模型会为任何任意输入标记生成单个嵌入。

从性能角度来看,该论文表明,CharacterBERT通常至少和BERT一样好,同时对嘈杂的文本也更健壮。

答案 1 :(得分:0)

这取决于您的目标是什么。使用标准单词标记当然可以工作,但是很多单词最终会超出词汇表,这将导致模型的性能下降。

从研究的角度来看,完全在字符级别上工作可能会很有趣:了解如何建模将学会自己对文本进行分割,以及与标准标记化相比如何进行分割。我不确定是否可以实际使用。字符序列比子单词序列长得多,并且BERT需要序列长度中的二次存储,这只会不必要地减慢训练和推理的速度。