MLM
掩码语言模型(MLM)是 BERT 预训练的方式。研究表明,在您自己的数据上继续进行 MLM 可以提高性能(请参阅 Don’t Stop Pretraining: Adapt Language Models to Domains and Tasks)。在我们的 TSDAE 论文中,我们也表明 MLM 是学习句子嵌入的强大预训练策略。尤其是在您处理某些专业领域时,更是如此。
注意:单独运行 MLM 不会产生好的句子嵌入。但是,您可以先使用 MLM 在您领域特定的数据上微调您喜欢的 transformer 模型。然后,您可以使用您拥有的标注数据,或者使用其他数据集(如 NLI、Paraphrases 或 STS)来微调模型。

运行 MLM
train_mlm.py 脚本提供了一个在您的数据上运行 MLM 的便捷选项。您可以通过以下方式运行此脚本:
python train_mlm.py distilbert-base path/train.txt
您也可以提供一个可选的开发数据集
python train_mlm.py distilbert-base path/train.txt path/dev.txt
train.txt / dev.txt 中的每一行都被解释为 transformer 网络的一个输入,即一个句子或段落。
有关如何使用 huggingface transformers 运行 MLM 的更多信息,请参阅 语言模型训练示例。