段落排序 是什麼?

Passage Ranking:段落排序 的完整解釋

段落排序是一種信息檢索技術,不是返回整個文檔,而是返回包含相關信息的最相關段落。它提高了搜索結果的精確性和用戶體驗。

核心概念

段落排序解決的是粒度問題:

  1. 文檔級排序的局限:返回整個文檔,用戶需要自己在文檔內搜索答案
  2. 句子級排序過於細粒度:句子可能上下文不足,難以理解
  3. 段落級是最佳平衡:段落包含足夠的上下文,同時也足夠精確

段落的定義可以是:

  • 固定長度的文本片段(如 100 詞)
  • 邏輯段落(由句號、段落標記等分界)
  • 動態段落(根據內容和查詞動態確定)

運作原理

段落排序系統通常遵循以下流程:

第一步:段落切分

將原始文檔分解為多個段落。可以使用:

  • 固定窗口方法:每 100 詞為一個段落
  • 重疊窗口方法:相鄰段落有重疊,保留上下文
  • 邏輯分割:根據文檔結構(如段落、小節)進行切分

第二步:段落檢索

使用檢索模型(如 BM25、密集檢索)找到可能相關的段落:

  • 建立段落級的倒排索引
  • 返回得分最高的 k 個段落

第三步:段落排序

使用排序模型對候選段落進行精細排序:

  • 傳統排序:使用 BM25、TF-IDF 等基於詞的模型
  • 神經排序:使用 BERT、CrossEncoder 等深度模型
  • 混合排序:結合多個信號進行排序

第四步:結果呈現

將排序後的段落呈現給用戶,通常包含:

  • 段落摘錄
  • 段落來源(哪個文檔)
  • 相關性得分或置信度

實際應用

  • 搜索引擎結果摘要:Google 等搜索引擎顯示的「精選摘錄」
  • 開放域問答系統:檢索包含答案的段落,然後進行機器閱讀理解
  • 文檔檢索優化:在非常長的文檔中精確定位相關內容
  • 多跳推理:在多個段落間進行推理以回答複雜問題
  • 實時信息檢索:快速定位最新信息所在的段落

常見誤區

許多人認為段落排序就是簡單的「摘取相關句子」,但實際上它涉及複雜的語言理解、上下文保留、信息融合等問題。同時,段落的粒度選擇對結果質量有重大影響。

常見問題