自动文摘生成

2023-11-12

自动文摘技术概要

文本自动文摘(automatic summarization/abstracting)是利用计算机自动实现文本分析、内容归纳和摘要自动生成的技术。

    在目前的研究中,已经有很多技术被用于解决文本的自动摘要生成。有的研究针对文档中所包含的句子进行排序,使用句子权重较大的句子构成文档的摘要;也有的研究将自动摘要生成问题视为对文档中的句子进行多分类的问题,利用统计学习的方法对文档中的句子进行分类吗,进而生成对应的文档的摘要。最近随着深度学习的流行,已经有大量的研究使用神经模型进行文本摘要的自动生成。

自动文摘的分类

    按照不同的标准可以将自动文本摘要分成不同的类型,可以按照以下5个标准进行分类:功能、输入文本数量、原文语言、摘要和原文的关系、摘要的应用等。

按照文摘的功能划分,可以分成3类:
  • 指示型文摘(Indicative)
  • 报道型文摘(Informative)
  • 评论型文摘(Evaluative)
按照输入文本的数量,可以分成:
  • 单文档摘要(Single-document Summarization)
  • 多文档摘要(Multi-document Summarization)
按照原文语言划分:
  • 单语言摘要(Monoligual)
  • 跨语言摘要(Crosslingual)
根据摘要和原文的关系可以分成:
  • 摘录型文摘(Extractive)
  • 理解型文摘(Abtractive)
根据摘要的应用进行划分:
  • 普通型文摘(Generic)
  • 面向用户查询的文摘(query-oriented)

自动文摘的处理

    对于自动文摘的生成,可以概括为3个主要过程:

  1. 文本分析:对原文本进行分析处理,识别冗余信息(尤其在多文档自动摘要生成时);
  2. 文本内容的选取和泛化:从文档中识别重要信息,通过摘录或者概括的方法(或通过计算分析的方法)对文本进行压缩;
  3. 文本转换和生成:对原文内容进行重组或根据内部表示生成文摘。

多文档自动摘要的生成

    目前,多文档自动摘要生成方法同城涉及到更广泛的技术问题,因此多文档摘要自动生成技术受到研究人员的广泛关注。多文档文摘是将同一个主题下的多个文本描述的主要信息按压缩比提炼出一个文本的自然语言处理技术。

    目前,无论是单文档摘要还是多文档摘要,采用的方法一般为基于抽取的方法(extracting method)或称摘录型方法和基于理解的方法(abstracting method)。在单文档摘要中,一般采用前者。但对于多文档来说,不同主题下的文档中不可避免的存在信息重叠和信息差异,因此,如何避免信息重叠并且反映出不同文档的信息差异是其首要目标。为了实现该目标,需要在句子层做以下工作:压缩、合并、切分等。所以,多文档摘要面临的问题更加复杂。

    另外,单文档的输出句子一般都按照句子在原文中出现的顺序排 列,而在多文档摘要中,大都采用时间顺序排列句子,如何准确地得到 每个句子的时间信息,也是多文档文摘中需要解决的一个重要问题。

    自动文摘过程通常包括三个基本步骤,但实现基本步骤的方法可以是基于句子抽取的,也可以是基于内容理解的,或者是基于结构分析的或其他方法。但无论采用什么样的方法,都必须面对三个关键问题:

  1. 文档冗余信息的识别和处理;
  2. 重要信息的识别;
  3. 生成摘要的连贯性;

    以下将简单介绍解决上述关键问题的方法。

冗余信息的识别

    通常有两种方法:

  1. 聚类:测量所有句子对之间的相似性,然后用聚类方法识别公共信息的主题;
  2. 候选法:系统首先测量候选文段与已选文段之间的相似度,仅当候选段有足够的新信息时才将其入选;如最大边缘相关法MMR(maximal marginal relevance);

重要信息的辨别

    主要有两种方法:

  1. 抽取法:选出每个聚类中有代表性的部分(一般为句子),默认这些代表性的部分(句子)可以表达这个聚类中的主要信息;
  2. 信息融合法:目的是要生成一个简洁、通顺并能反映这些句子(主题)之间共同信息的句 子。为达到这个目标,要识别出对所有入选的主题句都共有的短语,然后将之合并起来。由于集合意义上的句子交集效果并不理想,因此,需要一些其他技术来实现融合,这些技术包括句法分析技术、计算主题交 集(theme intersection)等;

