集成Elasticsearch和Stanford NLP,无需重新索引



我们一直在系统中使用Elasticsearch。尽管我使用了它的分析程序和查询。我没有深入研究它的索引。到目前为止,我不知道ES让我们在多大程度上使用Lucene(倒排)索引。

我们现在正在研究一系列NLP特征——NER是其中之一斯坦福NLP上诉了。

没有插件可以让这两个包一起工作(?)

我还没有深入研究过Stanford NLP。然而,在我看来,它的工作它们都有自己的索引。无论传递给它的对象或类型是什么,斯坦福NLP正在索引它自己,并从那里开始。

这将使系统为同一组文档工作两个不同的索引——ES &斯坦福dnlp,这将是昂贵的。

有办法绕过这个吗?

我的一个场景是:让斯坦福dnlp在Lucene段上工作——ES已经构建的倒排索引。在本例中:

1.)斯坦福dnlp使用Lucene索引而不为自己重新索引任何东西吗?我不知道斯坦福dnlp的索引结构——甚至不知道它使用/不使用Lucene的程度。

2.)在ES分片中使用Lucene索引有什么限制吗?我们是否会在直接使用这些Lucene部分时触底,绕过ES ?

我正试着把事情整理好——现在一切都还悬而未决。对不起,q太天真了

我知道OpenNLP及其插件。我还没有检查-我猜它不会是"双索引"和使用ES的索引(?)然而,我们要找的是斯坦福dnlp。

TIA。

Stanford NER既不使用Lucene/SOLR索引,也不创建自己的文本索引。它将一段文本或标记序列映射到带有NER注释的标记序列。

通常,在索引之前,您将在摄取时对每个文档运行NER,大约在标记化时,然后为每个文档索引实体和单词。

我知道没有现有的斯坦福NER的ElasticSearch插件,但它可能是有益的看看人们是如何做到这一点与Solr: http://www.searchbox.com/named-entity-recognition-ner-in-solr/。Solr和ElasticSearch都在内部使用Lucene analyzer和索引

github上有一个存储库,使用OpenNLP在ElasticSearch上试验NER: github页面。它使用ElasticSearch Plugin架构,所以在ES实例中测试应该很容易。我没有尝试过这个插件,但我有使用OpenNLP的经验,从以前的工作中,它有一个非常可靠的NER解析器。

最新更新