java – 在Lucene中对Word级注释图层进行索引和搜索

栏目: 后端 · 发布时间: 5年前

内容简介:(NLP)工具的其他数据集.对于像男人去商店这样的句子,注释可能看起来像:我想使用Lucene为这些带有注释的文档编制索引,然后在不同的层上执行搜索.简单查询的一个示例是检索华盛顿被标记为人的所有文档.虽然我并不完全致力于表示法,但语法上的最终用户可能会按如下方式输入查询:查询:Word = Washington,NER = Person
我有一个数据集,在底层文本上有多层注释,例如 part-of-tags , chunks from a shallow parser , name entities ,以及来自各种 natural language processing

(NLP)工具的其他数据集.对于像男人去商店这样的句子,注释可能看起来像:

Word  POS  Chunk       NER
====  ===  =====  ========
The    DT     NP    Person     
man    NN     NP    Person
went  VBD     VP         -
to     TO     PP         - 
the    DT     NP  Location
store  NN     NP  Location

我想使用Lucene为这些带有注释的文档编制索引,然后在不同的层上执行搜索.简单查询的一个示例是检索华盛顿被标记为人的所有文档.虽然我并不完全致力于表示法,但语法上的最终用户可能会按如下方式输入查询:

查询:Word = Washington,NER = Person

我还想做更复杂的查询,涉及跨不同层的注释的连续顺序,例如找到所有文字,其中有一个单词标记的人,然后是到达的单词,后跟一个单词标记的位置.这样的查询可能如下所示:

查询:“NER =人字=到达字=在NER =位置”

用Lucene来解决这个问题的好方法是什么?无论如何索引和搜索包含结构化标记的文档字段?

有效载荷

一个建议是尝试使用Lucene payloads .但是,我认为有效载荷只能用于调整文档的排名,并且它们不用于选择返回的文档.

后者很重要,因为对于某些用例,包含模式的文档数量确实是我想要的.

此外,仅检查与查询匹配的术语上的有效负载.这意味着有效载荷甚至只能帮助第一个示例查询的排名,Word = Washington,NER = Person,我们只想确保将Washingonton这个词标记为Person.但是,对于第二个示例查询,“NER = Person Word =到达Word =在NER = Location”,我需要检查未指定的标签,从而检查不匹配的条款.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人月神话(英文版)

人月神话(英文版)

[美] Frederick P. Brooks, Jr. / 人民邮电出版社 / 2010-8 / 29.00元

本书内容源于作者Brooks在IBM公司任System/360计算机系列以及其庞大的软件系统OS/360项目经理时的实践经验。在本书中,Brooks为人们管理复杂项目提供了最具洞察力的见解,既有很多发人深省的观点,又有大量软件工程的实践,为每个复杂项目的管理者给出了自己的真知灼见。 大型编程项目深受由于人力划分产生的管理问题的困扰,保持产品本身的概念完整性是一个至关重要的需求。本书探索了达成......一起来看看 《人月神话(英文版)》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试