本發(fā)明涉及圖算法搜索,尤其是涉及一種基于劃分的多區(qū)穿越向量近似檢索方法和系統(tǒng)。
背景技術:
1、給定數(shù)據(jù)集表示包含n個向量的數(shù)據(jù)集,其中vi表示其中一個在歐幾里得空間下的d維向量。任意兩個向量p和q之間的距離可以用δ(p,q)來表示。本研究的問題定義為給定查詢q,在一定允許的誤差范圍內,返回最接近q的k個向量集合。
2、針對低延時高精度的業(yè)務場景,現(xiàn)有系統(tǒng)通常采用基于近似近鄰圖(proximitygraph,pg)的方案。即在數(shù)據(jù)集上構建一張單一的大的近似近鄰圖,使用結點表示數(shù)據(jù)集中的一個向量,并使用連邊表示向量之間存在近鄰關系。當給定查詢的時候,系統(tǒng)使用貪心束搜索的策略,即:算法從圖上某個點出發(fā),維護一個長度受限的候選集,并不斷朝離查詢向量更近的鄰居結點擴展,直到候選集中沒有離查詢向量更近的向量了。這一過程如圖1所示,其中數(shù)據(jù)集圖a中是定義在上的向量數(shù)據(jù)集,表示查詢向量,平行四邊形表示搜索過程中離查詢較近的區(qū)域。現(xiàn)有的方案如圖b所示構建一張單一的大的近似近鄰圖。搜索從v1出發(fā),并不斷朝貪心逼近。
3、隨著大模型以及檢索增強生成技術的蓬勃發(fā)展,向量近似搜索在大模型、推薦系統(tǒng)、信息檢索領域都有越來越廣泛的應用價值。為了應對各種業(yè)務場景越來越高的端到端時延和精度需求,迫切需要為減少無效搜索為不同的圖算法提供統(tǒng)一的優(yōu)化。
技術實現(xiàn)思路
1、本發(fā)明的目的就是為了克服上述現(xiàn)有技術存在導致許多不必要的擴展的缺陷而提供一種減少無效搜索并為不同的圖算法提供統(tǒng)一的優(yōu)化的基于劃分的多區(qū)穿越向量近似檢索方法和系統(tǒng)。
2、本發(fā)明的目的可以通過以下技術方案來實現(xiàn):
3、一種基于劃分的多區(qū)穿越向量近似檢索方法,包括以下步驟:
4、獲取待搜索的數(shù)據(jù)集,對數(shù)據(jù)集以采樣比λ采樣一部分向量作為路由向量,對數(shù)據(jù)集中未被采樣的向量隨機劃分為m個分區(qū),將路由向量作為各個分區(qū)的共享向量;對m個分區(qū)分別構建稀疏近似近鄰圖;
5、接收查詢信息,以第一候選集隊列長度進行第一階段搜索,逼近到查詢信息附近的區(qū)域;
6、在逼近的區(qū)域中以第二候選集隊列長度進行第二階段搜索,若搜索過程中擴展到路由向量,則將該路由向量在所有分區(qū)中的副本加入到候選集隊列中,進行跨分區(qū)的動態(tài)搜索,最終得到搜索結果;所述第二候選集隊列長度大于第一候選集隊列長度。
7、進一步地,所述第一階段搜索僅針對一個稀疏近似近鄰圖進行搜索。
8、進一步地,所述稀疏近似近鄰圖的更新操作包括向量插入和向量刪除;
9、所述向量插入具體包括:將待插入的向量隨機插入到m個稀疏近似近鄰圖中,采用所述采樣比λ所確定的概率判斷待插入的向量是否被選作路由向量,若被選作路由向量,則將該向量插入各個稀疏近似近鄰圖中。
10、進一步地,所述向量刪除具體包括:對每個包含待刪除向量的稀疏近似近鄰圖執(zhí)行向量刪除操作;若待刪除向量為路由向量,則從各個稀疏近似近鄰圖中刪除該路由向量。
11、進一步地,所述方法用于向量查詢驅動的ai應用場景、推薦系統(tǒng)、電子商務、計算機視覺、信息檢索或金融風險管理領域。
12、本發(fā)明還提供一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),包括:
13、隨機劃分框架構建模塊,用于獲取待搜索的數(shù)據(jù)集,對數(shù)據(jù)集以采樣比λ采樣一部分向量作為路由向量,對數(shù)據(jù)集中未被采樣的向量隨機劃分為m個分區(qū),將路由向量作為各個分區(qū)的共享向量;對m個分區(qū)分別構建稀疏近似近鄰圖;
14、第一階段搜索模塊,用于接收查詢信息,以第一候選集隊列長度進行第一階段搜索,逼近到查詢信息附近的區(qū)域;
15、第二階段搜索模塊,用于在逼近的區(qū)域中以第二候選集隊列長度進行第二階段搜索,若搜索過程中擴展到路由向量,則將該路由向量在所有分區(qū)中的副本加入到候選集隊列中,進行跨分區(qū)的動態(tài)搜索,最終得到搜索結果;所述第二候選集隊列長度大于第一候選集隊列長度。
16、進一步地,所述第一階段搜索模塊僅針對一個稀疏近似近鄰圖進行搜索。
17、進一步地,所述隨機劃分框架構建模塊中,稀疏近似近鄰圖的更新操作包括向量插入和向量刪除;
18、所述向量插入具體包括:將待插入的向量隨機插入到m個稀疏近似近鄰圖中,采用所述采樣比λ所確定的概率判斷待插入的向量是否被選作路由向量,若被選作路由向量,則將該向量插入各個稀疏近似近鄰圖中。
19、進一步地,所述向量刪除具體包括:對每個包含待刪除向量的稀疏近似近鄰圖執(zhí)行向量刪除操作;若待刪除向量為路由向量,則從各個稀疏近似近鄰圖中刪除該路由向量。
20、進一步地,所述系統(tǒng)用于向量查詢驅動的ai應用場景、推薦系統(tǒng)、電子商務、計算機視覺、信息檢索或金融風險管理領域。
21、與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點:
22、(1)為了減少圖搜索過程中一些無意義的擴展計算,進一步提升圖搜索的查詢性能,本發(fā)明提出了一種通用的框架:穿越近似緊鄰圖(crossing?sparse?proxi?mitygraph,cspg),該框架通過隨機劃分數(shù)據(jù)集以及維護一個路由向量集合的方式提供了一種簡單高效的模式來優(yōu)化現(xiàn)有的主流圖索引算法,由于劃分后的子數(shù)據(jù)集比原數(shù)據(jù)集更小、更稀疏,因此構建的稀疏近似近鄰圖也比構建在整個數(shù)據(jù)集上的近似緊鄰圖要更加稀疏,因此允許在搜索過程中采用更長的補償來更快地逼近查詢向量。
23、由于其具有的高度靈活性,該框架可以被嵌入到幾乎所有的現(xiàn)有的最好的圖索引算法中去。
24、(2)針對跨分區(qū)的多分區(qū)視圖,本發(fā)明在cspg上設計了高效的兩階段搜索策略,包括了快速逼近階段和跨分區(qū)精細搜索階段,在快速逼近階段中,cspg搜索算法能夠采用更少的擴展和更大的補償快速逼近查詢附近的區(qū)域;在跨分區(qū)精細搜索階段,若擴展到路由向量,那么它位于所有分區(qū)中的副本都會被加入到候選集隊列中。這樣的操作使得搜索過程動態(tài)地在不同地分區(qū)之間來回穿越,最大化了向量的搜索空間,同時使得搜索過程中得到的結果取之于不同的稀疏近似近鄰圖,因此最大化了查詢附近的搜索精細程度,整體上大幅提升了查詢效率。
25、(3)對本發(fā)明的方法,在最為廣泛使用的公開數(shù)據(jù)集以及最具有代表性的主流圖索引上進行了一系列實驗,實驗結果顯示cspg在維持相同的查詢精度下,能夠有效減少無意義的圖搜索擴展,加速了查詢過程。
1.一種基于劃分的多區(qū)穿越向量近似檢索方法,其特征在于,包括以下步驟:
2.根據(jù)權利要求1所述的一種基于劃分的多區(qū)穿越向量近似檢索方法,其特征在于,所述第一階段搜索僅針對一個稀疏近似近鄰圖進行搜索。
3.根據(jù)權利要求1所述的一種基于劃分的多區(qū)穿越向量近似檢索方法,其特征在于,所述稀疏近似近鄰圖的更新操作包括向量插入和向量刪除;
4.根據(jù)權利要求3所述的一種基于劃分的多區(qū)穿越向量近似檢索方法,其特征在于,所述向量刪除具體包括:對每個包含待刪除向量的稀疏近似近鄰圖執(zhí)行向量刪除操作;若待刪除向量為路由向量,則從各個稀疏近似近鄰圖中刪除該路由向量。
5.根據(jù)權利要求1所述的一種基于劃分的多區(qū)穿越向量近似檢索方法,其特征在于,所述方法用于向量查詢驅動的ai應用場景、推薦系統(tǒng)、電子商務、計算機視覺、信息檢索或金融風險管理領域。
6.一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),其特征在于,包括:
7.根據(jù)權利要求6所述的一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),其特征在于,所述第一階段搜索模塊僅針對一個稀疏近似近鄰圖進行搜索。
8.根據(jù)權利要求6所述的一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),其特征在于,所述隨機劃分框架構建模塊中,稀疏近似近鄰圖的更新操作包括向量插入和向量刪除;
9.根據(jù)權利要求8所述的一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),其特征在于,所述向量刪除具體包括:對每個包含待刪除向量的稀疏近似近鄰圖執(zhí)行向量刪除操作;若待刪除向量為路由向量,則從各個稀疏近似近鄰圖中刪除該路由向量。
10.根據(jù)權利要求6所述的一種基于劃分的多區(qū)穿越向量近似檢索系統(tǒng),其特征在于,所述系統(tǒng)用于向量查詢驅動的ai應用場景、推薦系統(tǒng)、電子商務、計算機視覺、信息檢索或金融風險管理領域。