访问几层预训练的DistilBERT模型的输出

2024-04-27 04:31:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从预训练的“DistilBERT”模型的几个不同层访问输出嵌入。(“迪斯蒂尔伯特基地无病”)

bert_output = model(input_ids, attention_mask=attention_mask)

bert_输出似乎只返回最后一层输入标记的嵌入值


Tags: 标记模型idsinputoutputmodelmask基地
1条回答
网友
1楼 · 发布于 2024-04-27 04:31:00

如果希望获得所有隐藏层的输出,则需要将output_hidden_states=Truekwarg添加到配置中

您的代码看起来像

from transformers import DistilBertModel, DistilBertConfig

config = DistilBertConfig.from_pretrained('distilbert-base-cased', output_hidden_states=True)
model = DistilBertModel.from_pretrained('distilbert-base-cased', config=config)

隐藏层将作为bert_output[2]提供

相关问题 更多 >