我\xe2\x80\x99m 尝试使用我自己的数据集和 HuggingFace 库从头开始训练 BERT 模型。我想以一种与原始 BERT 模型完全相同的架构来训练模型。
\n在原始论文中,它指出:\xe2\x80\x9cBERT 在两个任务上进行训练:预测随机掩码标记(MLM)和预测两个句子是否相互跟随(NSP)。SCIBERT 遵循与 BERT 相同的架构,但在科学文本上进行了预训练。\xe2\x80\x9d
\nI\xe2\x80\x99m 试图了解如何在上述两个任务上训练模型。目前,我初始化模型如下:
\nfrom transformers import BertForMaskedLM\nmodel = BertForMaskedLM(config=config)\n
Run Code Online (Sandbox Code Playgroud)\n然而,它仅适用于 MLM,而不适用于 NSP。我怎样才能用 NSP 初始化和训练模型,或者也许我原来的方法就很好?
\n我的假设是
\n初始化BertForPreTraining
(对于 MLM 和 NSP),或者
完成训练后BertForMaskedLM
,初始化相同的模型并再次训练BertForNextSentencePrediction
(但这种方法\xe2\x80\x99s计算和\n资源将花费两倍\xe2\x80\xa6)
I\xe2\x80\x99m 不确定哪一个是正确的方法。任何见解或建议将不胜感激。
\nnlp transformer-model deep-learning bert-language-model huggingface-transformers
nlp ×1