在生物醫學和生物資訊學領域,PRC 和 AUPRC 有著非常廣泛的應用。然而,常用的計算工具本身存在的問題可能會被研究人員忽略,從而可能導致對結果解讀的偏差。2024 年 5 月,香港中文大學曹沁研究助理教授與徐國榮教授在 Genome Biology 上發表了一篇題為《Commonly used software tools produce conflicting and overly-optimistic AUPRC values》的文章,比較了常用軟體工具在基因組學研究中的計算結果,發現產生的 AUPRC 值之間存在衝突和過度樂觀的情況。研究人員在使用這些工具評估和解釋基因組學研究結果時,需要謹慎,避免可能的誤導性結果和偏見。
摘要
文章討論了精確率-召回率曲線(Precision-Recall Curve, PRC)和曲線下面積(Area Under the Precision-Recall Curve, AUPRC)這兩個在分類效能評估中非常有用的指標。它們特別適用於處理類別不平衡的情況,比如癌症診斷和細胞型別註釋。作者評估了 10 個流行的繪圖 PRC 和計算 AUPRC 的工具,這些工具在超過3000項已發表的研究中被集體使用。研究發現,這些工具計算出的 AUPRC 值對分類器的排名不同,並且有些工具產生了過於樂觀的結果。
引言
在計算生物學中,許多問題可以被表述為二元分類問題,目標是推斷一個實體(例如,一個細胞)是否屬於目標類別(例如,一種細胞型別)。準確率、精確率、敏感性(即召回率)、特異性和F1分數是一些常用的量化分類效能的指標,但它們都需要一個分類得分的閾值來將每個實體分配到目標類別或非目標類別。接收者操作特徵(ROC)和PRC透過考慮多個閾值來避免這個問題,允許詳細檢查識別目標類別實體和錯誤包含非此類別的實體之間的權衡。通常透過曲線下的面積(AUROC 和 AUPRC)來概括這些曲線,值在 0 到 1 之間,較大的值對應更好的分類效能。當不同類別的大小不平衡時(例如,目標細胞型別只有少數細胞),AUPRC 是比 AUROC 更敏感的指標,尤其是在頂部預測中存在錯誤時。因此,AUPRC 已在多種應用中被使用,例如重建生物網路、識別癌症基因和必需基因、確定蛋白質結合位點、插補稀疏實驗資料和預測患者治療反應等。AUPRC 也被廣泛用作基準測試的效能指標。
方法
-
工具資訊:研究查詢了 12 個常用於 PRC 和 ROC 分析的工具,並分析了截至 2023 年 8 月 15 日的最新穩定版本。這些工具中,其中 10 個 可以同時計算 AUROC 和 AUPRC,研究只關注這 10 個工具:
- ROCR: R 語言的一個包,用於生成 ROC 曲線和 PRC。
- Weka: 一個廣泛使用的機器學習工具,含有多種分類器和視覺化工具。
- scikit-learn: Python的一個機器學習庫,提供 PRC 和 AUPRC 的計算方法。
- PerfMeas: R 語言的一個包,專門用於效能評估。
- PRROC: R 語言的一個包,用於計算和視覺化 PRC 和 ROC 曲線。
- TensorFlow: 一個開源的機器學習平臺,支援多種語言的 API。
- precrec: R 語言的一個包,用於快速準確地計算 PRC 和 ROC 曲線。
- TorchEval: PyTorch 的一個評估模組,用於計算 AUPRC。
- MLeval: R 語言的一個包,用於機器學習模型的評估。
- yardstick: R 語言的一個包,提供模型效能的 tidy 評估。
-
資料收集和處理:作者使用四個現實場景來說明 AUPRC 計算的問題,並詳細描述了資料的獲取和處理方法。
結果
- 基礎:分類器為每個實體輸出一個得分,表明它屬於目標(即“正”)類別的可能性。根據分類器的不同,得分可以是離散的(例如,隨機森林)或連續的(例如,人工神經網路)。使用閾值 t,分類得分可以轉換為二元預測,將所有得分 ≥ t 的實體視為屬於正類別,其他實體視為不屬於。將這些預測與實體的實際類別進行比較時,精確率定義為被預測為正的實體中實際為正的比例,而召回率定義為實際為正的實體中被預測為正的比例。
- 不同工具的概念和實現問題:作者分析了 10 個常用工具,這些工具在處理 AUPRC 值時存在五個概念問題,包括使用線性插值處理並列問題、始終使用 (0,1) 作為 PRC 的起始點、不生成覆蓋從零到全部召回值的完整 PRC、按輸入順序對具有相同分類得分的實體進行排序然後像它們具有不同的分類得分一樣處理它們、以及不是將所有錨點放在 PRC 上。
- 工具產生的 AUPRC 值的不一致性和對比鮮明的分類器排名:作者將這些工具應用於四個現實場景中的分類器評估,並發現不同的工具和它們的問題影響了PRC分析的實踐。例如,在 COVID-19 研究資料的分析中,10 個工具產生了6個不同的 AUPRC 值,範圍從 0.416 到 0.684。在使用這些工具評估不同分類器預測潰瘍性結腸炎(UC)亞型炎症性腸病(IBD)的效能時,基於 AUPRC 值,10 個工具對分類器的排名不同。
結論
由於 PRC和 AUPRC 的計算複雜性,人們很容易忽視用於生成 PRC 和 AUPRC 的軟體工具的不一致性和問題。一些可能的後果包括報告過於樂觀的 AUPRC、不同工具對分類器的不同排名,以及向評估過程引入偏見,例如提高產生離散分數的分類器的 AUPRC。為了解決這些問題,至關重要的是要使用沒有描述中的錯誤的工具,並避免使用線性插值方法。還有必要在手稿中清楚地說明所使用的工具(及其版本號)以及工具實現用於生成 PRC 和 AUPRC 的底層方法。在可行的情況下,建議採用實現不同方法的多個工具(例如,一個基於連續期望,一個基於 AP),並全面報告它們所有的結果。
文章連結
https://doi.org/10.1186/s13059-024-03266-y