ROUGE和pyrouge的安装

ROUGE是由微软亚洲研究院知识挖掘组Chin-Yew Lin 研发的,用于摘要的自动评价,通过比较机器自动生成的摘要与人工生成的摘要中重叠单元的数量,来评价机器自动生成的摘要。该方法中考虑的重叠单元有n-gram, word sequences, word-pairs等,并提出了四个测量标准ROUGE-N, ROUGE-L, ROUGE-W, ROUGE-S。
该包用Perl语言编写,目前版本为ROUGE-1.5.5。

pyrouge是用于ROUGE摘要评估包的Python包装器,要安装pyrouge首先需要安装ROUGE。

一、ROUGE安装

1、安装包下载

安装ROUGE所需包我已经整理上传,可以点击下载。

2、具体安装

Step1:检查perl

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

Step2:Pip安装部分包

sudo apt-get update
sudo apt-get install libwww-perl
sudo apt-get install libxml-perl

Step3:安装XML-Parser

1)解压文件

tar -zxvf XML-Parser-2.44.tar.gz

2)进入解压的文件夹进行安装

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

Step4:安装XML-RegExp

参考Step3方法安装

Step5:安装XML-DOM

参考Step3方法安装,如果在make test的时候报错如下:

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 255

输入下面命令修复即可:

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

Step6:安装DB_File

参考Step3方法安装,在make的时候如果出错如下:

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

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

sudo apt-get install libdb-dev

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

sudo apt-cache search libdb

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

sudo apt-get install libdb5.3-dev

Step7:设置ROUGE环境变量

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

sudo vim /etc/profile

在文件末尾加上:

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

Step8: 测试安装是否成功

以上步骤都进行完毕后,可以进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安装

下面是最可靠的安装方法,采用其他方法可能会遇到各种难以解决的BUG。

git clone https://github.com/bheinzerling/pyrouge
cd pyrouge
python setup.py install

安装完成后可以运行下面命令,看到OK即安装成功

python -m pyrouge.test

参考

  • 在Ubuntu下配置pyrouge
  • Install Rouge and Pyrouge for python 2.7 (conda virtual env) on Linux 64
  • AssertionError when installing pyrouge - Github
  • AssertionError when installing pyrouge - Stackoverflow

你可能感兴趣的:(服务器)