我正在尝试实现一个模型,该模型使用来自不同数据集的多个经过预训练的BERT模型的编码,并使用完全连接的层获得组合的表示形式。在这种情况下,我希望BERT模型保持固定,并且仅训练完全连接的层。拥抱面部变压器有可能实现这一目标吗?我看不到任何允许我这样做的标志。
PS:我不想绕过每个BERT模型的输入编码转储并将其用作输入的方式。
答案 0 :(得分:1)
一个简单的解决方案是在传递给优化器时,仅排除与BERT模型相关的参数。
param_optimizer = [x for x in param_optimizer if 'bert' not in x[0]]
optimizer = AdamW(param_optimizer, lr)