库名称:transformers
语言:
- 英语
许可证:apache-2.0
基础模型:facebook/bart-large
标签:
- 映射归约
- 摘要生成
数据集:
- pszemraj/summary-map-reduce-v1
管道标签:文本到文本生成
缩略图:>-
https://cdn-uploads.huggingface.co/production/uploads/60bccec062080d33f875cd0c/Sv7_-MM901qNkyHuBdTC_.png
bart-large-summary-map-reduce
一个文本到文本模型,用于将分块长文档的摘要“映射归约”为一个摘要。
该模型作为textsum(或任何其他类似的长文档摘要方法)的后处理器的说明:

修改自Google博客的流程图此处
详情
该模型是基于facebook/bart-large在pszemraj/summary-map-reduce数据集上微调的版本。
在评估集上取得了以下结果:
- 损失:0.7894
- 输入令牌数量:14258488
使用方法
[!TIP]
BART支持GPU推理的多种加速方法,包括flash-attention2和torch SDPA
一个聚合长文档分块摘要的示例:
import torch
from transformers import pipeline
pipe = pipeline(
"text2text-generation",
model="pszemraj/bart-large-summary-map-reduce",
device_map="auto",
)
text = """"Sangers on a Train"是一部1950年的电影,讲述火车司机Guy Haines发现妻子Miriam在华盛顿特区的Metcalf被谋杀的故事。影片深入探讨了Guy与Anne Burton的关系,聚焦于Guy希望Anne嫁给他的愿望。
"Screentalk"是一部关于Anne Burton和丈夫Guy Haines调查女儿Miriam谋杀案的喜剧。剧情围绕Anne与被捕的Bruno之间的关系展开。在第二幕中,Guy和Anne在华盛顿特区的网球场见面,计划进行比赛。Hennessy和Hammond调查犯罪现场,导致Guy被捕。
"The Announcer's Boom Forest Hills"是Guy Haines和Bruno Antony之间的网球比赛,比分为六比五。在第二幕中,Haines以三比四领先,但他的对手Bernard Reynolds在第三幕中攻击了他。与此同时,Anne Hennessy和Barbara Hammond在游乐园准备晚餐,Guy已等待数小时。一辆警车抵达,随后是一辆出租车。船夫和侦探跟随Guy穿过队伍,最终认定Guy是事故的责任人。"""
text = """一种生成句法对象的计算机实现方法。该方法包括以下步骤:提供多个输入数据集,每个输入数据集包含一个或多个单词,其中每个单词与至少一个非相邻的第二个单词相关联;通过将新伊恩事件语义应用于输入数据,在第一和第二单词之间创建离心关系,从而生成句法对象;并存储生成的句法对象以供将来使用。
一种学习和使用语言的方法。该方法包括以下步骤:创建单词词典,其中词典中的每个单词至少有两种可能的状态,选择一组可能的状态作为后续计算操作的基础状态,并将计算操作应用于基础状态以形成新的输出状态。
一种将第一个工作空间更改为第二个工作空间的计算机实现方法。该方法包括以下步骤:通过合并第一个工作空间和第二个工作空间创建新的工作空间,其中合并基于以下至少一项:不可穿透的条件;移动限制;资源限制。
大脑不断丢失神经元,因为你不希望周围有垃圾。"""
if torch.cuda.is_available():
torch.cuda.empty_cache()
res = pipe(
text,
max_new_tokens=512,
num_beams=4,
early_stopping=True,
truncation=True,
)
print(res[0]["generated_text"])
训练过程
训练超参数
训练过程中使用了以下超参数:
- 学习率:0.0001
- 训练批次大小:4
- 评估批次大小:4
- 随机种子:17868
- 梯度累积步数:16
- 总训练批次大小:64
- 优化器:使用OptimizerNames.PAGED_ADAMW,betas=(0.9,0.999),epsilon=1e-08,无额外优化器参数
- 学习率调度器类型:余弦
- 学习率调度器预热比例:0.05
- 训练轮数:3.0