ROUGE: A Package for Automatic Evaluation of Summaries
ROUGE: A Package for Automatic Evaluation of Summaries
原文地址
时间:2004
Intro
ROUGE的衡量方向是candidate相对reference的recall值
ROUGE-N: N-gram Co-Occurrence Statistics
其中n是n-gram的长度,Countmatch(gramn)Count_{match}(gram_n)Countmatch(gramn)是n-gram同时出现在candidate和reference中的最大次数,ROUGE-N之所以是recall-related,是因为分母是所有出现在reference中的n-gram总数,而不是出现在candidate中的,注意两个点
- 加入reference summaries时,分母会变大,这是合理的因为可能有多个不同的candidate??
- 分子是在所有reference summaries上计算的,因此出现在多个reference summary中的n-gram权值会更大,这是合理的,因为这样的candidate与reference的consensus更相似
当一个candidate对多个reference的时候,ROUGE-N计算candidate与每个reference配对的最大值
实现中我们使用Jackknifing procedure,对于M个reference,计算每组M-1个reference中的最大ROUGE-N,然后将这M个值加起来取平均
ROUGE-L:Longest Common Subsequence
Z=[z1,z2,...,zn]Z=[z_1,z_2,...,z_n]Z=[z1,z2,...,zn]是X=[x1,x2,...,xm]X=[x_1,x_2,...,x_m]X=[x1,x2,...,xm]的子列,当存在一个严格递增的序列[i1,i2,...,ik][i_1,i_2,...,i_k][i1,i2,...,ik],使得对于所有jjj,有xij=zjx_{i_j}=z_jxij=zj,最长子列(Longest common subsequence)LCS就是两个字符序列的最长的公共子列
Sentence-level LCS
用LCS来度量,我们先将summary sentence视作词序列,直观的想法是如果两个summary sentence的LCS越长它们就越相似,对于长m的reference XXX和长n的candidate YYY,我们提出了基于LCS的F度量如下
其中β=Plcs/Rlcs\beta=P_{lcs}/R_{lcs}β=Plcs/Rlcs,这就是ROUGE-L,当X=Y时ROUGE-L=1,当LCS(X,Y)=0时,ROUGE-L=0
ROUGE-L的优点有两个
- 不需要连续的词相同,而是子列相同即可
- 自动求出最大的n-gram而无需预先定义n
对于下面这个例子,ROUGE-L可以捕捉到句子的结构
S1是reference,S2、S3是candidate,ROUGE-2会给它们打一样的分,因为它们的2-gram词出现的次数一样,但是ROUGE-L则可以发现句子中的主被动关系,给S2打更高的分(…敢和ROUGE-3对比吗)
ROUGE-L的缺点是只计算最长的子列,其他长度的公共序列都与最终评分无关,比如
ROUGE-L只算这两个长度为2的公共子列中的一个
Summary-Level LCS
在Summary-level中,我们取每句reference sentence rir_iri和每句candidate sentence cjc_jcj的LCS并集,给定一个包括u句话总计m个词的reference summary,和包括v句话总计n个词的candidate,summary-level的 ROUGE-L计算如下
其中LCSULCS_ULCSU表示reference rir_iri和candidate summary C的最长子列的并集,比如ri=w1w2w3w4w5r_i=w_1w_2w_3w_4w_5ri=w1w2w3w4w5,c1=w1w2w6w7w8c_1=w_1w_2w_6w_7w_8c1=w1w2w6w7w8,c2=w1w3w5c_2=w_1w_3w_5c2=w1w3w5,则rir_iri和c1c_1c1的最长子列是w1w2w_1w_2w1w2,与c2c_2c2的最长公共子列是w1w3w5w_1w_3w_5w1w3w5,则LCSU(ri,C)LCS_U(r_i,C)LCSU(ri,C)就是4
ROUGE-W:Weight Longest Common Subsequence
ROUGE-L有这样的缺点
X是reference时,Y1和Y2有一样的ROUGE-L分数,但显然,更连续的Y1应当是更好的选择,为了 改进ROUGE-L,我们引入Weight LCS,为连续的子列打更高的分数,具体方法详见论文
ROUGE-S:Skip-Bigram Co-Occurrence Statistics
skip-bigram是一句话中任意两个有序的词,它们之间可以间隔任意长,基于skip-bigram的ROUGE-S计算如下
其中C是组合函数,相比与ROUGE-L来说,ROUGE-S能捕捉所有有序的两个词,为了避免匹配一些相隔过长而无意义的词比如"the the",可以设置最长间隔,此时相应的分母也要按照这个最长距离来计算
ROUGE-SU:Extension of ROUGE-S
ROUGE-S的缺点之一就是当skip-bigram不存在时,candidate的得分是0,因此ROUGE-SU在ROUGE-S的基础上,加上了对单个词的考虑
结论
~
Idea
- 类似BLEU的n-gram co-occurrence统计方法可以被用来评估生成句的好坏
ROUGE: A Package for Automatic Evaluation of Summaries相关推荐
- 相似度系列-3:传统方法ROUGE ROUGE: A Package for Automatic Evaluation of Summaries
文章目录 ROUGE: A Package for Automatic Evaluation of Summaries introduction 基础模型 Rouge-N Rouge_Nmulti R ...
- 《Microsoft COCO Captions Data Collection and Evaluation Server》论文笔记
出处:CVPR2015 Motivation 本文描述了MSCoco标题数据集及评估服务器(Microsoft COCO Caption dataset and evaluation server), ...
- NLP基础知识点:ROUGE
ROUGE: A Package for Automatic Evaluation of Summaries 1. 简介 ROUGE 指标由 Chin-Yew Lin 提出, 主要用于评估机器翻译和文 ...
- ROUGE 简易安装教程
ROUGE 简介 ROUGE 是一个系列的文本摘要评测指标,可用于评估机器摘要和人工摘要之间的相似度,主要包括以下具体指标: ROUGE-N:表示 N 元模型 (N-gram) 的匹配程度 ROUGE ...
- 【NLG】(六)文本生成评价指标—— ROUGE原理及代码示例
前奏: [NLG](一)文本生成评价指标--BLEU原理及代码示例 [NLG](二)文本生成评价指标-- METEOR原理及代码示例 [NLG](三)文本生成评价指标-- ENTROPY原理及代码示例 ...
- 文本生成:自动摘要评价指标 Rouge
本文结构概览 不同的摘要任务下,选择合适的Rouge指标 Rouge-N的理解与示例 Rouge-L的理解与示例 代码示例(char粒度 计算摘要的Rouge值) 代码示例(word粒度 计算摘要的R ...
- 机器翻译, 文本生成等任务评价指标 BLEU, ROUGE, PPL(困惑度)
一:BLEU 1.1 BLEU 的全称是 Bilingual evaluation understudy,BLEU 的分数取值范围是 0-1,分数越接近1,说明翻译的质量越高.BLEU 主要是基于 ...
- 肝了1W字!文本生成评价指标的进化与推翻
一只小狐狸带你解锁 炼丹术&NLP 秘籍 作者:林镇坤(中山大学研一,对文本生成和猫感兴趣) 前言 文本生成目前的一大瓶颈是如何客观,准确的评价机器生成文本的质量.一个好的评价指标(或者设置合 ...
- 斯坦福NLP名课带学详解 | CS224n 第15讲 - NLP文本生成任务(NLP通关指南·完结)
作者:韩信子@ShowMeAI,路遥@ShowMeAI,奇异果@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/36 本文地址:https://ww ...
最新文章
- 音频降噪在58直播中的研究与实现
- 基于jQuery带图标的多级下拉菜单
- 面试官 | 什么是递归算法?它有什么用?
- python3socket非阻塞_Python的socket.accept非阻塞吗?
- mybatis plus 事务管理器_学习MyBatis 框架
- python源码不需要编译成二进制代码_编译 Python 源代码
- Android 中关于属性动画的一些思考,或许能为你解决一定的性能问题
- logmmse降噪算法
- 腾讯云数据库TDSQL-学习心得与收获
- Mirth Connect 第二章 什么是通道?
- iMX8MM linux5.15.32移植
- STM32 CubeIDE快速创建工程(图文详解)
- Android项目之利用手机传感器做惯性导航
- [BZOJ4246]两个人的星座(计算几何)
- darknetYolov3图片的分类计数、置信度以及输出xmin,xmax,ymin,ymax的结果
- 2021-7-19-OpenStack基础知识学习
- UVA(WA) 10815 安迪的第一个字典
- 互联网下半场,苏宁“拼购村”如何打造现象级模式
- 新电脑Linux反应慢怎么回事,电脑反应慢怎么处理 教你几招解决电脑卡慢问题
- How to Add a Dotted Underline Beneath HTML Text
热门文章
- Ceres Solver从零开始手把手教学使用
- python 0基础如何做出雷霆战机?【源码送上】
- 怎么在苹果手机计算机上打字,苹果手机怎样设置打字是中文的
- Photoshop简单案例(8)——利用文字工具修改图片上文字
- win10右键文件夹无反应
- (转载)总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法...
- GWO-KELM和GWO-SVR代码实现
- 8Manage:大宗商品采购,专注构建企业采购信息化!
- SpringBoot 下载打包图片
- 金蝶K3开发-工业单据显示物料图片