gpt4 book ai didi

elasticsearch - 如何标准化多个搜索结果的分数

转载 作者:行者123 更新时间:2023-12-02 22:11:24 24 4
gpt4 key购买 nike

我需要一些帮助来使用 Elastic Search 规范化分数。我正在使用 N-Gram、模糊性、自定义查询和语音搜索

在数据库中:
爱丽丝、鲍勃、凯茜

搜索查询 1:爱丽丝

   Results are : Max Score(500), Alice(500)[100%], Cathy(300)[60%], Bob(200)[40%]

但是,搜索查询 2: 两者
   Results are : Max Score(200), Bob(200)[100%], Alice(100)[50%], Cathy(50)[25%]

我希望结果看起来像什么:
   Results are : Max Score(500), Bob(200)[40%], Alice(100)[10%], Cathy(50)[5%]

我想要一个标准的最大分数或一种量化任何/多个查询的最高结果的方法。

我要显示分数

' 结果与查询的相似程度 '

不是

' 与其他结果相比,结果排名如何。 '

最佳答案

https://www.elastic.co/guide/en/elasticsearch/reference/7.x/query-dsl-rank-feature-query.html

此外,我想反过来会更容易。你想通过标准化分数来实现什么?最后,你真正想计算的是什么?一种方法可能是这样的:虽然您无法通过获得最高分来确定您的结果是否完美匹配,但您可以通过检查它与其他分数的偏差程度来计算它的相关性。例子:

Input: Alice
Output: Alice (100), Alicia (90), Alkis (50), Alex (48) etc

这里的偏差很明显,您可以看到很可能第一个结果(在主要下降之前)必须非常相关,而不仅仅是匹配。所以你可以假设 Alice 是 100%
Input: `Alice`
Output: Alexander (100), Alkis (95), Alter (90) etc

这里不存在偏差。没有大的下降,所以结果要么都是非常相对的,要么不是。所以你不能假设亚历山大是 100%,但这真的很重要吗?

基本上,您依赖于这样一个事实,即您有足够的数据来计算主要变化(您将确定的样本上的 sigmoid 函数的基本归一化就足够了)。

但同样,您遇到了问题,您找到了一个解决方案,并尝试使该解决方案适合 elasticsearch。也许通过准确描述问题和期望的结果可以揭示更简单的解决方案。

关于elasticsearch - 如何标准化多个搜索结果的分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60892109/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com