安装rouge和pyrouge
先rouge
https://blog.csdn.net/Hay54/article/details/78744912
再pyrouge
https://blog.csdn.net/MerryCao/article/details/49174283
具体流程:
一,ROUGE
ROUGE是由微软亚洲研究院知识挖掘组(The Knowledge Mining group at Microsoft Research Asia)调研经理(research manager) Chin-Yew Lin 研发的,用于摘要的自动评价,通过比较机器自动生成的摘要(called system_summary)与人工生成的摘要(called model_summary, 认为它是理想的)中重叠单元的数量,来评价机器自动生成的摘要。该方法中考虑的重叠单元有n-gram, word sequences, word-pairs等,并提出了四个测量标准ROUNG-N, ROUNG-L, ROUNG-W, ROUNG-S [1]。
该包用Perl语言编写,目前版本为ROUGE-1.5.5。
1,因为DOM要求perl版本要在5.6.0以上,所以先在终端用perl -v查看一下当前版本,版本较低的话先升级一下perl
2,进入cpan命令
(此处省略若干日志信息)
3,安装XML::Parser
(此处省略若干日志信息)
注意:如果出现报错:
则是因为缺少Expat组件,需要用管理员权限执行:
sudo apt-get install expat
sudo apt-get install libexpat1-dev
4,安装XML::RegExp
5,安装LWP::UserAgent(时间略长)
(此处省略若干日志信息)
6,安装XML::Parser::PerlSAX
7,安装XML::DOM
(省略若干日志信息)
8,安装DB_File
此处报错为libdb,说明未安装Berkeley DB library,或安装不正确。应先退出cpan命令再输入如下命令
sudo apt-get install libdb-dev
如果还没有用,可能是没有安装对应的版本,先使用如下命令,先查看当前Berkeley DB library 的版本,然后再安装对应的版本.
sudo apt-cache search libdb
sudo apt-get install libdb5.3-dev
9,下载ROUGE-1.5.5(二者应该都可)
https://github.com/andersjo/pyrouge/tree/master/tools/ROUGE-1.5.5
https://github.com/summanlp/evaluation/tree/master/ROUGE-RELEASE-1.5.5
10,设置ROUGE环境变量
假设你解压的ROUGE-1.5.5在/usr/local/RELEASE-1.5.5,则:
sudo edit etc/profile %%%这样对所有用户都有效,若希望仅对当前用户有效则输入sudo gedit ~/.profile
在文本编辑器末尾添加 :
export ROUGE_EVAL_HOME="$ROUGE_EVAL_HOME:/usr/local/RELEASE-1.5.5/data"
11,测试安装是否成功
以上步骤都进行完毕后,可以进入ROUGE文件所在路径(即RELEASE-1.5.5),然后运行一下runROUGE-test.pl文件。
perl runROUGE-test.pl
如果有以下输出,且sample-output路径下各个文件都有内容的话,基本是安装成功了
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -a ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-a.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -a -m ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-a-m.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -a -m -s ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-a-m-s.out
^C../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -l 10 -a ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-l10-a.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -l 10 -a -m ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-l10-a-m.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -l 10 -a -m -s ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-l10-a-m-s.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -b 75 -a ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-b75-a.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -b 75 -a -m ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-b75-a-m.out
../ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -b 75 -a -m -s ROUGE-test.xml > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-b75-a-m-s.out
../ROUGE-1.5.5.pl -e ../data -3 HM -z SIMPLE DUC2002-BE-F.in.26.lst 26 > ../sample-output/DUC2002-BE-F.in.26.lst.out
../ROUGE-1.5.5.pl -e ../data -3 HM DUC2002-BE-F.in.26.simple.xml 26 > ../sample-output/DUC2002-BE-F.in.26.simple.out
../ROUGE-1.5.5.pl -e ../data -3 HM -z SIMPLE DUC2002-BE-L.in.26.lst 26 > ../sample-output/DUC2002-BE-L.in.26.lst.out
../ROUGE-1.5.5.pl -e ../data -3 HM DUC2002-BE-L.in.26.simple.xml 26 > ../sample-output/DUC2002-BE-L.in.26.simple.out
../ROUGE-1.5.5.pl -e ../data -n 4 -z SPL DUC2002-ROUGE.in.26.spl.lst 26 > ../sample-output/DUC2002-ROUGE.in.26.spl.lst.out
../ROUGE-1.5.5.pl -e ../data -n 4 DUC2002-ROUGE.in.26.spl.xml 26 > ../sample-output/DUC2002-ROUGE.in.26.spl.out
二,pyrouge
1,进入conda环境下使用pip安装pyrouge
pip install pyrouge
2,假设之前安装的ROUGE-1.5.5在/usr/local/ROUGE-1.5.5, 运行指令
pyrouge_set_rouge_path /usr/local/ROUGE-1.5.5
3,检查是否安装正确
python -m pyrouge.test
若看到以下信息表示安装正确了
Ran 10 tests in 18.055s
OK
三,Windows 系统下配置 pyrouge
可参照linux系统下的配置。
https://blog.csdn.net/MerryCao/article/details/73477543
在执行runRouge-test.pl进行验证时,可能会出现如下报错
报错1:‘..’既不是内部或外部命令,也不是可运行的程序
原因:系统将‘..’当做执行命令了
解决:修改runRouge-test.pl,将$ROUGE 变量由../ROUGE-1.5.5.pl修改为ROUGE-1.5.5.pl
报错2:Cannot open exception db file for reading
解决方法:删除pyrouge/tools/ROUGE-1.5.5/data下的WordNet-2.0.exc.db,然后进入WordNet-2.0-Exceptions文件夹下运行
buildExeptionDB.pl ../WordNet-2.0-Exceptions ../smart_common_words.txt ../WordNet-2.0.exc.db
报错3:“can t spawn cmd.exe......”
解决方法:查看环境变量,若环境变量缺少%SystemRoot%\System32,加进去即可
安装rouge和pyrouge相关推荐
- ROUGE和pyrouge的安装
ROUGE是由微软亚洲研究院知识挖掘组Chin-Yew Lin 研发的,用于摘要的自动评价,通过比较机器自动生成的摘要与人工生成的摘要中重叠单元的数量,来评价机器自动生成的摘要.该方法中考虑的重叠单元 ...
- Install Rouge and Pyrouge for python 2.7 (conda virtual env) on Linux 64
Who to complain to about this terrible package???? Its official website was down, its bugs and excep ...
- pyrouge和rouge在Linux上的安装方法以及结果比较
诸神缄默不语-个人CSDN博文目录 这里的pyrouge安装的是这个:pyrouge · PyPI,也就是这个项目:bheinzerling/pyrouge: A Python wrapper for ...
- python中rouge是什么程序_rouge与pyrouge使用事项
1.rouge介绍 ROUGE评价方法与pyramid,BLUE方法一起作为评价自动摘要质量的内部评价方法的三大中流砥柱. ROUGE:recall-oriented understand for g ...
- 常用的ROUGE得分计算Python库(pyrouge,files2rouge,rouge,py-rouge)
前言 ROUGE得分是文本摘要任务中最常用的自动评测指标,关于rouge得分的计算,可以查看原始论文 https://www.aclweb.org/anthology/W04-1013.pdf 要注意 ...
- 自然语言处理NLP——中文抽取式自动文摘(包括中文语料库处理、三种方法实现自动文摘、Rouge评价方法对自动文摘进行打分)
利用三种方法实现抽取式自动摘要,并给摘要结果打分(一.textrank 二.word2vec+textrank 三.MMR 四.Rouge评测) 具体代码我上传到了Github上,其中有45篇小论文( ...
- 语法高亮不够漂亮?这里有你想要的 Rouge 主题
写了那么久的代码,找到了满意的代码着色风格吗?想必文本编辑器的代码着色风格你已经找到了中意的了,那么你在网上 post 上去的代码呢? Rouge 是一款基于 Ruby 的语法高亮工具,能为你的代码生 ...
- 【NLP】文本自动摘要任务的心得总结
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送 作者:邱震宇(华泰证券股份有限公司 算法工程师) 知乎专栏:我的ai之路 原文链接,点击 ...
- [竞赛01]2021CCF BDCI新闻摘要自动生成Baseline-T5模型
[竞赛01]2021CCF BDCI新闻摘要自动生成Baseline - 爱码帮™分享编程知识和开发经验 「这是我参与11月更文挑战的第4天,活动详情查看:2021最后一次更文挑战」 本文提供竞赛的B ...
最新文章
- Chirp信号公式与对离散生成算法之间的差异
- kaldi在java中运行_ubuntu下kaldi的安装以及实例的运行
- Node.js入门经典 读书笔记(3)
- 所想即所得 运维进行时
- 爬虫-使用xpath拿36KR的数据-xpath的学习与演练
- 【UML】部署图Deployment diagram(实现图)(转)
- java 并发_Java并发编程中断机制 so easy
- Maven开发环境设置导致的异常java.lang.NumberFormatException: null
- XML 在SQLServer中的使用
- 创业公司研发团队面临的项目管理难题探讨
- Cocos Creator 自制小工具-小游戏场景地图编辑器
- html+css+js制作原神官网,web前端大作业(流风眷堇庭+6个页面+链接)
- 直播服务器搭建NGINX-RTMP+JAVA
- 一分钟了解:NMN的副作用和危害?nmn对人体有害吗?
- 【嵌入式学习-STM32F103-EXTI外部中断】
- 一个简单的猜拳小游戏
- 软文标题怎么写都有哪些分类!----皆义网途
- 关于微信公众平台迁移见证需要具备什么条件?
- 如何构建用户评分体系
- xt6使用技巧_凯迪拉克XT6中控屏幕功能使用操作图解