学习笔记———《自动文档摘要评价方法---Edmundson和ROUGE》

2024-03-12 23:59

本文主要是介绍学习笔记———《自动文档摘要评价方法---Edmundson和ROUGE》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

      本人最近在做一个自动文档摘要相关的项目,研究了一下目前业界的一些评价方法,阅读了Chin-Yew Lin的《ROUGE: A Package for Automatic Evaluation of Summaries》的paper,也对应看了其他朋友整理的笔记,特整理此笔记供大家参考!

自动文档摘要评价方法大致分为两类:

(1)内部评价方法Intrinsic Methods)           
       在提供参考摘要的前提下,以参考摘要为基准评价系统摘要的质量。通常情况下,系统摘要与参考摘要越吻合,其质量越高。
2外部评价方法(Extrinsic Methods)           
       下面介绍两个比较简单的,也是在自动摘要评价以及自动文档摘要的相关国际评测中经常会被用到的两个内部评价方法:EdmundsonROUGE

(一)Edmundson
Edmundson评价方法属于内部评价方法,可以客观评估,就是通过比较机械文摘(自动文摘系统得到的文摘)与目标文摘的句子重合率(coselection rate) 的高低来对系统摘要进行评价。也可以主观评估,就是由专家比较机械文摘与目标文摘所含的信息,然后给机械文摘一个等级评分。等级可以分为:完全不相似,基本相似,很相似,完全相似等。Edmundson比较的基本单位是句子,是通过句子级标号分隔开的文本单元,句子级标号包括“。”、“:”、“;”、“!”、“?”等。为使专家文摘与机械文摘具有可比性,只允许专家从原文中抽取句子,而不允许专家根据自己对原文的理解重新生成句子,专家文摘和机械文摘的句子都按照在原文中出现的先后顺序给出。

Edmundson定义:

重合率p=匹配句子数/专家文摘句子数×100%

        每一个机械文摘的重合率为按三个专家给出的 文摘得到的重合率的平均值:
        即对所有专家的重合率取一个均值, Pi 为相对于第 i 个专家的重合率, n 为专家的数目。
(二)ROUGE
        ROUGE Recall-Oriented Understudy for Gisting Evaluation) ,在2004年 ISI 的Chin-Yew  Lin 提出的一种自动摘要评价方法,现被广泛应用于 DUC( Document Understanding Conference )的摘要评测任务中。 ROUGE 基于摘要中 n 元词( n-gram )的共现信息来评价摘要,是一种面向 n 元词召回率的评价方法。基本思想为由多个专家分别生成人工摘要,构成标准摘要集,将系统生成的自动摘要与人工生成的标准摘要相对比,通过统计二者之间重叠的基本单元(n元语法、词序列和词对)的数目,来评价摘要的质量。通过与专家人工摘要的对比,提高评价系统的稳定性和健壮性。该方法现已成为摘要评价技术的通用标注之一。 ROUGE 准则由一系列的评价方法组成,包括 ROUGE-N(N=1、2、3、4,分别代表基于1元词到4元词的模型) ROUGE-L,ROUGE-S, ROUGE-W, ROUGE-SU 等。在自动文摘相关研究中,一般根据自己的具体研究内容选择合适的 ROUGE 方法。

        其中,n表示n-gram的长度{Reference Summaries}表示参考摘要,即事先获得的标准摘要,表示候选摘要和参考摘要中同时出现n-gram的个数,则表示参考摘要中出现的n-gram个数。不难看出,ROUGE公式是由召回率的计算公式演变而来的,分子可以看作“检出的相关文档数目”,即系统生成摘要与标准摘要相匹配的N-gram个数,分母可以看作“相关文档数目”,即标准摘要中所有的N-gram个数。

   例:R1 : police killed the gunman.

R2 : the gunman was shot down by police.

C1 : police ended the gunman.

C2 :the gunman murdered police.

R1,R2 为参考摘要,C1C2 为候选摘要。

ROUGE-1(C1)=(3+3)/(4+7)=6/11

ROUGE-1(C2)=(3+3)/(4+7)=6/11

ROUGE-2(C1)=(1+1)/(3+6)=2/9

ROUGE-2(C2)=(1+1)/(3+6)=2/9

C1C2的ROUGE-1、ROUGE-2分数相等,但是意思完全不相同!

优点

直观,简洁,能反映词序。

缺点:

区分度不高,且当N>3时,ROUGE-N值通常很小。

应用场景:

ROUGE-1:短摘要评估,多文档摘要(去停用词条件);

ROUGE-2: 单文档摘要,多文档摘要(去停用词条件);

(2)ROUGE-L( Longest Common Subsequence )

        子序列 一个给定序列的子序列就是该给定序列中去掉零个或者多个元素。
        公共子序列: 给定两个序列XY,如果Z既是X的一个子序列又是Y的一个子序列,
        则序列 Z X Y 的一个公共子序列。
        LCS(最长公共子序列): 给定两个序列XY 使得公共子序列长度最大的序列 X Y 的最长公共子序列。