确保文摘的一致性和连贯性

    需要对句子进行排序,主要有两种方法:

  1. 时间排序法(chronological ordering):一般选定某一个时间为参考点,然后计算其他相对时间的绝对时间;
  2. 扩张排序算法(augmented algorithm):目的是试图通过将有一定内容相关 性的主题(topically related themes)放在一起来降低不流畅性;

    虽然很多学者致力于理解式方法的研究,但摘录型的摘要方法仍是实用性自动摘要的主流方法。已有的摘录型方法的主要思路是从文章中提取特征,然后采用有监督或者无监督的机器学习方法对句子进行分类、打分,并进行句子抽取和排序。

文摘评测

    文摘自动评测是自然语言处理中比较棘手的问题,相对于机器翻 译、信息检索等其他技术的评测更加困难,因为理论上根本没有完美的摘要作参考。

    传统的评价方法主要是人工审查,通过以下几个指标来评价摘要的质量:一致性、简洁性、文法合理性、可读性和内容含量。在DUC(Document Understanding Conference)评测中,主要有5项人工评测指标:

  • 文摘的合乎语法性(grammaticality)
  • 非冗余性(non-redundancy)
  • 指代的清晰程度(referential clarity)
  • 聚焦情况 (focus)
  • 结构及一致性(structure and coherence)

    有研究者曾将文摘自动评估方法分成两类:

  1. 内部 (intrinsic)评价方法:与文摘系统的目的相关,它通过直接分析摘要的质量来评价文摘系统;
  2. 外部(extrinsic)评价方法:它是 一种间接的评价方法,与系统的功能相对应,将文摘应用于某一个特定的任务中,根据摘要功能对特定任务的效果来评价自动文摘系统的性能,如对于信息检索任务而言,可以对比采用摘要进行检索与采用原文进行检索的准确率差异,通过文摘对检索系统的效果来评价文摘系统的性能;

内部评价方法

    这种评价方法源于信息抽取技术,可以按信息的覆盖面和正确率来评价文摘的质量,一般采用将系统结果与“理想摘要”相比较的方法。在信息抽取评测中,将原文的关键要点抽取出来,然后与人工抽取的内容相比较,计算其召回率(recall)、准确率(precision)、 冗余率(overgeneration)和偏差率(fallout)等几个指标。
r e c a l l = c o r r e c t + ( p a r t i a l × 0.5 ) p o s s i b l e recall=\frac{correct+(partial \times 0.5)}{possible} recall=possiblecorrect+(partial×0.5)
r e c a l l = c o r r e c t + ( p a r t i a l × 0.5 ) a c t u a l recall=\frac{correct+(partial \times 0.5)}{actual} recall=actualcorrect+(partial×0.5)
o v e r g e n e r a t i o n = s p u r i o u s a c t u a l overgeneration=\frac{spurious}{actual} overgeneration=actualspurious
f a l l o u t = i n c o r r e c t + s p u r i o u s p o s s i b l e i n c o r r e c t fallout=\frac{incorrect+spurious}{possible incorrect} fallout=possibleincorrectincorrect+spurious
其中:

  • correct:正确的响应数;
  • partial:部分正确的响应数;
  • possible:所有可能的答案数,包括两部分,一部分为答案数,另一部分是候选答案中与系统响应匹配的个数;
  • actual:系统给出的实际响应个数;
  • spurious:伪响应数,本来没有答案但系统给出的多余(superfluous)响应;
  • incorrect:不正确的响应数;
  • possible incorrect:可能不正确的答案数,可以用possible数减去正确的答案数来计算;
  • overgeneration:测试的是系统生成的伪响应的比率
  • fallout:测试的是可能不正确的答案中系统错误响应和伪响应所占的比率;

    内部评价方法存在的主要困难是“理想摘要”的获得问题,而外部评测方法则与测试的特定任务密切相关。

    一般地,内部评测方法又可分为两类:

  • 形式度量(form metrics):侧重于语法、全文的连贯性和组织结构;
  • 内容度量(content metrics)

    一种典型的方法是,系统输出与一个或多个人工的理想摘要做逐句的或者逐片段的比较来计算召回率和精确率;另一种常用的方法包括kappa方法和相对效用方法(relative utility),这两种方法都是通过随机地抽取原文中的一些段落,测试系统对应这些段落产生的摘要质量来评测系统整体性能的。

    最近的研究中,用于自动文摘生成的评测方法主要有两个:

  1. BLEU:基于机器翻译系统评测中的评分方法提出了一种文摘自动评测方法[2];
  2. ROUGE:对BLEU方法加以改进,提出并实现了基于最长公共子串和指定句子内词对的共现统计的评测方法 (ROUGE),并证明该评测方法与人工评测具有很好的一致性[3];

