我无法理解一件事,当它说“BERT 微调”时,它实际上意味着什么:
- 我们是否使用新数据再次重新训练整个模型。
- 或者我们只是用新数据训练前几个转换器层。
- 或者我们正在训练整个模型,但将预训练权重视为初始权重。
- 或者,变压器层之上已经有几层人工神经网络,仅接受训练以保持变压器权重卡住。
尝试过 Google,但我很困惑,是否有人可以帮助我。
提前致谢!
最佳答案
我记得读过关于Twitter poll的文章具有类似的上下文,并且似乎大多数人倾向于接受您的建议3.(或其变体)作为标准定义。
但是,这显然并不能代表每一个作品,但我认为可以相当肯定地说,在谈论微调时通常不包括1.。除非您拥有大量(已标记的)特定于任务的数据,否则此步骤将称为模型预训练。
2. 和 4. 也可以考虑进行微调,但从个人/轶事经验来看,允许所有参数在微调期间更改已提供了显着的效果更好的结果。根据您的用例,这也很容易进行实验,因为卡住层在 Huggingface 转换器等库中是微不足道的。
无论哪种情况,我都会将它们视为 3. 的变体,因为您隐含地假设我们在这些情况下从预先训练的权重开始(如果我错了,请纠正我)。
因此,我尽力给出一个简洁的定义:
Fine-tuning refers to the step of training any number of parameters/layers with task-specific and labeled data, from a previous model checkpoint that has generally been trained on large amounts of text data with unsupervised MLM (masked language modeling).
关于nlp - "fine-tuning of a BERT model"指的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67783283/