有没有办法修改Lucene默认相似性评分函数以支持多值字段搜索,即对于具有三个“人”字段的文档,每个名称将有三个不同的相似度分数。
一个例子是,将论文索引为一个文档,其作者有多个别名,
第一人:David Bowie,David Robert Jones,Ziggy Stardust,Thin White Duke
第2号人物:David Letterman
第3人:David Hasselhoff,David Michael Hasselhoff
当我们搜索“大卫”时,我们可以返回3个不同的相似度得分,其中得分(人2)>分数(人3)>分数(人1)。
此外,我们可以实施Indri风格的MAX或AVG算子,其中MAX(文件)=分数(人2)和AVG(文件)= AVG {分数(人2),分数(人3),分数(人) 1)}
任何可以修改Lucene实现部分的指针都将受到赞赏。感谢。