首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BERT: AttributeError:'RobertaForMaskedLM‘对象没有属性'bert’

BERT: AttributeError:'RobertaForMaskedLM‘对象没有属性'bert’
EN

Stack Overflow用户
提问于 2021-07-15 03:36:32
回答 1查看 114关注 0票数 0

我正在尝试使用以下代码冻结我的屏蔽语言模型的一些层:

代码语言:javascript
复制
for param in model.bert.parameters():
    param.requires_grad = False

然而,当我执行上面的代码时,我得到了这个错误:

代码语言:javascript
复制
AttributeError: 'RobertaForMaskedLM' object has no attribute 'bert'

在我的代码中,我为我的屏蔽语言模型导入了以下内容,但我不确定是什么导致了上面的错误:

代码语言:javascript
复制
from transformers import AutoModelForMaskedLM
model = AutoModelForMaskedLM.from_pretrained(model_checkpoint)

到目前为止,我已经尝试在我的代码中用model替换bert,但是不起作用。

任何帮助都是好的。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2021-08-19 09:15:46

如果查看RobertaForMaskedLM代码here的源代码,就会发现没有名为bert的对象。相反,它们有一个属于RobertaModel类型的对象roberta

因此,要冻结Roberta模型并只训练LM头,您应该将代码修改为:

代码语言:javascript
复制
for param in model.roberta.parameters():
    param.requires_grad = False
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68384132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档