ACE2005系列2 -- 数据预处理

ACE2005数据预处理

注意,个人感觉使用Github:ace-data-prep进行预处理得到的是用于关系抽取的数据,而不是事件抽取。

ACE2005数据预处理,指使用Standford NLP Tools对原始的ACE2005进行词性标注、依存关系标注,并将源标注文件(.apf.xml)中的实体间关系标注出来。这项工作的进行通过Github:ace-data-prep提供的代码完成。

英文语料预处理

环境

根据ace-data-prep,先根据Reqirements安装所需环境。要注意的是,这里要求是Python2.7.x, 最好能保证就用Python.2.7.x。笔者使用的是python3.6,中间在CHUNK生成时会出现一些小的不兼容bug要修改(主要是几个bytes和str的数据类型转换)。

  • Java 1.8+

  • Maven 3.4+

  • Python 2.7.x

  • GNU Make

运行

首先,使用make命令运行ace-data-prep/下的Makefile,README中给出的运行命令如下

make LDC_DIR=<path to LDC dir> \
     OUT_DIR=<path for output dir> \
     ace05splits
LDC_DIR

在该命令中,LDC_DIR是ACE数据所在目录,LDC_DIR目录下应当包含一个名为LDC2006T06的目录,LDC2006T06/下包含dtd/目录与/data/English/目录(这里先只讨论English的情况)。由于笔者是直接对timex2norm/目录下标注的语料进行处理,因此将Makefile中Line51和Line113中的adj改为了timex2norm

OUT_DIR

OUT_DIR是输出文件的目录,手动创建OUT_DIR的空目录即可(创建空目录即可,其他子目录会在代码执行过程中自动生成)。

关于参数命令(ace05splits)

README中给出的参数命令是"ace05splits",如果照此执行会发现程自动创建ace-05-comms/、ace-05-comms-ptb-anno/、ace-05-comms-ptb-anno-chunks/等目录,对每个文件逐步生成.concrete、标注后的.concrete和chunks文件。完成以上文件及json文件的生成后,会通过bash执行.scripts/data/split_ace_dir.sh对bn和nw进行划分。由于觉得这样的生成过程方便数据统计,因此根据Makefile中的伪命令,换一种方式进行数据自动标注过程。

评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值