研究由Elasticsearch提供支持的面向大型数据的搜索产品。我们在此应用程序之上构建了很多机器学习功能,但目前在确定如何将相当标准的基于NLP的文字标签集成到我们的ES索引方面遇到了一些困难。
当前,我们有一个标记服务,可以为具有相应类型(或多个类型,但现在可能足够有用)的单词进行注释。可以将此函数抽象为:type = getWordType(word)
我想必须有一种方法可以将此标记服务集成到在索引时间应用的分析链中,也许我们可以告诉索引特定单词属于什么类型。但是,进行这种高级分析超出了我的 flex 搜索能力。有没有人对elasticsearch中的这种高级分析有任何指示?
谢谢!
最佳答案
您可能想看一下Elasticsearch 5.0中引入的ingest node功能。这使您可以在Elasticsearch中对文档进行索引之前,预处理文档并将字段添加到JSON中。
我写了一个使用OpenNLP来丰富文档的摄取处理器。您可以看一看它并使其适应您的需求(也非常欢迎拉取请求)。
在https://github.com/spinscale/elasticsearch-ingest-opennlp上查看
关于elasticsearch - 在Elasticsearch中使用NLP标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41291554/