模型简介
模型特点
模型能力
使用案例
language:
-
en license: apache-2.0 tags:
-
摘要生成
-
总结
-
笔记
-
bigbird_pegasus_
-
pegasus
-
bigbird datasets:
-
kmfoda/booksum metrics:
-
rouge widget:
-
text: 沿某一断层段发生的大地震并非随机间隔出现,因为破裂所需的应变能量需要时间积累。构造板块移动及其边界应变积累的速率大致是均匀的。因此,初步近似下,可以预期同一断层段的大破裂将以大致恒定的时间间隔发生。如果后续主震在断层上的滑移量不同,那么复发时间可能变化,周期性主震的基本概念必须修正。对于大型板块边界破裂,其长度和滑移量常有2倍的变化。沿圣安德烈亚斯断层南段,复发间隔为145年,并有几十年的波动。平均复发间隔的标准差越小,对未来主震的长期预测就能越具体。 example_title: 地震
-
text: ' 一种典型的正向传播神经场算法。时空坐标输入神经网络,预测重建域中的值。然后,该域映射到传感器域,其中传感器测量值作为监督信号可用。类别与章节解决的问题概述(第2节)反问题、不适定问题、可编辑性;对称性。混合表示(第3节)计算与内存效率、表示能力、可编辑性:正向映射(第4节)反问题网络架构(第5节)频谱偏差、积分与导数。操纵神经场(第6节)可编辑性、约束、正则化。表2:神经场工具箱中的五类技术分别解决学习、推理和控制中出现的问题。(第3节)。我们可以通过可微的正向映射来监督重建,这些映射转换或投影我们的域(例如,通过2D图像进行3D重建;第4节)通过适当的网络架构选择,我们可以克服神经网络频谱偏差(模糊)并高效计算导数和积分(第5节)。最后,我们可以操纵神经场以添加约束和正则化,并实现可编辑的表示(第6节)。这些类别共同构成了帮助解决神经场问题的技术“工具箱”。条件神经场包含三个组件:(1)编码器或推理函数€,给定观测0,输出条件潜变量2,E(0)=2。2通常是低维向量,常被称为潜码或特征码。(2)Z与神经场参数O之间的映射函数4:Y(z)=O;(3)神经场本身$。编码器€找到给定观测O的最可能z:argmaxz P(2/0)。解码器最大化逆条件概率以找到给定Z的最可能0:argmax P(Olz)。我们讨论不同编码方案及其最优性保证(第2.1.1节),全局与局部条件(第2.1.2节),以及不同映射函数Y(第2.1.3节)2. 泛化假设我们希望估计给定部分或有噪点云的合理3D表面形状。我们需要在重建域中对表面施加合适的先验,以泛化到部分观测。神经网络通过其架构和参数0的函数空间表达先验,泛化受此函数空间归纳偏差影响(第5节)。' example_title: 科学论文
-
text: ' 大数据现象的关键特性之一是来自不同来源的数据多样性。因此,在考虑如何处理这些数据及设计最佳架构之前,了解数据在各种环境和场景中如何生成是有益的。第2章描述的IT架构演变意味着数据不再由少数大型单体系统处理,而是由一组服务处理。与处理层并行,底层数据存储也变得更加分布式。这反过来需要重大范式转变,因为传统事务方法(ACID)不再适用。此外,云计算正成为主流方法,其优势在于降低成本并提供按需扩展,但同时也引入了隐私、数据所有权等担忧。与此同时,互联网持续指数级增长:每天都有结构化和非结构化数据发布并可供处理。为获得竞争优势,企业需将其内部资源与外部服务(如金融市场、天气预报、社交媒体等)关联。尽管部分网站提供某种API以更有序方式访问数据,但无数来源需要高级网络挖掘和自然语言处理(NLP)技术。科学进步推动研究人员构建新仪器观测宇宙或进行实验以更好理解物理及其他领域规律。人类每年都有新望远镜、太空探测器、粒子加速器等工具可用。这些仪器生成海量数据流,需要存储和分析。工业界对效率的持续追求促使引入新自动化技术和流程优化:这离不开描述这些过程的精确数据分析。随着越来越多人类任务自动化,机器提供丰富数据集,可实时分析以将效率提升至新水平。最后,物联网的增长显然正成为主要数据源。越来越多设备配备强大计算能力,并能从其传感器生成连续数据流。本章后续部分将考察上述领域,了解它们生成的数据集。我们将比较数据量,并从各自视角审视其特性与重要性。3.1 互联网无疑是人类创建的最大数据库。尽管通过此媒介可获得若干描述清晰、清洗和结构化的数据集,但大多数资源具有模糊、非结构化、不完整甚至错误性质。然而,意见挖掘、社交媒体分析、电子政务等领域的多个案例清楚展示了这些资源的潜力。成功挖掘和解读互联网数据者可在业务中获得独特洞察和竞争优势。企业IT与互联网边缘数据分析的重要领域是网络分析。' example_title: 数据科学教材
-
text: ' 基于Transformer的模型已证明对许多NLP任务非常有用。然而,这类模型的主要限制是其O(n^2)时间与内存复杂度(n为序列长度)。因此,对长序列(n>512)应用基于Transformer的模型计算成本极高。近期多篇论文如Longformer、Performer、Reformer、聚类注意力试图通过近似完整注意力矩阵解决此问题。若对这些模型不熟悉,可查阅🤗最新博客文章。
BigBird(论文中提出)是解决此问题的最新模型之一。BigBird依赖块稀疏注意力而非常规注意力(如BERT的注意力),能以远低于BERT的计算成本处理长达4096的序列。它在涉及超长序列的任务(如长文档摘要、长上下文问答)中实现了SOTA。
BigBird RoBERTa类模型现已在🤗Transformers中提供。本文目标是让读者深入理解BigBird实现,并轻松使用🤗Transformers中的BigBird。但深入之前需记住,BigBird的注意力是对BERT完整注意力的近似,因此不追求优于BERT的注意力,而是更高效率。它仅允许将基于Transformer的模型应用于更长序列,因为BERT的二次内存需求很快变得难以承受。简言之,若有∞计算与∞时间,BERT的注意力将优于块稀疏注意力(本文讨论内容)。
若疑惑为何处理更长序列时需要更多计算,这篇博客正适合您!
使用标准BERT类注意力时的主要问题包括:
所有token真的需要关注所有其他token吗?为何不仅计算重要token上的注意力?如何决定哪些token重要?如何以高效方式仅关注少数token?本文将尝试回答这些问题。
应关注哪些token?我们通过考虑句子“BigBird现已可用于HuggingFace的抽取式问答”来实际说明注意力机制。在BERT类注意力中,每个词将简单关注所有其他token。
让我们通过编写伪代码思考被查询token实际应关注的合理关键token列表。假设查询token为“available”,并构建应关注的合理关键token列表。
以下句为例
example = ['BigBird', 'is', 'now', 'available', 'in', 'HuggingFace', 'for', 'extractive', 'question', 'answering']
假设我们试图理解“available”的表征
query_token = 'available'
初始化空集,并随着本节进展填充感兴趣的token
key_tokens = [] # => 当前“available” token无关注对象 邻近token应重要,因为在句子(词语序列)中,当前词高度依赖相邻过去与未来token。此直觉是滑动注意力概念背后的思想。' example_title: bigbird博客介绍 inference: parameters: max_length: 64 no_repeat_ngram_size: 2 encoder_no_repeat_ngram_size: 3 repetition_penalty: 2.4 length_penalty: 0.5 num_beams: 4 early_stopping: true model-index:
-
name: pszemraj/bigbird-pegasus-large-K-booksum results:
- task:
type: summarization
name: 摘要生成
dataset:
name: kmfoda/booksum
type: kmfoda/booksum
config: kmfoda--booksum
split: test
metrics:
- type: rouge value: 34.0757 name: ROUGE-1 verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiYzk3NmI2ODg0MDM3MzY3ZjMyYzhmNTYyZjBmNTJlM2M3MjZjMzI0YzMxNmRmODhhMzI2MDMzMzMzMmJhMGIyMCIsInZlcnNpb24iOjF9.gM1ClaQdlrDE9q3CGF164WhhlTpg8Ym1cpvN1RARK8FGKDSR37EWmgdg-PSSHgB_l9NuvZ3BgoC7hKxfpcnKCQ
- type: rouge value: 5.9177 name: ROUGE-2 verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiMzdmMGU5ODhiMjcxZTJjODk3ZWI3NjY0NWJkMDFjYWI1ZDIyN2YwMDBjODE2ODQzY2I4ZTA1NWI0MTZiZGQwYSIsInZlcnNpb24iOjF9.ZkX-5RfN9cR1y56TUJWFtMRkHRRIzh9bEApa08ClR1ybgHvsnTjhSnNaNSjpXBR4jOVV9075qV38MJpqO8U8Bg
- type: rouge value: 16.3874 name: ROUGE-L verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiMWU4ODExMjEwZjcyOWQ3NGJkYzM4NDgyMGQ2YzM5OThkNWIyMmVhMDNkNjA5OGRkM2UyMDE1MGIxZGVhMjUzZSIsInZlcnNpb24iOjF9.2pDo80GWdIAeyWZ4js7PAf_tJCsRceZTX0MoBINGsdjFBI864C1MkgB1s8aJx5Q47oZMkeFoFoAu0Vs21KF4Cg
- type: rouge value: 31.6118 name: ROUGE-LSUM verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiYjY2ODJiZDg2MzI3N2M5NTU5YzIyZmQ0NzkwM2NlY2U0ZDQ5OTM0NmM5ZmI5NjUxYjA3N2IwYWViOTkxN2MxZCIsInZlcnNpb24iOjF9.9c6Spmci31HdkfXUqKyju1X-Z9HOHSSnZNgC4JDyN6csLaDWkyVwWs5xWvC0mvEnaEnigmkSX1Uy3i355ELmBw
- type: loss value: 3.522040605545044 name: loss verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiODAyZTFiMjUzYTIzNWI0YjQxOWNlZjdkYjcxNDY3ZjMyNTg3ZDdkOTg3YmEzMjFiYzk2NTM4ZTExZjJiZmI3MCIsInZlcnNpb24iOjF9.n-L_DOkTlkbipJWIQQA-cQqeWJ9Q_b1d2zm7RhLxSpjzXegFxJgkC25hTEhqvanGYZwzahn950ikyyxa4JevAw
- type: gen_len value: 254.3676 name: gen_len verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiMzdlY2U1ZTgwNGUyNGM4ZGJlNDNlY2RjOWViYmFkOWE0ZjMzYTU0ZTg2NTlkN2EyMTYyMjE0NjcwOTU4NzY2NiIsInZlcnNpb24iOjF9.YnwkkcCRnZWbh48BX0fktufQk5pb0qfQvjNrIbARYx7w0PTd-6Fjn6FKwCJ1MOfyeZDI1sd6xckm_Wt8XsReAg
- task:
type: summarization
name: 摘要生成
dataset:
name: launch/gov_report
type: launch/gov_report
config: plain_text
split: test
metrics:
- type: rouge value: 40.015 name: ROUGE-1 verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiMzE1MGM3ZDYzMDgwZGRlZDRkYmFmZGI4ODg0N2NhMGUyYmU1YmI5Njg0MzMxNzAxZGUxYjc3NTZjYjMwZDhmOCIsInZlcnNpb24iOjF9.7-SojdX5JiNAK31FpAHfkic0S2iziZiYWHCTnb4VTjsDnrDP3xfow1BWsC1N9aNAN_Pi-7FDh_BhDMp89csoCQ
- type: rouge value: 10.7406 name: ROUGE-2 verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiZjEwOTRjOTA4N2E0OGQ3OGY0OThjNjlkN2VlZDBlNTI4OGYxNDFiN2YxYTI2YjBjOTJhYWJiNGE1NzcyOWE5YyIsInZlcnNpb24iOjF9.SrMCtxOkMabMELFr5_yqG52zTKGk81oqnqczrovgsko1bGhqpR-83nE7dc8oZ_tmTsbTUF3i7cQ3Eb_8EvPhDg
- type: rouge value: 20.1344 name: ROUGE-L verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiYzkxZmJkYzdmOGI3Yzc1ZDliNGY3ZjE5OWFiYmFmMTU4ZWU2ZDUyNzE0YmY3MmUyMTQyNjkyMTMwYTM2OWU2ZSIsInZlcnNpb24iOjF9.FPX3HynlHurNYlgK1jjocJHZIZ2t8OLFS_qN8skIwbzw1mGb8ST3tVebE9qeXZWY9TbNfWsGERShJH1giw2qDw
- type: rouge value: 36.7743 name: ROUGE-LSUM verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiYjgxNmQ1MmEwY2VlYTAzMTVhMDBlODFjMDNlMjA4NjRiOTNkNjkxZWNiNDg4ODM1NWUwNjk1ODFkMzI3YmM5ZCIsInZlcnNpb24iOjF9.uK7C2bGmOGEWzc8D2Av_WYSqn2epqqiXXq2ybJmoHAT8GYc80jpEGTKjyhjf00lCLw-kOxeSG5Qpr_JihR5kAg
- type: loss value: 3.8273396492004395 name: loss verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiNzI4OTcwOGYzYmM5MmM2NmViNjc4MTkyYzJlYjAwODM4ODRmZTAyZTVmMjJlY2JiYjY0YjA5OWY4NDhjOWQ0ZiIsInZlcnNpb24iOjF9.p46FdAgmW5t3KtP4kBhcoVynTQJj1abV4LqM6MQ-o--c46yMlafmtA4mgMEqsJK_CZl7Iv5SSP_n8GiVMpgmAQ
- type: gen_len value: 228.1285 name: gen_len verified: true verifyToken: eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJoYXNoIjoiODY2OGUzNDlhNzM5NzBiMmNmMDZiNjNkNDI0MDkxMzNkZDE4ZjU4OWM1NGQ5Yjk3ZjgzZjk2MDk0NWI0NGI4YiIsInZlcnNpb24iOjF9.Jb61P9-a31VBbwdOD-8ahNgf5Tpln0vjxd4uQtR7vxGu0Ovfa1T9Y8rKXBApTSigrmqBjRdsLfoAU7LqLiL6Cg
- task:
type: summarization
name: 摘要生成
dataset:
name: kmfoda/booksum
type: kmfoda/booksum
config: kmfoda--booksum
split: test
metrics:
基于booksum数据集训练的bigbird pegasus模型
这是训练时间最长的“最新”版本模型,当前已训练70k步
- 目标: 开发一个摘要生成模型,1) 准确概括源内容 2) 更重要的 生成易于阅读和理解的摘要(不像arXiv那样晦涩)
- 本模型尝试通过使用booksum数据集提供解释性摘要来实现这一目标
- 解释性摘要 - 既整合信息又解释为何这些整合信息重要的摘要
- 该模型共训练了七个周期(约70,000步),已接近完成
- 将根据结果发现/反馈继续改进(由于训练时间已很长,改进速度会较慢)
- 初始检查点为
google/bigbird-pegasus-large-bigpatent
使用示例
包含批量摘要演示的完整示例见此处
- 创建摘要生成器对象:
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
from transformers import pipeline
model = AutoModelForSeq2SeqLM.from_pretrained(
"pszemraj/bigbird-pegasus-large-K-booksum",
low_cpu_mem_usage=True,
)
tokenizer = AutoTokenizer.from_pretrained(
"pszemraj/bigbird-pegasus-large-K-booksum",
)
summarizer = pipeline(
"summarization",
model=model,
tokenizer=tokenizer,
)
- 定义待摘要文本并传入管道。完成。
wall_of_text = "此处填入需要摘要的文本"
result = summarizer(
wall_of_text,
min_length=16,
max_length=256,
no_repeat_ngram_size=3,
clean_up_tokenization_spaces=True,
)
print(result[0]["summary_text"])
替代检查点
- 若遇到运行时/内存问题,可尝试此早期检查点,该版本训练40,000步,在解释性摘要任务上表现接近但运行更快
- 查看基于booksum数据集但使用不同架构的类似摘要模型:long-t5 base和LED-Large