参考文献

[1] 统计自然语言处理(第二版),宗成庆 著,清华大学出版社
[2] Chin-Yew Lin Eduard H. Hovy From Single to Multi-document Summarization. 457-464 ACL 2002
[3] Chin-Yew Lin Franz Josef Och Automatic Evaluation of Machine Translation Quality Using Longest Common Subsequence and Skip-Bigram Statistics. 605-612 ACL 2004

备注
  • 本书(参考文献)的第一篇读书笔记
  • 未来打算整理成专栏
  • 详细深入了解参考原书
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自动文摘生成 的相关文章

  • svn无法查看日志显示离线问题

    1 如下图所示 查看svn日志时 报只能离线查看 如上图所示点击Show log后 报如下错误 2 解决办法 如下图所示 在svn本地仓库右击 选择TortoiseSVN 点击Revision graph后 等待弹框加载完毕后再关闭 再重新

随机推荐

  • keil5软件安装&开发环境搭建教程(mdk,c51通用)

    这是我在csdn上写的第一篇文章 心情激动兴奋 因为之前都是看别人写的博客 从来没想过自己去写一篇 在学长的鼓励下 尝试完成人生第一篇博客 仍有不足 希望大佬多多指正 写这篇的目的是因为keil5的安装是许多人入门嵌入式的第一步 而且以后遇
  • VSCode插件生成编号、目录、文件目录树

    安装VSCode 官方地址 https code visualstudio com 下载安装完毕后在扩展中安装中文插件Chinese Simplified Markdown自动生成编号和目录 安装插件Markdown All in One
  • 移动距离不超过k的几乎有序的数组进行排序(堆最优解 时间复杂度N*O(K))

    已知一个几乎有序的数组 把数组排好顺序的话 每个元素移动的距离一定不超过k 并且k相对于数组长度来说比较小 1 这道题如果我们不使用的k的条件 正常使用排序的算法 也是可以做的 只是复杂度过高 不是最优解 2 第一眼看到这个问题 感觉情况很
  • 2021-10-02PE文件学习

    欢迎大家一起来Hacking水友攻防实验室学习 渗透测试 代码审计 免杀逆向 实战分享 靶场靶机 求关注 PE文件学习 推荐工具 lord PE stud PE PE权威指南 了解格式 看雪 吾爱破解 EXE是如何组成的 如何逆向一个EXE
  • STM32 GPIO 封装过程

    基本数据类型的封装 define IO volatile lt Defines read write permissions exact width signed integer types typedef signed char int8
  • NSSCTF web 刷题记录2

    文章目录 前言 题目 广东强网杯 2021 团队组 love Pokemon NCTF 2018 Easy Audit 安洵杯 2019 easy web NCTF 2018 全球最大交友网站 prize p2 羊城杯 2020 easys
  • 华为OD机试真题-整理扑克牌【2023.Q1】

    题目内容 给定一组数字 表示扑克牌的牌面数字 忽略扑克牌的花色 请按如下规则对这一组扑克牌进行整理 步骤1 对扑克牌进行分组 形成组合牌 规则如下 当牌面数字相同张数大于等于4时 组合牌为 炸弹 3张相同牌面数字 2张相同牌面数字 且3张牌
  • dell服务器卡在启动界面_戴尔最新bios设置图解 当电脑出现开机画面按F2进入

    导读 提到戴尔 大家应该都不陌生 有朋友问戴尔电脑文档保存之后没了 当然了 还有朋友想问如何进入dell电脑bios设置 这到底是咋回事 其实戴尔 dell 服务器内存条呢 下面是小编精心为你们整理的戴尔最新bios设置图解 让大家少走弯路
  • 2018创业项目

    一 无人驾驶 1 苏州豪米波 毕欣 专注于毫米波雷达和多传感器融合 2 贾冰 31岁 博士 专注于无人驾驶中的自动化数据采集 自动化标注等 3 张文博 33岁 创业2年 垂直行业无人机 空中侦察兵 公安等 4 刘诗聪 27岁 创业1年 自然
  • python实战——JSON转CSV

    这里写自定义目录标题 目标 实现 目标 将json格式的文件转换为csv格式的文件 用python写一个转换器 依赖库 处理json文件需要json库 使用如下命令安装 pip install json 待转换的json文件名为input
  • 字库:cmap 表

    fontTools库来检测字体文件中是否包含某字符 如何判断一个汉字是否在TTF字体中有定义 字库 cmap 表 fontTools库来检测字体文件中是否包含某字符 https blog csdn net alxe made article
  • Servlet学习(七):Cookie

    一 Cookie的基本使用 1 概念 Cookie 客户端会话技术 将数据保存到客户端 以后每次请求都携带Cookie数据进行访问 2 Cookie的工作流程 服务端提供了两个Servlet 分别是ServletA和ServletB 浏览器
  • 涵盖入门到精通,自测 Vue 掌握程度

    文章目录 一 说说对spa单页面的理解 他的缺点是什么 二 v show和v if的区别 三 Class 与 Style 如何动态绑定 四 怎么理解Vue的单向数据流 五 computed 和 watch 的区别和应用的场景 6 直接给一个
  • 枚举的应用你知道多少?

    大家好 我是大成子 今天给大家讲一讲枚举的应用 前言 枚举类型enum是C 中基本的值类型数据类型 适当的用好它 有助于提高代码的简洁性和易读性 枚举语法定义格式为 enum 枚举名 枚举元素1 枚举元素2 应用 在正常的开发中 像人的性别
  • RT-Thread微秒延时?

    今天继续做之前的东西 使用了RT thread操作系统 程序中有AT24C02的相关操作AT24C02的操作的接口是IIC接口 所以又涉及到IIC 程序用的模拟的IIC IIC的时序挺严格的 有微秒的延时操作 由于模拟IIC程序中的延时操作
  • 计算1-100之间的所有的奇数和

    我的每篇都是干货 要求 计算1 100之间的所有的奇数和 1 3 5 7 99 有一个数据 从0变到100 循环 int 0 lt 100 从0 100 范围内 找到奇数 数 2 1 奇数 所有的奇数求和计算 需要变量 保存奇数的求和 实现
  • 想要输出JSONObject有序的操作方法

    1 由于 com alibaba fastjson JSONObject 默认是由hashMap组成的 所以内容存放的顺序并不是有序的 如果要实现有序的话需要使用LinkedHashMap的方式 在新建Json对象的时候要这样写 JSONO
  • 用java实现奇异值分解(SVD)

    首先奇异值分解 Singular Value Decomposition 以下简称SVD 描述如下 奇异值分解 Singular Value Decomposition 是线性代数中一种重要的矩阵分解 奇异值分解则是特征分解在任意矩阵上的推
  • 云原生基础设施实践:NebulaGraph 的 KubeBlocks 集成故事

    像是 NebulaGraph 这类基础设施上云 通用的方法一般是将线下物理机替换成云端的虚拟资源 依托各大云服务厂商实现 服务上云 但还有一种选择 就是依托云数据基础设施 将数据库产品变成为云生态的一环 不只是提供自身的数据云服务 还能同其
  • 自动文摘生成

    自动文摘技术概要 文本自动文摘 automatic summarization abstracting 是利用计算机自动实现文本分析 内容归纳和摘要自动生成的技术 在目前的研究中 已经有很多技术被用于解决文本的自动摘要生成 有的研究针对文档