gpt4 book ai didi

elasticsearch - ElasticSearch中用户定义的术语向量

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

如何(如果可能的话)在ElasticSearch索引中插入任何项 vector ?

ES在后台计算术语 vector 以执行其文本挖掘任务,但是能够输入任何(术语,权重)对列表将很有用。

为什么?

好吧,例如,尽管ES启用了k = 2的kNN(k最近邻),但在地理邻近的情况下,它没有任何明确的k> 2功能。如果我们能够插入自己的术语 vector ,则可以利用ES内置的文本索引方法来破解k> 2的功能。

有关此问题的迹象吗?

最佳答案

据我所知, flex 搜索无法做到这一点(我仍在寻找最快的KNN实时搜索方法, flex 搜索是我的选择之一)。

Elasticsearch基于反向索引,因此术语 vector 中的每个术语(可能来自句子)都将在排序列表中建立索引。当我们搜索查询时,查询将被分析成一个词 vector ,而elasticsearch(实际上是Lucene)将搜索每个词的索引。

但是KNN需要计算两个 vector 之间的距离,即使它们不共享相同的项,传统的倒排索引也不是为此要求而设计的。

如您所说,elasticsearch可以通过地理查询在k = 2时实现实时KNN搜索,但我认为它不能支持k> 2。

顺便说一句,如果您发现任何可以帮助实现实时KNN搜索的方法,即K可能是一个非常大的数字(100000?),并且在一个庞大的数据集( vector 的数量)上,请告诉我,thx :)

关于elasticsearch - ElasticSearch中用户定义的术语向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30119265/

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