Основные понятия
SymphonyQG 是一種新的近似最近鄰搜尋(ANN)演算法,它通過將量化技術 RaBitQ 與圖結構索引更協同地整合,顯著提升了搜尋效能和索引速度。
研究目標
本研究旨在解決現有基於圖結構的近似最近鄰搜尋(ANN)方法在查詢和索引方面的效能瓶頸,特別是 NGT-QG 方法存在的限制。研究目標是開發一種名為 SymphonyQG 的新方法,通過更協調地整合量化技術和圖結構索引,以提高 ANN 查詢的效能。
方法
SymphonyQG 基於以下四個主要構想:
**整合 RaBitQ 量化方法:**將 RaBitQ 整合到基於圖結構索引的搜尋方案中,利用其提供具有嚴格誤差界限的無偏估計器的優勢,並解決向量歸一化和使用 FastScan 進行高效距離估計等技術挑戰。
**聯合設計搜尋演算法和資料佈局:**設計一種新的搜尋演算法和專用資料佈局,通過將原始資料向量與基於圖結構搜尋所需的資料(例如,鄰居及其量化碼)緊湊地儲存,以最大程度地減少隨機記憶體訪問。
**利用 FastScan 加速索引構建:**利用 FastScan 加速基於圖結構索引的構建過程,通過迭代調整圖結構,並使用高效的搜尋演算法為每個頂點尋找最近鄰居作為候選邊。
**圖結構優化:**提出一種圖結構優化策略,通過補充邊緣來確保圖結構中每個頂點的出度嚴格為批次大小的倍數,從而更好地與 FastScan 對齊,並充分利用其批次計算能力。
主要發現
SymphonyQG 在所有測試的真實世界資料集上,在時間-準確性權衡方面建立了新的最先進水平。
在 95% 的召回率(K = 10)下,SymphonyQG 的 QPS 比最具競爭力的基準測試高出 1.5 倍到 4.5 倍,比經典的 HNSWlib 函式庫高出 3.5 倍到 17 倍。
SymphonyQG 的索引速度至少比 NGT-QG 快 8 倍。
主要結論
SymphonyQG 通過更協調地整合量化技術和圖結構索引,成功地解決了現有基於圖結構的 ANN 方法的效能瓶頸。實驗結果證明了 SymphonyQG 在搜尋效能和索引速度方面的顯著提升,使其成為 ANN 查詢的有效解決方案。
研究意義
本研究為 ANN 查詢領域做出了重要貢獻,提出了一種新穎且高效的演算法 SymphonyQG,該演算法在時間-準確性權衡方面優於現有方法。SymphonyQG 的開源函式庫也為研究社群和業界從業者提供了易於使用和評估的工具。
局限性和未來研究方向
SymphonyQG 目前僅支援歐幾里德空間和餘弦相似度的 ANN 查詢,因為其使用的量化方法 RaBitQ 是為這些度量標準設計的。未來研究可以探索將 SymphonyQG 擴展到其他距離度量標準,並進一步優化其效能和記憶體消耗。
Статистика
在 95% 的召回率(K = 10)下,SymphonyQG 的 QPS 比最具競爭力的基準測試高出 1.5 倍到 4.5 倍。
SymphonyQG 的 QPS 比經典的 HNSWlib 函式庫高出 3.5 倍到 17 倍。
SymphonyQG 的索引速度至少比 NGT-QG 快 8 倍。
在 Deep-1M 資料集中,約有 23% 的頂點具有非完整批次。
MSong 資料集上圖結構的平均出度為 19.8(當 R = 32 時)。