NLP论文阅读记录 - 2021 | WOS 基于多头自注意力机制和指针网络的文本摘要

本文主要是介绍NLP论文阅读记录 - 2021 | WOS 基于多头自注意力机制和指针网络的文本摘要,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 0、论文摘要
  • 一、Introduction
    • 1.1目标问题
    • 1.2相关的尝试
    • 1.3本文贡献
  • 二.问题定义和解决问题的假设
    • 问题定义
    • 解决问题的假设
  • 三.本文方法
    • 3.1 总结为两阶段学习
      • 3.1.1 基础系统
    • 3.2 重构文本摘要
  • 四 实验效果
    • 4.1数据集
    • 4.2 对比模型
    • 4.3实施细节
    • 4.4评估指标
    • 4.5 实验结果
      • 4.6 细粒度分析
  • 五 总结
  • 思考


前言

在这里插入图片描述

Text summarization based on multi-head self-attention mechanism and pointer network(21)

0、论文摘要

现有的文本摘要方法主要依靠人工标记的标准摘要与原始文本之间的映射来进行特征提取,往往忽略了原始文档的内部结构和语义特征信息。因此,现有模型提取的文本摘要存在语法结构错误、语义偏离原文的问题。本文试图增强模型对源文本固有特征信息的关注,使模型能够更准确地识别文档的语法结构和语义信息。
因此,本文提出了一种基于多头自注意力机制和软注意力机制的模型。通过在模型编码阶段引入改进的多头自注意力机制,训练模型使正确的摘要语法和语义信息获得更高的权重,从而使生成的摘要更加连贯和准确。同时采用指针网络模型,改进覆盖机制,解决生成摘要时的词汇外和重复问题。本文使用CNN/DailyMail数据集来验证本文提出的模型,并使用ROUGE指标来评估模型。
实验结果表明,与其他模型相比,本文的模型提高了生成摘要的质量。

一、Introduction

1.1目标问题

