【问题标题】:What is the simplest way to continue training a pre-trained BERT model, on a specific domain?在特定领域继续训练预训练的 BERT 模型的最简单方法是什么?
【发布时间】:2021-07-20 17:49:58
【问题描述】:

我想使用预训练的 BERT 模型,以便在文本分类任务中使用它(我正在使用 Huggingface 库)。但是,预训练模型是在与我不同的领域上训练的,并且我有一个大型未注释数据集,可用于对其进行微调。如果我只使用我的标记示例并在针对特定任务 (BertForSequenceClassification) 进行训练时“随时随地”对其进行微调,那么数据集太小而无法适应特定领域的语言模型。最好的方法是什么? 谢谢!

【问题讨论】:

标签: nlp text-classification bert-language-model huggingface-transformers pytorch-lightning


【解决方案1】:

让我们先澄清几点以减少歧义。

  1. BERT 使用两个预训练目标:Masked Language Modeling (MLM) 和 Next Sentence Prediction。
  2. 您提到有一个大型未注释数据集,您计划使用它来微调您的 BERT 模型。这不是微调的工作方式。为了微调您的预训练模型,您需要一个注释数据集,即用于序列分类下游任务的文档和类对。

那你能做什么?首先,使用由特定领域词汇组成的未注释数据集扩展您的通用域标记器。然后,使用这个扩展的分词器,您可以继续对 MLM 和/或 NSP 目标进行预训练,以修改您的词嵌入。最后,使用带注释的数据集微调您的模型。

【讨论】:

  • 如果您的注释数据集规模较小,例如,约 1000 个样本和约 40 个唯一类,该怎么办?
猜你喜欢
  • 1970-01-01
  • 2020-09-30
  • 2019-02-04
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 1970-01-01
  • 2017-07-28
  • 1970-01-01
相关资源
最近更新 更多