微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 facebook/bart-large-cnn 上用 Huggingface/transformers火炬预训练的 BartForConditionalGeneration 输出注意力

如何解决在 facebook/bart-large-cnn 上用 Huggingface/transformers火炬预训练的 BartForConditionalGeneration 输出注意力

按照这个stackoverflow问题: Outputting attention for bert-base-uncased with huggingface/transformers (torch)

我正在利用 Hugging-face 的 Bart 模型来总结文本。特别是,我将按照他们的建议使用“Bart 进行条件生成

我正在尝试根据不同的主题识别、分析和调整文章的编码器注意力层。

我用来设置模型的代码如下:

from transformers import BartForConditionalGeneration,BartTokenizer,BartConfig
import torch

config = BartConfig.from_pretrained(model_name,output_hidden_states=True,output_attention=True)
model = BartForConditionalGeneration.from_pretrained(model_name,config=config)
tokenizer = BartTokenizer.from_pretrained(model_name)
tokenized_sequence = tokenizer.tokenize(article)
indexed_tokens = tokenizer.encode(tokenized_sequence,return_tensors='pt')
outputs = model(indexed_tokens,return_dict=True)

现在,我正在尝试了解模型的不同输出

下面列出了输出的键,但不包括注意力层?

logits: [1,599,50264] -> [index,UnkNown?,vocab size]
past_key_values: tuple,len=12 -> 12 hidden layers
decoder_hidden_states: tuple,len=13 -> input bedding + 12 hidden layers
encoder_last_hidden_state: [1,1024] -> [index,unkNown,layers]
encoder_hidden_states: tuple,len=13 -> input bedding + 12 hidden layers

我是否遗漏了注意力层的存储位置?

从更一般的意义上说,采用注意力层,隔离似乎对选定主题具有 1-1 映射的神经元是否是一个明智的想法,例如“汽车”总是以 0.6 激活神经元 507,并尝试强制编码器注意层向前推进文本以更好地总结主题为“汽车”的文章

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。