Ubuntu安装配置ROUGE教程

前言

  这次做自然语言处理的作业,是关于多文档摘要生成的,其中对于生成的摘要进行效果测评需要用到ROUGE(不是那个文本高亮的插件!!)。没想到安装这个软件这么麻烦,于是写个博客造福后人了。

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等,并提出了四个测量标准ROUGE-N, ROUGE-L, ROUGE-W, ROUGE-S。 
  该包用Perl语言编写,目前版本为ROUGE-1.5.5。

说实话ROUGE真心是难装,按理说在Ubuntu下几行命令就应该要安装成功一个程序,可是ROUGE完全没有体现这一点。

安装要求

  1. 需要安装perl解释器(ubuntu 系统已自带, 通过perl -v可查看当前版本); 
  2. 需要额外安装perl解释器的XML::DOM模块以及DB_File模块,而XML::DOM的安装又需要XML::RegExp、XML::Parser、LWP::UserAgent和XML::Parser::PerlSAX模块(对,就是这么恶心); 
  3. 设置系统环境变量ROUGE_EVAL_HOME,需要设置为ROUGE安装目录下词库data所在路径

获取方法

现在不知道官网是哪个了,不过可以从github上获取,也可以从我的主机宝贝资源站(1.5.5版本)获取,另外其他依赖的模块包我也放进这个链接里了,可以一起下载省去寻找的麻烦。

可以到主机宝贝资源站下载:

安装过程

step1: 检查perl版本

因为DOM要求perl版本要在5.6.0以上,所以先在终端用perl -v查看一下当前版本,版本较低的话先升级一下perl。

step2: 安装XML::Parser

假设使用我百度网盘里的文件,将XML-Parser-2.44.tar解压到当前文件夹或指定路径。

tar -zxvf XML-Parser-2.44.tar.gz1

进入解压得到的文件夹并开始安装。

cd XML-Parser-2.44
perl Makefile.PL
make
make test # if %%%Result看到PASS为成功就继续,否则仔细看哪个case报错了
sudo make install # if %%%必须要sudo,否则可能没有读写文件的权限12345

step3: 安装XML::RegExp

step4: 安装LWP::UserAgent

LWP::UserAgent是libwww-perl中的一部分,直接用apt-get安装就好啦。

sudo apt-get update
sudo apt-get install libwww-perl12

step5: 安装XML::Parser::PerlSAX

这个模块是libxml-perl中的一部分,也可以直接用apt-get安装(其实我在想前面几个模块能不能也这么安装)。

sudo apt-get install libxml-perl1

step6: 安装XML::DOM

Test Summary Report
——————-
t/build_dom.t      (Wstat: 512 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 2 tests but ran 1.
Files=21, Tests=128,  2 wallclock secs ( 0.07 usr  0.01 sys +  1.56 cusr  0.10 csys =  1.74 CPU)
Result: FAIL
Failed 1/21 test programs. 1/128 subtests failed.
Makefile:968: recipe for target ‘test_dynamic’ failed
make: *** [test_dynamic] Error 2551234567891011

可以用这两行命令修复一下。

sudo apt-get install -f
sudo apt-get update –fix-missing 12

step7: 安装DB_File

先获得DB_File的安装包,可以用如下命令,也可以从我给的网盘链接里直接下载。

sudo wget http://www.cpan.org/authors/id/P/PM/PMQS/DB_File-1.835.tar.gz1

接下来如同step2,进入文件夹后使用perl命令安装。

cd DB_File-1.835
perl Makefile.PL
make
make test # if %%%看到PASS为成功
sudo make install12345

在make的时候如果出错如下:

version.c:30:16: fatal error: db.h: 没有那个文件或目录
compilation terminated.
Makefile:360: recipe for target ‘version.o’ failed
make: *** [version.o] Error 11234

说明未安装Berkeley DB library,或安装不正确。解决方法如下:

sudo apt-get install libdb-dev1

如果还没有用,可能是没有安装对应的版本,先使用

sudo apt-cache search libdb1

查看当前Berkeley DB library 的版本,然后再安装对应的版本.

sudo apt-get install libdb5.3-dev1

step8: 设置ROUGE环境变量

设置环境变量ROUGE_EVAL_HOME,假设你解压的ROUGE-1.5.5在/usr/local/RELEASE-1.5.5,则:

sudo gedit etc/profile %%%这样对所有用户都有效,若希望仅对当前用户有效则输入sudo gedit ~/.profile 1

在跳出来的文本编辑器末尾添加 :

export ROUGE_EVAL_HOME=”$ROUGE_EVAL_HOME:/usr/local/RELEASE-1.5.5/data”1

step9: 测试安装是否成功

以上步骤都进行完毕后,怎么知道自己的ROUGE是否安装配置成功了呢?可以进入ROUGE文件所在路径(即RELEASE-1.5.5),然后运行一下runROUGE-test.pl文件。

perl runROUGE-test.pl1

如果有以下输出,且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.out123456789101112131415

至此就全部大功告成啦!

Ubuntu安装配置pyrouge

之前配置pyrouge是很麻烦的事,安装完之后会各种报错,解决起来令人头皮发麻。

这次重新安装ROUGE和pyrouge,找到了一种简洁的安装pyrouge的方法,不会出错,非常方便。记录一下。

很简单,就是几行命令。

git clone https://github.com/bheinzerling/pyrouge
cd pyrouge
Python setup.py install
python -m pyrouge.test1234

在最后一步,python -m pyrouge.test前,要设置rouge路径。

pyrouge_set_rouge_path /absolute/path/to/ROUGE-1.5.5/directory1

例如我的ROUGE文件放在了/usr/local/RELEASE-1.5.5下,就设置为

pyrouge_set_rouge_path /usr/local/RELEASE-1.5.5

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/213123.html<

(0)
管理的头像管理
上一篇2025-04-11 04:35
下一篇 2025-04-11 04:37

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注