【发布时间】:2020-08-03 00:34:35
【问题描述】:
返回 last_hidden_state (torch.FloatTensor 的形状 (batch_size, sequence_length, hidden_size)):隐藏状态的序列 模型最后一层的输出。
pooler_output (torch.FloatTensor: 形状 (batch_size, hidden_size)): 序列的第一个标记的最后一层隐藏状态 (分类标记)由线性层和 Tanh 进一步处理 激活函数。线性层权重是从 下一句预测(分类)目标在 预训练。
这个输出通常不能很好地概括语义内容 输入,你通常会更好地对序列进行平均或池化 整个输入序列的隐藏状态。
hidden_states (tuple(torch.FloatTensor),可选,当返回 config.output_hidden_states=True):torch.FloatTensor 的元组(一个用于 嵌入的输出 + 每层的输出一个) 形状(batch_size、sequence_length、hidden_size)。
每层输出的模型隐藏状态加上 初始嵌入输出。
attentions(tuple(torch.FloatTensor),可选,当返回 config.output_attentions=True):torch.FloatTensor 的元组(一个用于 每层)的形状(batch_size,num_heads,sequence_length, 序列长度)。
attention softmax 之后的 Attentions 权重,用于计算 自注意力头中的加权平均值。
这是来自https://huggingface.co/transformers/model_doc/bert.html#bertmodel。虽然文档中的描述很清楚,但是我还是不明白退货的hidden_states。有一个元组,一个用于嵌入的输出,另一个用于每一层的输出。 请告诉我如何区分它们,或者它们的含义是什么?非常感谢!![wink~
【问题讨论】:
-
您可能会发现这个 Jupyter Notebook 教程很有用:github.com/BramVanroy/bert-for-inference/blob/master/…
标签: nlp pytorch huggingface-transformers bert-language-model electrate