譯者 | 李睿
審校 | 重樓
向量數據庫是專門用于處理非結構化、復雜數據(如圖像、文本或音頻)的高維向量表示的存儲和檢索的系統。通過將復雜數據表示為數值向量,這些系統理解場景和概念相似性,為查詢提供明顯相似而不是精確匹配的結果,從而實現高級數據分析和檢索。
隨著向量數據庫中數據量的增加,信息的存儲和檢索變得越來越具有挑戰性。二進制量化將高維向量簡化為緊湊的二進制代碼,減少了數據大小,并提高了檢索速度。這種方法提高了存儲效率,實現了更快的搜索,允許數據庫更有效地管理規模更大的數據集。
理解二進制量化
在獲得初始嵌入后,然后應用二進制量化。二進制量化將給定向量的每個特征簡化為二進制數字0或1。它為正值賦值為1,為負值賦值為0,從而捕獲相應數字的符號。
例如,如果一張圖像由四個不同的特征表示,其中每個特征都包含一個在float32存儲單元范圍內的值,則對該向量執行二進制量化將把每個特征轉換為一個二進制數字。這樣,由4個float32值組成的原始向量將被轉換成具有4個二進制數字的向量,例如[1, 0,0, 1] 僅占用4位。
通過將存儲在每個維度上的數字從float32轉換為1位,這大幅減少了每個向量占用的空間量,減少了32倍。然而,這個過程是不可逆的——這使其成為一種有損壓縮技術。
為什么二進制量化對高維數據很有效
當在空間中定位向量時,符號表示移動的方向,而幅度指定在選定的方向上移動的距離。
在二進制量化中,通過保留每個向量分量的符號來簡化數據——1表示正值,0表示負值。雖然這可能看起來很極端,因為它忽略了沿著每個軸的移動幅度,但令人驚訝的是,它對高維向量非常有效。以下對這個看似激進的方法如此有效的原因進行探討。
向量數據庫中二進制量化的優點
提升性能
二進制量化通過采用二進制代碼(0和1)表示向量來增強性能,允許使用漢明距離(Hamming distance)作為相似性度量。漢明距離是使用二進制向量之間的異或(XOR)運算來計算的:XOR在位不同時的結果為1,在位相同時的結果為0。異或結果中的1的數量表示不同位的數量,提供了一種快速有效的相似性度量。
與更復雜的距離度量(如歐幾里得距離)相比,這種方法簡化并加快了向量比較。
提高效率
二進制量化將向量從32位浮點數壓縮為1位二進制數,從而大幅減少了存儲需求,如上圖所示。這種壓縮降低了存儲成本,并加快了處理速度,對于需要存儲和管理大量數據的向量數據庫來說非常高效。
可擴展性
增加維度減少表示中的沖突,這使得二進制量化對高維向量來說更有效。
這種增強的功能允許對大量數據集進行有效的管理和存儲,因為緊湊的二進制格式顯著地減少了存儲空間和計算負載。隨著維數的增加,潛在區域的指數增長確保了沖突最小化,從而保持了高性能和響應性。這使得它成為可擴展向量數據庫的理想選擇,能夠輕松處理不斷增長的數據量。
挑戰與考慮因素
準確度和精確度
二進制量化在顯著提高搜索速度的同時,也影響了搜索結果的準確性和精確度。具有高分辨率的數據提供的細微差別和細節可能會丟失,從而導致結果不太精確。此外,二進制量化是有損壓縮,這意味著一旦數據經過量化,原始信息將不可挽回地丟失。將二進制量化與高級索引技術(如HNSW)相結合,可以在保留二進制編碼速度優勢的同時提高搜索精確度。
實施復雜性
SIMD(單指令多數據)指令等專用硬件和軟件對于加速位操作至關重要,允許同時處理多個數據點,即使在暴力計算相似性的方法中也能顯著加快計算速度。
數據預處理
二進制量化假設數據處于正態分布。當數據出現偏斜或有異常值時,二進制量化可能導致次優結果,影響向量數據庫的準確性和效率。
度量差異
二進制量化器使用漢明距離來準確測量基于角度的度量(如余弦相似度),但與歐幾里得距離等度量相矛盾。因此,應該根據應用領域適當選擇它來測量位之間的距離。
未來趨勢及發展
在二進制量化方面,可以期待一些改進,例如基于數據分布調整閾值以提高準確性,并結合反饋循環以進行持續改進。此外,將二進制量化與高級索引技術相結合,有望進一步優化搜索效率。
二進制量化在向量數據庫中的應用
- 圖像和視頻檢索:圖像和視頻代表具有大量存儲需求的高維數據。例如,一張高分辨率圖像可以有數百萬像素,每個像素都需要多個字節來表示顏色信息。二進制量化將這些高維特征向量壓縮成緊湊的二值碼,顯著地減少了存儲需求,提高了檢索效率。
- 推薦系統:二進制量化通過將用戶和項目特征向量轉換為緊湊的二進制代碼來增強推薦系統,從而提高速度和效率。通過與局部敏感哈希(LSH)等近似最近鄰技術相結合,可以進一步優化這一點,確保通過精細搜索提供準確的推薦。
- 自然語言處理(NLP):通過減少向量數據庫中的存儲需求,二進制量化有助于處理和分析文本數據,從而實現高效的性能。這種NLP技術允許更快地檢索和比較文本數據,使聊天機器人在處理用戶查詢時響應更快、更有效。
結論
二進制量化為處理向量數據庫中高維向量數據的復雜性提供了一種強大的解決方案。通過將高維向量轉換為緊湊的二進制代碼,該技術大幅減少了存儲需求,并加快了檢索時間。
此外,它與先進的索引方法相結合,進一步提高了檢索的準確性和效率,使其成為信息檢索的通用工具。用于存儲維度數據的向量數據庫可以利用快速存儲硬件來加速處理工作負載,無論是人工智能訓練還是基于檢索增強生成(RAG)的應用程序。
原文標題:Exploring Binary Quantization in Vector Databases,作者:Martin Summer