MODULE m4 · 8.0 HOURS

檢索品質指標 (召回率@k, MRR, nDCG)

已完成 0%

LEARNING OBJECTIVES

本模組目標

  1. 理解檢索增強生成 (RAG) 管線中檢索階段的重要性。
  2. 學習召回率@k、MRR、nDCG 指標的概念及其在 RAG 系統評估中的意義。
  3. 分析檢索到的上下文相關性對後續答案生成品質的影響。

RAG 檢索品質評估的重要性

RAG 系統會從外部資料庫檢索相關資訊,並將其傳遞給 LLM 以生成答案 [S3]。因此,如果檢索階段無法識別出高相關性且集中的上下文,即使 LLM 再強大,也很難生成準確的答案 [S3]。評估檢索品質是改進 RAG 架構整體性能的第一步。

主要檢索評估指標

  1. Recall@k (召回率):衡量在前 k 個檢索結果中是否包含實際的正確答案。換句話說,此指標用於確認所需的資訊是否已被檢索系統捕獲。
  2. MRR (Mean Reciprocal Rank,平均倒數排名):衡量使用者問題的正確答案(相關文件)在檢索結果列表中的位置。相關文件越早出現在列表中的第一個位置,MRR 值就越接近 1 並獲得高分。
  3. nDCG (normalized Discounted Cumulative Gain,歸一化折損累積增益):考量檢索結果順序的指標,相關性高的文件若位於頂部位置,將獲得更高的分數。相較於單純的包含與否(召回率),此指標能更精確地評估檢索結果的「排名準確性」。

這些指標在有參考數據(Ground Truth)的情況下對於系統改進至關重要,Ragas 等框架提供了能夠定量分析這些維度的工具 [S3, S4]。

WORKED EXAMPLES

講解範例

  1. 對於問題,系統依序返回 [DocB, DocA, DocC],若正確答案相關文件為 DocA,則 MRR 計算:DocA 為第 2 個,因此倒數排名為 1/2 = 0.5。
  2. 當 k=3 時,若前 3 個檢索結果包含正確答案文件,則 Recall@3 = 1;若不包含,則 Recall@3 = 0。

LAB PROTOCOL

檢索品質指標定量測量實作

  1. 1

    使用評估集(問題、正確答案文件)準備 50 個樣本數據。

  2. 2

    執行檢索模組,接收每個問題的前 k (k=3, 5, 10) 個文件。

  3. 3

    使用 Python 直接實作 Recall@k、MRR、nDCG 函數,或使用函式庫計算。

  4. 4

    將各問題的指標結果整理成資料框並視覺化。

安全檢查
  • 不將包含個人資訊或非公開文件的資料集傳輸到外部 API。
  • 實驗時設定 API 費用限制並利用快取優化請求數量。

實驗繳交成果

  • 包含各問題 Recall@k、MRR、nDCG 值的結果資料框 CSV
  • 顯示指標分佈的長條圖及箱形圖圖片

ASSIGNMENT

檢索器(Retriever)性能比較報告

繳交成果

評分標準

  • 是否準確計算 Recall@k、MRR、nDCG 指標?
  • 是否對檢索性能差異進行了統計學上顯著的解釋?
  • 是否系統地分類了失敗類型?

KNOWLEDGE CHECK

理解檢查

1RAG 系統中檢索階段的品質對生成階段有何影響?
2MRR 指標最高時為何時?

FIELD CHECK

完成標準

  • 完成了Recall@k、MRR、nDCG的計算程式碼並應用於樣本資料。
  • 比較了兩種搜尋策略並得出了定量分析結果。
  • 分類了至少3種搜尋失敗類型並記載於報告中。

MODULE SOURCES

本模組參考資料

  1. [2309.15217] Ragas: Automated Evaluation of Retrieval ... Ragas: Automated Evaluation of Retrieval Augmented Generation RAGAS: Automated Evaluation of Retrieval Augmented Generation RAGAs: Automated Evaluation of Retrieval Augmented Generation RAGAS: Automated Evaluation of Retrieval Augmented Generation RAGAS: Automated Evaluation of Retrieval Augmented Generationarxiv.org · paper
  2. Ragas: Automated Evaluation of Retrieval Augmented Generationarxiv.org · paper