首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >transformers库中BertModel中的hidden_states元组的内容是如何排列的

transformers库中BertModel中的hidden_states元组的内容是如何排列的
EN

Stack Overflow用户
提问于 2020-04-15 19:49:22
回答 1查看 167关注 0票数 1
代码语言:javascript
复制
model = BertModel.from_pretrained('bert-base-uncased', config=BertConfig.from_pretrained('bert-base-uncased',output_hidden_states=True))
outputs = model(input_ids) 
hidden_states = outputs[2]

hidden_states是13个torch.FloatTensors的元组。每个张量的大小为:(batch_size, sequence_length, hidden_size)。根据文档,13个张量是嵌入和12个编码层的隐藏状态。

我的问题是:

hidden_states[0]是嵌入层,而hidden_states[12]是第12个编码层,还是

hidden_states[0]是嵌入层,而hidden_states[12]是第一个编码层,还是

hidden_states[0]是第12个编码层,而hidden_states[12]是嵌入层,还是

hidden_states[0]是第一个编码层,而hidden_states[12]是嵌入层吗

我在其他任何地方都没有发现这一点。

EN

回答 1

Stack Overflow用户

发布于 2020-04-16 19:28:25

查看BertModel的source-code,可以得出结论,hidden_states包含初始嵌入层的输出,元组中的其余元素按每层的递增顺序包含隐藏状态。简单地说,hidden_states1包含第一层BERT的输出,而hidden_states12包含最后一层,即第12层。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61227950

复制
相关文章

相似问题

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