PEGASUS模型介绍

2023-12-30 20:28
文章标签 介绍 模型 pegasus

本文主要是介绍PEGASUS模型介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

PEGASUS介绍

概述

模型论文为Pre-training with Extracted Gap-sentences for Abstractive Summarization,简称为PEGASUS。面向的情况主要是因为目前预训练语言任务主要为MLM和NSP任务,即为掩码预测任务和下一句预测任务,没有面向生成式文本摘要的预训练任务。因此PEGASUS提出在预训练阶段的时候,将重要的句子作为MASK1,掩盖后,通过encoder-decoder的结构运用MASK1覆盖后的句子预测MASK1的句子,在一定程度上模拟摘要生成

PEGASUS假设前提为在预训练过程中,约接近下游任务的预训练任务可以获取更好的下游任务性能

PEGASUS模型的预训练任务主要有两个,分别为gap句子生成和掩码预测任务。Gap句子生成主要模拟抽取式摘要文本生成。

  • GSS(Gap Sentence Generation)

  • MLM(Mask Language Model)

模型框架图示

  • MASK1为我们所模拟生成式摘要的句子,MASK2主要为MLM任务

Gap Sentence Generation(GSG)

前提为预训练目标与下游任务约接近,finetune效果会更好。通过运用span mask的思想,将整个句子运用MSAK1遮盖预测,除此之外,将MASK1拼接为起来,形成一个伪摘要。Gap sentence ration(GSR)用于描述MASK1在文档中的总比例。

  • G S R = 输入句子中 M A S K 1 总个数 ) 输入句子中 t o k e n 总个数 GSR = \frac{输入句子中MASK1总个数)}{输入句子中token总个数} GSR=输入句子中token总个数输入句子中MASK1总个数)

但是选择不同的句子会有不一样的结果,因此提出了下列集中选择句子的方式。定义n个句子文档集 D = x i n D = {x_i}n D=xin,n为句子个数, x i x_i xi为第i个句子。D为文档。

  • Random,随机选取m个句子
  • Lead,选取文章中前m个句子
  • Principal, 根据特定指标,选取得分高的top-m个句子

Principle 选择方式

  1. 独立性选择(independently,ind),根据选中句子和其他句子集合的ROUGE1-F1来计算,具体公式如下,最终选取前m个 s i s_i si句子。
    1. s i = r o u g e ( x i , D ∖ { x i } ) s_i=rouge(x_i,D\setminus\{x_i\}) si=rouge(xi,D{xi})
  2. 连续性选择(Sequential Sentence Selection,seq),通过贪婪最大化选择句子集合和其他句子子集的ROUGE1-F1值选取,具体算法描述如下所示。
    1. ![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=src%2Fimage-20231213165342464.png&pos_id=img-cyGugoWi-1703923178577在这里插入图片描述

在计算ROUGE1-F1的时候存在UniqOrig,具体差异如下图所示。

  • 如果为Uniq,即为先处理句子集合,去除重复的n-gram,再计算指标
  • 如果为Orig,即为考虑保留原始句子,允许n-gram出现

Tip:Rouge-N实际上是将模型生成的结果和标准结果按N-gram拆分后,计算召回率。比如有2个句子(一般模型生成的成为hypothesis,简写hyp;标准结果称为reference,简写为ref)

R o u g e − N = ∑ S ∈ R e f e r e n c e S u n m a r i e s C o u n t m a t c h ( g r a m n ) ∑ S ∈ R e f e r e n c e S u m a r i e s ∑ g r a m n ∈ S C o u n t ( g r a m n ) Rouge{-}N=\frac{\sum_{S\in ReferenceSunmaries}Count_{match}(gram_n)}{\sum_{S\in ReferenceSumaries}\sum_{gram_n\in S}Count(gram_n)} RougeN=SReferenceSumariesgramnSCount(gramn)SReferenceSunmariesCountmatch(gramn)

结论

最终得到一共有四种,结合之前的Random以及Lead,最终有Ind-Uniq,Ind-Orig,Seq-Uniq,Seq-Orig,Random,Lead共六种选择。

最终确定了将文档的SGR(选取30%)的句子作为Gap sentence句子,而且在选择MASK1的时候,运用Ind-Orig对方式,结果最好。

MLM掩码预测任务选择

在文中共有三种方法。

  1. 类似于BERT做法,输入文本的15%的tokens, 80%的被替换为[MASK2], 10%的被随机的token替换 10%未发生变化,在finetune的时候共享encoder参数
  2. 只用CSG,不运用常见MLM
  3. 在运用CSG的基础上,在没有被选中的句子中选取15%作为常见MLM任务。

结论

只用MLM的效果最差,但是在100K-200K的参数中,用MLM+GSG效果较好,但是在200K之后,运用MLM效果反而下降,因此在训练大规模参数PEGASUS-large中只运用了GSG,在PERASUS-base中只运用了GSG+MLM。

参考

此在训练大规模参数PEGASUS-large中只运用了GSG,在PERASUS-base中只运用了GSG+MLM。

参考

PEGASUS模型:一个专为摘要提取定制的模型
PEGASUS: Pre-training with Extracted Gap-sentences for Abstractive Summarization

这篇关于PEGASUS模型介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/553903

相关文章

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

Python进阶之Excel基本操作介绍

《Python进阶之Excel基本操作介绍》在现实中,很多工作都需要与数据打交道,Excel作为常用的数据处理工具,一直备受人们的青睐,本文主要为大家介绍了一些Python中Excel的基本操作,希望... 目录概述写入使用 xlwt使用 XlsxWriter读取修改概述在现实中,很多工作都需要与数据打交

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

Python实现NLP的完整流程介绍

《Python实现NLP的完整流程介绍》这篇文章主要为大家详细介绍了Python实现NLP的完整流程,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 编程安装和导入必要的库2. 文本数据准备3. 文本预处理3.1 小写化3.2 分词(Tokenizatio

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数