在提供Lucene Index时使用免费工具进行实体提取/识别
nlp
opennlp
5
0

我目前正在研究从文本(网络上的很多文章)中提取人员姓名,位置,技术用语和类别的选项,然后将其输入到Lucene / ElasticSearch索引中。然后,附加信息将作为元数据添加,并应提高搜索的准确性。

例如,当有人询问“检票口”时,他应该能够决定他是指板球运动还是阿帕奇项目。到目前为止,我尝试自己实施此方法,但收效甚微。现在,我找到了很多工具,但不确定这些工具是否适合该任务,哪些工具可以很好地与Lucene集成,或者不确定实体提取的精度是否足够高。

我的问题:

  • 是否有人对上面列出的某些工具及其精度/召回率有经验?或者,如果需要培训数据+可用。
  • 是否有文章或教程可供我开始使用每种工具的实体提取(NER)?
  • 它们如何与Lucene集成?

以下是与该主题相关的一些问题:

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

在“检票口”示例中面临的问题称为实体消歧 ,而不是实体提取/识别(NER)。 NER可能有用,但仅当类别足够具体时。大多数NER系统没有足够的粒度来区分运动项目和软件项目(这两种类型均不属于通常公认的类型:人员,组织,位置)。

为了消除歧义,您需要一个针对实体进行歧义消除的知识库。由于DBpedia具有广泛的覆盖范围,因此是一个典型的选择。请参阅我的答案, 如何使用DBPedia从内容中提取标签/关键字?在这里,我提供了更多的解释,并提到了一些消除歧义的工具,包括:

这些工具通常使用诸如REST之类的独立于语言的API,但我不知道它们直接提供了Lucene支持,但是我希望我的回答对您要解决的问题有所帮助。

收藏
评论

您可以使用OpenNLP来提取人员,地点,组织的名称,而无需培训。您只使用可以从此处下载的预先存在的模型: http : //opennlp.sourceforge.net/models-1.5/

有关如何使用这些模型之一的示例,请参见: http : //opennlp.apache.org/documentation/1.5.3/manual/opennlp.html#tools.namefind

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号