【发布时间】:2012-06-23 00:49:17
【问题描述】:
我正在尝试设计一个有点非传统的 NER 系统,将某些多字字符串标记为单个单元/标记。
市面上有很多很酷的 NER 工具,但我有一些特殊需求,因此几乎不可能直接使用开箱即用的东西:
首先,实体不能只是被提取出来并打印在一个列表中——它们需要以某种方式标记并合并为标记。
其次,分类并不重要——人/组织/位置并不重要(至少在输出中)。
第三,我们正在寻找的不仅仅是典型的 ENAMEX 命名实体。我们需要公司和组织,但也需要“气候变化”和“同性婚姻”等概念。我在一些工具上看到过这样的标签,但它们都是“提取风格”。
我将如何获得这种类型的功能?在我自己的手动注释数据集上训练斯坦福标注器是否可以完成这项工作(其中“气候变化”式的短语被标记为 MISC 或其他东西)?还是我最好只列出“奇怪”实体的候选名单,并在通过常规 NER 系统运行后检查文本?
非常感谢!
【问题讨论】:
-
“气候变化”和“同性婚姻”不是传统 NER 意义上的命名实体。它们更像是搭配或固定表达。一些基于互信息的算法可能能够将它们拾取。
-
@larsmans 是的,我已经涉足过类似的事情。先分块,找到名词短语,然后运行搭配统计以找到“有趣”(不太可能)的短语。后一步需要微调,我还没有。更好的统计数据可能就是答案。
-
@winwaed:另一种方法是与维基百科进行字符串匹配以查找用作锚文本的文章;这也为您提供了该短语的“含义”。我最近一直在用Meij's algorithm 做这件事,而且效果很好。
-
@all 啊谢谢!人们正在用 Wikipedia 和 NLP 做一些了不起的事情。悉尼大学的一个研究小组正在使用它来提取非常大的、自动注释的训练语料库。
标签: python nlp nltk stanford-nlp