学术界所使用的MSRA语料,其实是只含NS、NT、NR三种命名实体的阉割版。完整的MSRA语料一共含有26种命名实体:
- AGE
- ANGLE
- AREA
- CAPACTITY
- DATE
- DECIMAL
- DURATION
- FRACTION
- FREQUENCY
- INTEGER
- LENGTH
- LOCATION
- MEASURE
- MONEY
- ORDINAL
- ORGANIZATION
- PERCENT
- PERSON
- PHONE
- POSTALCODE
- RATE
- SPEED
- TEMPERATURE
- TIME
- WEIGHT
- WWW
至于为什么阉割版流传最广,可能是Sighan06用了阉割版,后面就一股脑地跟进了。从人性懒惰的角度来看,阉割版标签少,更容易跑出高分,何乐而不为?
另外一个奇怪之处是,这份语料原本是token level的,学术界用的都是char level。要知道很多Transformer的tokenizer不一定按char level去tokenize,导致误差传播。
作为面向生产环境的NLP工具包,HanLP当然不会使用阉割版了。哪怕跑不出高分,丰富的实体类型对下游应用的意义更大。
HanLP将在2.1中使用token level的完整版MSRA语料。其实2.1还支持nested ner,不过中文nested ner只有ACE数据集,太小了没什么意思。
拆分
HanLP推荐的训练集开发集拆分与学术界相同,即取原版语料的后10%作为开发集,使用原版语料的测试集不变。
下载
为了方便,可直接下载我预处理好的数据,仅供研究目的。
msra.url (81 字节)