Sentence-Level LCS

计算公式:

        其中X为参考摘要,长度为mY为候选摘要,长度为n,用F值来衡量摘要XY的相似度,在DUC测评中,由于,所以只考虑

 例:   R1 : police killed the gunman.

C1 : police ended the gunman.

C2 : the gunman murdered police.

R1为参考摘要,C1,C2为候选摘要。

ROUGE-L(C1)=3/4

ROUGE-L(C2)=2/4

C1优于C2

优点:

不要求词的连续匹配,只要求按词的出现顺序匹配即可,能够像n-gram一样

反映句子级的词序。

自动匹配最长公共子序列,不需要预先定义n-gram的长度。

缺点:

只计算一个最长子序列,最终的值忽略了其他备选的最长子序列及较短子序列的影响。

应用场景:

单文档摘要;短摘要评估。

   例:R1 : police killed the gunman.

C1 :the gunman murdered police.

C2 : the gunman police killed.

R1为参考摘要,C1,C2为候选摘要。

ROUGE-L(C1)=2/4

ROUGE-L(C2)=2/4

ROUGE-2(C1)=1/4

ROUGE-2(C2)=2/4

C1C2的ROUGE-L分数相等,但C2ROUGE-2分数高于C1C2优于C1!

Summary-Level LCS 

        将LCS应用到摘要级数相 时,对参考摘要中的每一个句子 与候选摘要中的 所有句子比对,以union LCS作为摘要句 的匹配结果。

计算公式:

        其中R为参考摘要,包含u个句子,m个词,C为候选摘要,包含v个句子,n个词,长度为n 是句子和候选摘要C的union LCS。

例:参考只要集句子 : w1 w2 w3 w4 w5

        候选摘要C包含两个句子

        c1 : w1 w2 w6 w7 w8

        c2 : w1 w3 w8 w9 w5

        与 c1 的LCS 为w1 w2,与c2的LCS为w1 w3 w5,与Cunion LCS 为w1 w2 w3 w5。

        ROUGE-L(C)=4/5

(3)ROUGE-W( WeightLongest Common Subsequence )

        为使连续匹配比不连续匹配赋予更大的权重,公式描述如下:


        例如,同时为了归一化最终的ROUGE-W值,通常选择函数与反函数具有相似形式的函数。例如:

计算公式:


例:R1 : police killed the gunman who injured 3 on campus.

        C1 : police kill the gunman and sealed off the scene.

        C2 : the police was killed and the gunman ran off.

        R1为参考摘要,C1,C2为候选摘要,

        WLCS(R1, C1) = 4*4=16,f(m) = 9*9 =81

        WLCS(R1, C2) = 2*4=16,f(m) = 9*9 =81

        ROUGE-W(C1) = 0.444

        C2 优于 C1 !

        优点一LCS下,对连续匹配词数多的句子赋予更高权重,比LCS区分度更高。

        缺点 同ROUGE-L,只计算一个最长子序列,最终的值忽略了其他备选的最长 子序列及较短子序列的影响。

        应用场景:单文档摘要;短摘要评估;

(4)ROUGE-S( Skip-BigramCo-Occurrence Statistics)

        Skip-Bigram是按句子顺序中的任何成对词语。

计算公式:


        其中 X 为参考摘要,长度为 m Y 为候选摘要,长度为 n。SKIP2(X,Y)表示候选 摘要与参考摘要的 skip-bigram 匹配次数

        Skip-gram如果不限制跳跃的距离,会出现很多无意义的词对,比如“the of”、“in the”等。为了减少无意义词对的出现,可以限制最大跳跃距离,通常写ROUGE-S4表示最大跳跃距离为4,ROUGE-S9表示最大跳跃距离为9,依次类推。如果为0,那么ROUGE-S0 = ROUGE-2。

例: R1 :police killed the gunman.

        C1 :police kill the gunman.

        C2 :the gunman kill police.

        C3 : thegunman police killed.

        R1 为参考摘要, C1,C2,C3 为候选摘要。

候选摘要ROUGE-1ROUGE-2ROUGE-LROUGE-WROUGE-S
C10.750.250.750.610.5
C20.750.250.50.50.167
C310.50.50.50.333

        优点:考虑了所有按词序排列的词对,比n-gram模型更深入反映句子级词序。

        缺点: 若不设定最大跳跃词数会出现很多无意义词对。 若设定最大跳跃词数, 需要指定最大跳跃词数的值。

        应用场景:单文档摘要;ROUGE-S4,ROUGE-S9: 多文档摘要(去停用词条件);


这篇关于学习笔记———《自动文档摘要评价方法---Edmundson和ROUGE》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很