跳到主要內容
AI News HubLIVE
站內改寫2 分鐘閱讀

微調稀疏嵌入用於電子商務搜尋 | 第一部分:為什麼稀疏嵌入優於 BM25

文章摘要

本文是系列文章的第一部分,探討了在電子商務搜尋中微調稀疏嵌入的優勢。與密集嵌入相比,稀疏嵌入保留了精確匹配的關鍵細節,避免了語義模糊導致的不相關結果。文章介紹了SPLADE模型的工作原理、查詢擴充套件能力以及Qdrant資料庫對稀疏向量的原生支援。透過微調,該系統在Amazon ESCI資料集上實現了比BM25高出29%的效能提升。

來源Qdrant Blog作者: [email protected] (Andrey Vasnetsov)
微調稀疏嵌入用於電子商務搜尋 | 第一部分:為什麼稀疏嵌入優於 BM25
回報錯誤

更正管道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

在電子商務搜尋中,細節決定成敗。搜尋“iPhone 15 Pro Max 256GB”時,密集嵌入系統可能返回128GB版本,因為語義相似性高,但客戶明確指定了256GB。這種差異揭示了傳統嵌入方法的根本缺陷:它們將文本壓縮成固定大小的向量,模糊了關鍵屬性。而稀疏嵌入透過保留每個詞的精確權重,解決了這一問題。

本文是五部分系列文章的第一部分,旨在構建一個完整的微調稀疏嵌入系統,最終在Amazon ESCI資料集上實現比BM25高29%的檢索效能。我們將從資料載入、GPU訓練、評估到困難負樣本挖掘,逐步實現生產級系統。

密集嵌入在電子商務中的問題

密集嵌入(如OpenAI、Cohere或微調句子變換器)將文本壓縮為384至1536維的稠密向量,擅長捕獲語義相似性。然而,這種優勢在電子商務中成為弱點:精確匹配被模糊化,SKU編號、型號名稱、特定規格等關鍵區分項被平均化到相同向量空間;近似最近鄰索引導致召回率與速度的權衡;結果不可解釋,難以回答“為什麼產品A排在B之前”。

稀疏嵌入的解決方案

稀疏嵌入將文本投影到大型詞彙空間(通常30000+維度),但只有100-300個非零值。每個維度對應一個實際詞彙,權重可解釋。與BM25類似,稀疏嵌入使用倒排索引進行精確檢索,無需近似,同時保留精確匹配能力。

SPLADE模型

SPLADE(稀疏詞彙擴充套件)是核心架構。它透過Transformer和掩碼語言模型頭處理文本,然後應用最大池化和對數飽和度(log(1+ReLU(x)))生成稀疏權重。例如,輸入“noise canceling headphones”會輸出包含“headphones”(2.3)、“noise”(1.9)、“canceling”(1.7)、“audio”(1.2)等權重的稀疏向量。對數飽和度防止單個詞主導得分。

模型同時學習三件事:權重重要詞、擴充套件查詢相關詞、抑制噪聲。查詢“summer dress”除了保留原詞,還自動新增“sundress”、“floral”、“cotton”等擴充套件詞,匹配BM25無法找到的產品。

Qdrant對稀疏向量的支援

Qdrant資料庫將稀疏向量視為一等公民,支援加權稀疏向量、混合搜尋(透過RRF融合稀疏和密集結果)和倒排索引。與ANN不同,稀疏檢索精確且不犧牲召回率。

技術棧

訓練流水線結合Modal(按需A100 GPU)、Sentence Transformers v5(包含SparseEncoder架構和SpladeLoss)和Qdrant(原生稀疏向量支援)。整套程式碼開源,並提供CLI工具一鍵微調。

系列展望

後續文章將詳細介紹訓練、評估、困難負樣本挖掘、領域專業化與泛化,以及生產部署。最終模型在Amazon ESCI上nDCG@10達到0.388,遠超BM25的0.301。

展開要點與分析

文章情報

工程師進階

要點

  • 密集嵌入在電子商務中會模糊精確匹配,導致不相關搜尋結果。
  • 稀疏嵌入透過大詞彙空間保留每個詞的重要性權重,實現精確匹配和可解釋性。
  • SPLADE模型結合查詢擴充套件和詞項抑制,比BM25更準確。
  • Qdrant原生支援稀疏向量,實現精確倒排索引檢索和混合搜尋。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。