当前,互联网时刻产生大量文本数据,文本信息过载问题日益严重。需要对各类文本进行降维,因此自动文本摘要的任务应运而生。自动文本摘要[1]是自然语言处理的一个重要研究领域。自动文本摘要从原文中提取一段内容或生成一段新内容来总结原文的主要信息。也就是说,对原始数据进行压缩和提炼最终文本为用户提供了简洁的内容描述。它帮助用户节省了大量的时间,用户可以从摘要中获取文本的所有关键信息点,而无需阅读整个文档。近年来,文本摘要已被应用于生活的许多方面,例如生成报告摘要和自动生成新闻标题[2-5]。目前,自动文本摘要的研究方向可分为抽取式文本摘要[6,7]和抽象式文本摘要[8]。提取文本摘要从原始文本中提取关键句子和关键词以生成摘要。这种方法可能会产生不连贯的摘要并且对字数的控制不佳。效果完全取决于原文的类型。抽象文本摘要是通过重写原始文本内容来生成的,使得生成的摘要能够包含新的词典或短语,更加灵活。因此,本文重点关注抽象文本摘要。
最近,有研究人员使用seq2seq(sequence-tosequence)模型进行抽象文本摘要研究[9-11],模拟人们阅读文档的思维过程,首先提取原文信息全局化,然后总结原文的主要思想。曹等人。 [12] 和 Sutskever 等人。 [13]提出了一种由编码器和解码器组成的序列到序列模型来解决机器翻译问题。巴达瑙等人。 [14]逐渐将序列到序列模型应用于抽象文本摘要。拉什等人。 [15]提出在DUC-2004[16]和Gigaword上使用序列到序列模型和注意力机制生成抽象文本摘要,并使用CNN对原始文本进行编码。该模型具有提取文本信息并生成文本摘要的能力。然而,生成的摘要有一些偏离原文的主要信息并且超出了词汇范围。然后,乔普拉等人。 [17]使用相同的编码器对原始文档进行编码,但他们使用循环神经网络作为解码器,该模型极大地提高了摘要生成的效果。纳拉帕蒂等人。 [18]提出使用关键词和注意力机制来提取原文并对原文进行编码。周等人。文献[19]提出采用选择性编码对原文进行编码,从而增强了原文的信息提取。
在使用序列到序列模型的过程中,研究人员发现该模型可以从原始文本中提取信息,但该模型生成的文本摘要存在词汇外和单词重复问题。为了解决生成摘要中的词汇外问题,Gu 等人。 [20]使用复制机制直接复制原文中的重要单词而不是词汇外的单词来生成摘要。参见等人。 [21]利用覆盖机制和指针生成网络模型为词汇外和单词重复提供了解决方案。覆盖机制可以避免在生成摘要时在同一位置给予多个高注意力权重值,并且可以有效减少摘要生成中的重复单词问题。指针生成网络在序列到序列模型的基础上引入了指针网络[22]。在指针生成网络中,生成摘要时会生成两个概率。即当前单词从词汇表中生成的概率以及在指针处被复制的概率。该网络用于学习两个概率之间的权重。指针生成网络可以有效地适应提取器和抽象网络[23],并已被用于许多抽象生成任务[24,25]。周等人。 [26]继续提出SeqCopyNet来增强生成摘要的可读性,并将完整的输入句子序列复制到摘要中。 [27]使用词义歧义来改进基于查询的文本摘要。王等人。 [28] 和梁等人。 [29]使用强化学习引入文本摘要。 [30]使用包括主编码器和辅助编码器的双编码模型。
一些研究者利用传统的软注意力机制提取原文的关键信息[31],但无法提取原文内部的各种语义和语法信息,导致语法结构错误和语义偏离原文的问题文本。瓦斯瓦尼等人。 [32]提出了一种变压器模型,其中使用新的自注意力机制模型来提取输入文本的信息。实验表明,自注意力机制可以快速提取稀疏数据的重要特征。它已广泛应用于自然语言处理任务中[33-35]。自注意力机制是注意力机制的改进,减少了对外部信息的依赖,更好地捕捉数据或特征的内部相关性。自注意力机制利用注意力机制来计算每个单词与所有其他单词之间的关联,以便模型能够学习不同表示子空间中的相关信息。文本摘要经历了如何提取原始文本信息,如何生成摘要,同时缓解生成摘要过程中出现的未登录词和重复问题。然而,在提取原文信息的过程中,学习原文本身的语义、语法结构和确定关键信息仍然需要研究。并进一步考虑降低单词重复率。因此,这是一个不完善的 Seq2Seq 模型的研究空白[36]。在该模型中,解决了序列到序列模型中出现的问题,并解决了研究的不足。表 1 详细阐述了先前作者的贡献。
本文的其余部分组织如下。第二部分介绍自动文本摘要的问题定义和假设。第三部分详细描述了文中提出的方法。第四部分介绍了本文的基线、数据集、实验和结果分析。最后,文章在第五部分结束。

1.2相关的尝试

1.3本文贡献

总之,我们的贡献如下:

二.问题定义和解决问题的假设

问题定义

随着近年来深度学习的快速发展,序列到序列模型被广泛应用于机器翻译、问答、文本摘要等序列问题。然而,序列到序列模型存在许多问题,例如词汇外问题,这会产生重复问题[15]。为了解决这些问题,See 等人。 [21]提出了指针生成网络,增加了指针网络以及基于注意力机制的对seq2seq模型的覆盖机制,以缓解使用seq2seq带来的问题。指针生成网络采用传统的软注意力机制,无法提取原文内部的各种语义和语法信息,导致生成的摘要中存在语法结构错误和与原文语义偏差的问题。因此,本文认为有必要学习原文的语义和语法结构,确定关键信息。由于长文本摘要的特殊性和多样性,输入的文章通常是具有多个子空间的多个句子。如果模型只关注一个空间,一些信息将会丢失。同时,人们注意到自注意力机制在提取原始文本的关键特征方面还不够。在重现指针生成网络时,发现随着预测摘要长度的增加,覆盖机制的效果逐渐减弱。因此,本研究试图增强原始文本的提取和编码。另外,进一步减少单词的重复率。

解决问题的假设

三.本文方法

3.1 总结为两阶段学习

