最大內積搜尋(MIPS)是機器學習中的關鍵子程式,用於在資料庫中找到與給定查詢向量最匹配的鍵向量。傳統MIPS方法對每個查詢獨立執行,當查詢分佈已知且鍵資料庫固定時,重複求解成本高昂。本文提出攤銷MIPS,這是一種基於迴歸的新型方法,透過訓練神經網路直接預測MIPS解,從而攤銷多次查詢的成本。
作者的核心洞察在於,MIPS的值函式實際上是鍵集的一個支撐函式——一種經過充分研究的凸函式,其梯度直接指向最優鍵。基於此,他們設計了兩種互補的攤銷模型:SupportNet和KeyNet。SupportNet是一個輸入凸神經網路,用於迴歸支撐函式,可以作為叢集路由器快速將查詢導向相關的資料庫分割槽。KeyNet則是一個向量值網路,直接回歸最優鍵,可以作為原始查詢的即插即用替代,無縫整合到現有索引流程中。
在BEIR基準測試中,針對文件嵌入,作者比較了這些模型與標準IVF(倒排檔案)索引的效能。實驗結果表明,在相同的計算預算下(無論是FLOPs、探針數還是實際執行時間),訓練後的SupportNet和KeyNet均顯著提高了IVF匹配率。這意味著攤銷MIPS不僅避免了多次昂貴的搜尋,還能在有限資源下獲得更優的檢索結果。
作者已將程式碼開源,供社群復現和進一步研究。這項工作為高效檢索系統提供了新的視角,尤其適用於查詢分佈穩定的大規模資料庫場景。該研究由MIT的Theo X. Olausson與Apple的João Monteiro、Michal Klein和Marco Cuturi共同完成。