【发布时间】:2014-10-28 09:43:09
【问题描述】:
我对 Lucene 的索引结构非常陌生,所以请告诉我这是否有意义,或者我是否想用锤子钻孔。
要点/概述
我认为我需要用我自己的数字(即表示概率(即 [0,1] 的值 [0,100])或用作衡量证据的另一个数字来覆盖 Lucene 的词频词频的位置。是否可以在索引时覆盖词频值,以便该数字实际存储在 Lucene 索引中(而不是 Lucene 使用的正常词频)?
详细说明:
我的文件可能不包含文本或文本很少。相反,大多数(或被视为)带有元信息的数字工件。此元信息是从分类器和其他机器学习方法(例如,基于对象识别、颜色直方图或证据组合)获得的学习概念概率。这是一个非常简单的示例,其中图像被分类(很有可能)包含一棵树并且还描绘了一座房子。
filepath: /pics/1.jpg
meta: tree = 0.9
meta: house = 0.8
meta: dog = 0.0
... (up to 10000 meta fields)
另一个展示了一条狗,一栋房子,但没有一棵树。
filepath: /pics/2.jpg
meta: tree = 0.0
meta: house = 0.3
meta: dog = 1.0
... (up to 10000 meta fields)
每个元标记都存储在一个名为“元”的单独文档字段中,以便通过将搜索定向到它来使所有这些都可搜索。每个字段都包含作为单词或短语的概念,并被视为一个标记。
因此,对于图 1 和图 2 的内容,我主要有外部证据来源,我知道这主要超出了经典 TF-IDF 范式的范围。我想将这些概率(对于“元”字段)插入到 Lucene 的评分方案中,以搜索这些元信息标记并将这些概率带入分数,就像 TF-IDF 一样。如果我搜索 meta:tree AND meta:dog 我想找到第二个文档,如果评分使用这些新的概率 TF,这可以实现。因此,如果我可以修改每个元概念(树、房子和狗)的概率及其 TF,那么我可以将其包含到 Lucene 中而无需更改所有其余部分。
这有意义吗? Lucene 是否对索引提供了如此低级别的修改?我的方向正确吗?
【问题讨论】:
-
有很多选项。你能提供更多关于你想要做什么的细节吗?这可能是相关的stackoverflow.com/questions/8880396/…
-
我详细阐述了文本以使其更清晰。我希望它有所帮助。