DPR, Dense Vector Retrieval (稠密向量檢索)
一種用雙編碼器把「問題」與「文件段落」轉成向量
並用向量相似度來找相關內容的檢索方法
方法
- Query Encoder:把「問題」編碼成向量
- Passage Encoder:把「文件段落」編碼成向量
- 相似度計算:通常使用 inner product / cosine similarity
- 取 Top-k:找出最相關的段落
兩個 encoder 通常是 BERT 類模型,但參數不共享(dual encoder)
Contrastive Learning (對比學習) 訓練:
- 正樣本:正確段落
- 負樣本:不相關段落
- 目標:
- 讓
query ⬌ 正確 passage向量距離更近 - 讓
query ⬌ 錯誤 passage距離更遠
- 讓
DPR = 用深度模型做「語意導向」文件檢索的雙編碼器方法,是現代 RAG, Retrieval-Augmented Generation 系統的核心技術之一