Python中iloc,python可视化怎么做
1.1 .胭脂简介
ROUGE评价法与金字塔评价法和BLUE评价法是评价自动文摘质量的三大内部评价法。
胭脂:面向回忆的orientedunderstandforgistingevalution
2004年,林金耀在
基本思想
几个专家手动生成摘要以形成标准摘要集。将系统生成的自动摘要与人工标准摘要进行对比,通过统计两者之间重复的基本单位【n元语法、词序、词对】的数量来评价摘要的质量。通过比较众多专家的人工摘要,可以提高评价系统的稳定性和鲁棒性。
这种方法已经成为评价抽象技术的通用标准之一。
2.评定标准
胭脂
胭脂-L
胭脂-S
胭脂-W
胭脂苏
规则-n (n-gram共现统计)。
n元模型
n元model.png
一个语句S由一个字列[图像上传失败。(image-a49417-1542860196809)],以及语句S[图片上传失败]的概率。] image-31 d2bd-1542880 n-gram模型基于马尔可夫假设,认为一个词的出现依赖于出现在他面前的有限数量的词。
胭脂-n介绍。png
这里分母是n元文法的个数,分子是参考摘要和自动摘要共享的n元文法的个数。让我给你举个例子:
自动汇总y(通常自动生成):
这只猫是在床底下被发现的
摘要,x1(金标准,人工生成):
那只猫在床下
1克、2克和N克摘要如下所示。
Rouge_1(x1,y )=6/6=1.0。分子是同时出现在评价对象摘要和参考摘要中的1g的编号,分子是参考摘要的1g的编号。(其实分母也可以评价抽象,但是在准确率和召回率之间,重点是召回率。此外,这也与上面的ROUGN-N公式相同)
同样,rouge_2(x1,y )=4/5=0.8
4.胭脂-L
image.png
5.胭脂-W
ROUGE-W是ROUGW-L的改进版本,如下所示
图中X是参考摘要,Y1和Y2是两个评价对象的摘要,Y1明显优于Y2。Y1与参考摘要X连续一致,但rouge_l(x,Y1 )=Rouge_L(X) x,Y2)。针对这一问题,本文作者提出了一种3354加权最长公共子串的改进方案。
6.胭脂-S
即使使用skip-grams,在浏览和匹配摘要和要评估的摘要时,也不需要grams之间的连续性。可以像skip-bigram一样“跳过”几个词。生成克时,最多允许跳过两个字。例如,《戴帽子的猫》的跳跃式连词是“猫在,猫在,猫帽子,在,在帽子里”。
7.摘要
8.安装胭脂和烙铁
使用pyrouge前必须安装胭脂。
以下两个链接提供了相应的安装工具和教程。
注意:Github的胭脂已经不能用了。
9.使用
defrouge(ref,hyp,log_path):
assertlen(ref )==len (hyp))).
ref_dir=log_path reference/
cand_dir=log_path candidate/
ifnotOS.path.exists(ref_dir):
OS.mkdir(ref_dir).
ifnotOS.path.exists(cand_dir):
OS.mkdir(cand_dir)).
自由范围(len) ref):
用codecs . open(ref _ dir d _ reference . txt % I, w , utf-8 )作为f:
f.write()。连接(参考文献[I])。替换)、)、 \n ))
用codecs . open(cand _ dir d _ candidate . txt % I, w , utf-8 )作为f:
f.write()。加入(hyp [ I ]。替换(,)。替换(, )。UNK“)()))))))
r=烟火。Rouge155()
r . model _ filename _ pattern= # id # _ reference . txt
r . system _ filename _ pattern=(\ d)_ candidate . txt
r .模型目录=参考目录
r .系统目录=加拿大目录
logging.getlogger(全局)。设置级别(logging.warning)).
rouge _ results=r . convert _ and _ evaluate(
scores=r . output _ to _ dict(rouge _ results)
recall=[round][scores[ rouge _ 1 _ recall ]* 100,2),
round(分数[ rouge _2_ recall ] * 100,2),
round(分数[ rouge _ l _ recall ] * 100,2 ) ]
精度=[ round ] [分数[ rouge _1_ precision ] * 100,2),
round(分数[ rouge _2_ precision ] * 100,2),
round(分数[ rouge _ l _ precision ] * 100,2 ) ]
f _ score=[round][ rouge _ 1 _ f _ score ]* 100,2),
圆形(分数[胭脂_2_ f _ score ] * 100,2),
圆形(分数[ rouge _ l _ f _ score ] * 100,2 ) ]
打印(f _ measure : % s召回率:% s精度:% s\n
%(str(f_score)、str (recall)、str (precision))
使用编解码器。open(ref _ dir rouge score , w , utf-8 ) as f:
f。write(f _ measure:% s召回率:% s精度:% s \ n)。
%(str(f_score)、str (recall)、str (precision))
return f_score[:]、recall[:]、precision[:]
首先请记住:进口烙铁
这里的裁判员是生成的摘要,hyp是系统参照摘要
在参考文件夹下,文件名为引用00 . txt 00表示数字编号
必须记住
文件都是一行一文的!
文本文件(文本文件)文件中似乎不允许""。可能会发生错误!
参考资料
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。