RAG(檢索增強生成)系統中常用的評估方法,這些評估指標主要用於衡量檢索系統的效能。
以下是老師提到(只是很快帶到)的十種方法,我們將逐一說明各個方法的內涵、公式介紹,以及它的發明者(如果有的話)。
本文由 Claude 協助生成,內容有可能不完全正確。
老師在課程影片中,使用了其中兩種:Hit Rate(命中率)、MRR(Mean Reciprocal Rank 平均倒數排名)。
▌講師介紹的十種方法
1. Precision at k (P@k) - 前k個結果的精確率
定義:衡量前k個搜尋結果中相關文件的比例。
公式:P@k = (前 k 個結果中相關文件數量) / k
公式解釋:
- 分子是前k個結果中真正相關的文件數量
- 分母是k(我們檢視的結果數量)
- 這個比例告訴我們在有限的結果中,有多少比例是有用的
為什麼重要:在RAG系統中,我們通常只會將前幾個最相關的文件作為上下文提供給LLM,因此前k個結果的品質至關重要。
發明者:這是資訊檢索領域的基礎概念,最早可追溯到1960年代的資訊檢索研究。
2. Recall - 召回率
定義:衡量系統找到了多少比例的相關文件。
公式:Recall = (檢索到的相關文件數量) / (總相關文件數量)
公式解釋:
- 分子是系統實際找到的相關文件數量
- 分母是資料庫中所有相關文件的總數
- 這個比例反映系統的"覆蓋能力"
為什麼重要:高召回率確保重要資訊不會被遺漏,在RAG系統中這意味著用戶的問題有更高機會得到完整的答案。
發明者:同樣是資訊檢索的經典概念,由Kent和Berry在1955年提出。
3. Mean Average Precision (MAP) - 平均精確率均值
定義:對每個查詢計算平均精確率,然後對所有查詢取平均。
公式:MAP = (1 / |Q|) * Σ (Average Precision(q))
其中q屬於查詢集合Q
公式解釋:
- 先為每個查詢計算Average Precision(在每個相關文件位置計算precision,然後平均)
- 再對所有查詢的AP值取平均
- 這綜合考慮了精確率和排序品質
為什麼重要:MAP不僅考慮找到多少相關文件,還考慮這些文件的排序是否合理。在RAG中,排序靠前的文件會對答案產生更大影響。
發明者:在TREC(Text REtrieval Conference)競賽中被廣泛採用,成為標準評估指標。
4. Normalized Discounted Cumulative Gain (NDCG) - 正規化折扣累積增益
定義:考慮文件位置和相關程度的評估指標。
公式:
NDCG = DCG / IDCG
DCG = Σ ((2^rel_i - 1) / log2(i + 1))
其中i從1到pIDCG
是理想排序下的DCG值
公式解釋:
2^rel_i - 1
:相關程度的指數增長權重,高相關性得到更高分數log2(i + 1)
:位置折扣因子,排序越後面折扣越大- 正規化確保不同查詢之間可以比較
為什麼重要:NDCG特別適合評估有不同相關程度的文件排序,在RAG中這很重要,因為不同文件對回答問題的幫助程度不同。
發明者:由Microsoft的Kalervo Järvelin和Jaana Kekäläinen在2000年提出。
5. Mean Reciprocal Rank (MRR) - 平均倒數排名
定義:評估第一個相關文件的排名位置。
公式:MRR = (1 / |Q|) * Σ (1 / rank_i)
其中i從1到|Q|
公式解釋:
1 / rank_i
:第一個相關文件排名的倒數- 排名越前面,倒數值越大,分數越高
- 對所有查詢取平均
為什麼重要:在RAG系統中,用戶通常只關心能否快速找到答案,第一個相關結果的位置很關鍵。
發明者:在早期的問答系統評估中被提出,特別是在TREC QA track中使用。
6. F1 Score - F1分數
定義:精確率和召回率的調和平均數。
公式:F1 = 2 * (Precision * Recall) / (Precision + Recall)
公式解釋:
- 調和平均數比算術平均數更嚴格,只有當兩個值都高時F1才會高
- 係數2是為了正規化,使得當Precision = Recall時,F1 = Precision = Recall
為什麼重要:F1平衡了精確率和召回率,適合評估RAG系統的整體檢索效能。
發明者:源自統計學中的F-measure概念,由C.J. van Rijsbergen在1979年正式化。
7. Area Under the ROC Curve (AUC-ROC) - ROC曲線下面積
定義:衡量模型區分相關和不相關文件的能力。
公式解釋:
- ROC曲線繪製真正例率(TPR)對假正例率(FPR)
- AUC是曲線下面積,範圍0-1
- 越接近1表示分類能力越好
為什麼重要:在RAG中,我們需要系統能夠準確區分哪些文件對回答問題有幫助。
發明者:ROC分析源自二戰時期的雷達信號檢測理論。
8. Mean Rank (MR) - 平均排名
定義:第一個相關文件在所有查詢中的平均排名。
為什麼重要:直觀反映系統找到相關文件的平均效率,數值越小越好。
9. Hit Rate (HR) 或 Recall at k - 命中率
定義:在前k個結果中至少找到一個相關文件的查詢比例。
公式:HR@k = (前k個結果中至少有一個相關文件的查詢數) / |Q|
為什麼重要:在RAG系統中,只要前k個結果中有相關文件,就有機會產生正確答案。
10. Expected Reciprocal Rank (ERR) - 期望倒數排名
定義:基於用戶行為層疊模型的評估指標。
公式:ERR = Σ (1 / i) * Π (1 - r_j) * r_i
其中j從1到i-1
公式解釋:
- 考慮用戶可能在任何位置停止搜尋的概率
r_i
是位置i文件的相關概率Π (1 - r_j)
是用戶沒有在前面位置停止的概率
為什麼重要:ERR更貼近真實用戶行為,在RAG系統中這有助於優化用戶體驗。
發明者:由Microsoft Research的Olivier Chapelle等人在2009年提出。
總結
這些評估指標各有特點:
- P@k, HR@k:關注前k個結果的品質
- Recall:關注覆蓋範圍
- MAP, NDCG:綜合考慮排序和相關性
- MRR:關注第一個相關結果
- F1:平衡精確率和召回率
在RAG系統評估中,通常會結合多個指標來全面評估檢索組件的效能,確保系統能為LLM提供高品質的上下文資訊。
▌最常使用的 RAG 評估指標
》框架工具受歡迎程度排序 (基於GitHub星數和使用率 排序)
-
RAGAS
- GitHub星數顯著增長,在2024年成為最受歡迎的RAG評估框架
- 與LangChain和LlamaIndex深度整合,廣泛用於業界
- 專為RAG系統設計的評估指標
-
LangChain/LangSmith
- LangSmith提供強大的評估和觀察平台,支援複雜的提示序列追蹤
- 與生態系統整合良好
-
DeepEval
- 開源LLM評估框架,提供類似單元測試的介面
- 輕量級實驗選擇
-
TruLens
- 專注於定性分析,提供反饋函數來分析LLM回應
- 企業級RAG評估工具
-
Arize Phoenix
- 開源AI觀察和評估工具,支援即時評估
》指標使用頻率排序 (基於學術和工業應用)
使用頻率排序 = “大家實際在用什麼?”(客觀統計,指目前市場使用現狀)
檢索評估指標
-
NDCG (Normalized Discounted Cumulative Gain)
- 在資訊檢索中廣泛使用的排名指標,考慮多層相關性和位置權重
- 學術界和工業界的標準評估指標
-
MAP (Mean Average Precision)
- 能更全面評估系統效能,綜合考慮精確率和排序品質
- TREC競賽等評估競賽的標準指標
-
MRR (Mean Reciprocal Rank)
- 專注於第一個相關文件的位置,在資訊檢索任務中經常使用
-
Precision@k
- 實用性高,適合RAG系統前k個結果評估
-
Recall
- 基礎但重要的覆蓋率指標
生成評估指標
-
BLEU
- 機器翻譯領域最廣泛使用的評估指標,強調精確匹配
- 歷史悠久,應用最廣
-
ROUGE
- 在文字摘要、文件生成和問答任務中表現良好,強調召回率
-
BERTScore
- 利用預訓練transformer的上下文嵌入評估語意相似性
- 新興但快速增長的指標
-
F1 Score
- 平衡精確率和召回率的經典指標
》工業界vs學術界偏好
偏好分析 = “為什麼不同人群選擇不同指標?”(主觀動機, 選擇最適合自己情況的指標)
工業界偏好:
- 實用導向:P@k, NDCG, MRR
- 端到端評估:RAGAS指標套件
- 即時監控:TruLens, Phoenix
學術界偏好:
- 理論基礎:MAP, NDCG, DCG
- 傳統IR指標:Precision, Recall, F1
- 新興研究指標:BERTScore, 多模態指標
》 2024-2025年趨勢指標
熱門新興指標:
-
多模態RAG評估指標
- 專家預測多模態RAG將成為主導,整合文字、圖像和音訊
-
LLM驅動的評估指標
- 使用LLM進行評分的新趨勢,提供大幅的成本和時間節省
-
Faithfulness和Context Precision
- RAGAS中表現優異的指標,特別是answer relevancy和context recall
》 選擇建議
RAG市場預計在2024-2030年間將有44.7%的年複合成長率:
- 初學者:使用RAGAS + LangChain組合
- 研究導向:NDCG + MAP + 自定義指標
- 生產環境:TruLens + Phoenix 即時監控
- 輕量實驗:DeepEval + 基礎指標
參考資料來源
主要資料來源包括:
- GitHub 星數統計和框架使用率
- TREC 競賽等學術評估基準
- 近期共享任務中的評估實踐調查
- 工業界應用報告和技術部落格
- Scientific Reports 等學術期刊的評估指標研究
這個排序反映了當前市場的實際使用情況,結合了學術研究的嚴謹性和工業應用的實用性考量。