关于Rémi Lebret 的HPCA安装和使用

在安装HPCA前,需要确定环境配置。

This project requires:

  • Cross-platform Make (CMake) v2.6+
  • GNU Make or equivalent.
  • GCC or an alternative, reasonably conformant C++ compiler.
  • Zlib v1.2.5
  • OpenMP API (optional)
  • Doxygen (in order to make documentation which is optional.

安装Doxygen,并安装Graphviz。

在MAC的系统中,主要需要CMame下载并安装,同时在~/.bash_Profile中添加

export PATH="/Applications/CMake.app/Contents/bin:$PATH

GCC以系统自带的clang形式存在,但是由于版本较低,需要重新加载,并在~/.bash_Profile中添加

export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
export PATH="/usr/local/Cellar/gcc/7.3.0_1/bin:$PATH"

OpenMP在高版本的GCC中已经支持,所以需要确定cmake指定到最新的GCC中。因而在使用cmake编译时,需要输入以下语言。


./configure #此前,确定进入目标文件夹内export CC=/usr/local/bin/gcc
export CXX=/usr/local/bin/g++
cmake /path/to/your/project #/path/to/your/project指的是make后的文件存放位置
make #可能会出现报错,具体问题如下

最后,输入

sudo make install

需要注意的是,在make时,可能会遇到以下报错

make[2]: *** [src/CMakeFiles/eval.dir/eval.cpp.o] Error 1

make[1]: *** [src/CMakeFiles/eval.dir/all] Error 2

make: *** [all] Error 2

这时,需要检查具体错误,例如

/Users/xxx/xxx/hpca-master/src/eval.cpp:231:68: error:ISO C++ forbids comparison between pointer and integer [-fpermissive]

     while ((buffer = string_copy(buffer, ptr_data, &itr, '\n')) != '\0'

/Users/xxx/xxx/hpca-master/src/eval.cpp:138:68:error: ISO C++ forbids comparison between pointer and integer [-fpermissive]

     while ((buffer = string_copy(buffer, ptr_data, &itr, '\n')) != '\0'

针对Mac系统,需要将所指文件中第231和138行'\n'改为“\n"。而Lunix系统中不会出现报错,不需要改动。


顺利安装后,就可以使用了。在具体处理前,需要通过PTBTokenizer来对语料进行预处理,具体操作见另一篇博文。


然后,进行HPCA相关操作。在这一步之前,需要添加环境变量,否则会出现以下报错:


preprocess: command not found

具体操作如下:

打开terminal,

vim .bash_Profile
输入
export PATH="~/xxx/hpca-master/bin:$PATH"
关闭文件后,在命令行中输入

source .bash_Profile
接下来就可以进行后续操作了。

preprocess options:

  • -lower <int>: Lowercased? 0=off or 1=on (default)
  • -digit <int>: Replace all digits with a special token? 0=off or 1=on (default)
  • -input-file <file>: Input file to preprocess (gzip format is allowed)
  • -output-file <file>: Output file to save preprocessed data
  • -gzip <int>: Save in gzip format? 0=off (default) or 1=on
  • -threads <int>: Number of threads; default 8
  • -verbose <int>: Set verbosity: 0=off or 1=on (default)
preprocess -input-file ~/xxx/xxx/comments-token.txt -output-file ~/xxx/xxx/comments-clean.txt -lower 1 -digit 1 -verbose 1 -thread 8 -gzip 0

其他操作按照作者README.md中的指示即可完成。

需要注意的是对于eval,由于系统中可能已经存在eval的变量名,因而需要在xxx/hpca-master/bin/中,找到eval,重新命名为evalu,这样,可以使得evalu语法正确。最终输入

evalu -word-file ~/xxx/xxx/comment/words.txt -vocab-file ~/xxx/xxx/comment/target_words.txt -ws353 1 -rg65 1 -rw 1 -syn 1 -sem 1 > ~/xxx/xxx/comment/words_eval.txt




参考

http://blog.csdn.net/haohaibo031113/article/details/72833327


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值