詳細解釋
交叉編碼器(Cross-encoder)是將查詢和文檼聯合輸入的架構,用於精確重排序候選文檼。
架構:
- 聯合輸入:[CLS]查詢[SEP]文檼[SEP]
- 深度交互:自注意力層充分交互
- 分類輸出:相關性分數
- 無法預計算:每次需重新計算
優勢:
- 精度高:深度交互捕捉細節匹配
- 準確:通常優於雙編碼器
局限:
- 計算慢:無法預計算,每對需前向傳播
- 不適合大規模:只能用於少量候選
應用:
- 重排序:對召回的100個候選精排
- 問答匹配:問題-答案對評分
- 語義相似度:句子對精確比較
- 事實驗證:聲明-證據匹配
代表模型:
- BERT重排序:微調BERT打分
- Electra:判別式預訓練
- 各種交叉編碼器變體
與雙編碼器的結合:
- 兩階段檢索標配
- Bi-encoder召回 + Cross-encoder精排
- 兼顧效率和準確性
是精確檢索的關鍵技術。