3.1.1 基础系统

3.2 重构文本摘要

四 实验效果

4.1数据集

4.2 对比模型

4.3实施细节

4.4评估指标

4.5 实验结果

4.6 细粒度分析


五 总结

本文提出了两种基于注意力机制的模型,即MSAPN和MDAPN。两种模型都使用改进的多头自注意力机制来获取原始文本内部的语义和语法信息,从而使生成的摘要文本摘要与文本的语义和语法信息具有相似的含义。此外,这两个模型都使用指针网络和改进的覆盖机制来减少重复内容和词外问题。
实验结果表明,MSAPN模型在ROUGE Recall分数上优于传统的指针生成网络,但在ROUGE Precision分数上效果不佳。为此,提出的MDAPN模型结合门控机制,使得模型的ROUGE指标优于指针生成网络,能够有效包含更多的原始文本信息,生成的摘要更加完整。
然而,MDAPN模型的F1得分值低于现有模型。因此,未来可以通过考虑预训练[43]模型和强化学习[29]来扩展模型,从而提高模型的F1分数。
该模型引入预训练模型来提高文本信息的提取,并通过强化学习减少训练和预测中的暴露偏差,进一步提高摘要的生成。此外,希望未来提出的模型能够应用于不同领域[44]。

思考

这篇关于NLP论文阅读记录 - 2021 | WOS 基于多头自注意力机制和指针网络的文本摘要的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

C++如何通过Qt反射机制实现数据类序列化

《C++如何通过Qt反射机制实现数据类序列化》在C++工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作,所以本文就来聊聊C++如何通过Qt反射机制实现数据类序列化吧... 目录设计预期设计思路代码实现使用方法在 C++ 工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作。由于数据类

Java使用SLF4J记录不同级别日志的示例详解

《Java使用SLF4J记录不同级别日志的示例详解》SLF4J是一个简单的日志门面,它允许在运行时选择不同的日志实现,这篇文章主要为大家详细介绍了如何使用SLF4J记录不同级别日志,感兴趣的可以了解下... 目录一、SLF4J简介二、添加依赖三、配置Logback四、记录不同级别的日志五、总结一、SLF4J

go 指针接收者和值接收者的区别小结

《go指针接收者和值接收者的区别小结》在Go语言中,值接收者和指针接收者是方法定义中的两种接收者类型,本文主要介绍了go指针接收者和值接收者的区别小结,文中通过示例代码介绍的非常详细,需要的朋友们下... 目录go 指针接收者和值接收者的区别易错点辨析go 指针接收者和值接收者的区别指针接收者和值接收者的

在Spring Boot中浅尝内存泄漏的实战记录

《在SpringBoot中浅尝内存泄漏的实战记录》本文给大家分享在SpringBoot中浅尝内存泄漏的实战记录,结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录使用静态集合持有对象引用,阻止GC回收关键点:可执行代码:验证:1,运行程序(启动时添加JVM参数限制堆大小):2,访问 htt

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

SpringRetry重试机制之@Retryable注解与重试策略详解

《SpringRetry重试机制之@Retryable注解与重试策略详解》本文将详细介绍SpringRetry的重试机制,特别是@Retryable注解的使用及各种重试策略的配置,帮助开发者构建更加健... 目录引言一、SpringRetry基础知识二、启用SpringRetry三、@Retryable注解

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

SpringKafka错误处理(重试机制与死信队列)

《SpringKafka错误处理(重试机制与死信队列)》SpringKafka提供了全面的错误处理机制,通过灵活的重试策略和死信队列处理,下面就来介绍一下,具有一定的参考价值,感兴趣的可以了解一下... 目录引言一、Spring Kafka错误处理基础二、配置重试机制三、死信队列实现四、特定异常的处理策略五

Java Optional避免空指针异常的实现

《JavaOptional避免空指针异常的实现》空指针异常一直是困扰开发者的常见问题之一,本文主要介绍了JavaOptional避免空指针异常的实现,帮助开发者编写更健壮、可读性更高的代码,减少因... 目录一、Optional 概述二、Optional 的创建三、Optional 的常用方法四、Optio

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,