iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用

Precision 0.8、Recall 0.6,F1 分數是多少?

原題 16

在二元分類問題中,若精確率(Precision)為 0.8,召回率(Recall)為 0.6,則 F1 分數(F1 Score)為何?

白話

F1 分數是把精確率(Precision)和召回率(Recall)合併成一個數字的評估指標,計算方式是這兩個數的「調和平均數」,公式是 2PR÷(P+R)。

題目給了 P = 0.8、R = 0.6,要你代入公式算出 F1 的值。

問你:Precision = 0.8、Recall = 0.6 時,F1 分數的計算結果是多少?

點選你的答案。

01 總結

一句話總結

F1 = 2 × 0.8 × 0.6 ÷ (0.8 + 0.6) = 0.96 ÷ 1.4 ≈ 0.686。F1 分數是調和平均數,比算術平均數(0.7)更低,因為調和平均對兩個值中較低的那個更敏感。

02 情境

先感受問題:Precision 高、Recall 低,怎麼算一個公平的綜合分?

「健診科技」的 AI 疾病篩檢系統每天處理 1000 人的血液報告,把每份報告分類成「有風險(正例)」或「無風險(負例)」。

工程師小明評估模型:

  • Precision = 0.8:AI 說「有風險」時,真的有 80% 是真正有風險的人。
  • Recall = 0.6:所有真正有風險的人裡,AI 找到了 60%(漏掉了 40%)。

主管問:「這個模型的綜合表現怎麼打一個分數?」

直接取算術平均:(0.8 + 0.6) / 2 = 0.7,但這樣對「漏掉 40% 的病患」這個嚴重問題不夠敏感。F1 的調和平均設計就是為了解決這個問題。

03 對照

為什麼不直接用算術平均?

  1. 算術平均掩蓋極端值:Precision = 1.0、Recall = 0.1 的模型,算術平均 = 0.55,和 Precision = 0.8、Recall = 0.6(算術平均 0.7)比看起來沒差多少,但前者漏掉 90% 的病患,是嚴重缺陷。
  2. 調和平均對低值更嚴格:F1 = 2PR/(P+R),任一數值越低,F1 就越低。Recall = 0.1 的模型,F1 ≈ 0.18,遠低於算術平均 0.55,更忠實反映模型的弱點。
  3. 直接相加不考慮兩者的互制性:Precision 和 Recall 存在此消彼長關係,調和平均確保兩者都必須夠好,F1 才能高。
  4. 無法在不同模型之間進行有意義的比較:只有一個綜合指標,才能系統性地排序不同配置的模型,用兩個數字(P 和 R)比較多個模型很繁瑣。
  5. 誤差對稱假設不合理:漏掉病患(Recall 低)的代價,通常遠大於誤報(Precision 低),但即使以 F1 為基準,也要注意 F1 預設 P 和 R 等權重,高風險場景應考慮 Fβ(如 F2)。
04 解法

F1 公式計算:一步一步來

小明代入公式:

F1 = 2 × P × R ÷ (P + R)

F1 = 2 × 0.8 × 0.6 ÷ (0.8 + 0.6)

F1 = 2 × 0.48 ÷ 1.4

F1 = 0.96 ÷ 1.4

F1 ≈ 0.6857 ≈ 0.686

注意:選項 B「0.700」是算術平均 (0.8 + 0.6) / 2,是計算陷阱。選項 C「0.720」是 0.8 × 0.9(瞎猜),選項 D「0.750」是 0.8 × 0.6 / (0.8 × 0.6) 的某種變形(也是錯的)。只有帶入正確公式 2PR/(P+R) 才能得到 0.686。

這就是選項 A 講的:0.686

技術版:F1 公式的推導與調和平均的數學意義

中級考試大概率會考程式碼跟公式,所以這部分你還是要學。但如果現在學起來很痛苦,可以先跳過,等讀完其他題目回頭再來。

Step 1 純故事版(不出現公式)

調和平均的直覺:假設你的車去程用 60 公里/小時,回程用 120 公里/小時,「平均速度」是多少?

算術平均 = (60 + 120) / 2 = 90,但這是錯的。正確答案是 80——因為去程花了更多時間,低速的影響更大。

調和平均 = 2 × 60 × 120 / (60 + 120) = 14400 / 180 = 80,這才對。

F1 用同樣的邏輯:Recall 低的模型「花更多代價(漏掉更多病患)」,調和平均讓低值的影響被放大,不讓高 Precision 掩蓋低 Recall。

Step 2 公式拆解
白話說法公式
精確率(預測為正中真正為正的比例)P = TP / (TP + FP)
召回率(真正正例中被找到的比例)R = TP / (TP + FN)
F1 分數(P 和 R 的調和平均)F1 = 2PR / (P + R)
F1 的等價形式(以 TP/FP/FN 表示)F1 = 2TP / (2TP + FP + FN)
算術平均(錯的計算方式)(P + R) / 2 = (0.8+0.6)/2 = 0.700
Step 3 符號角色表
TP(True Positive)
真陽性:模型預測「有風險」,實際真的有風險
FP(False Positive)
假陽性:模型預測「有風險」,但實際無風險(誤報)
FN(False Negative)
假陰性:模型預測「無風險」,但實際有風險(漏報)
P(Precision)
精確率:預測為正例中,真正為正例的比例
R(Recall)
召回率:所有真正正例中,被正確預測的比例
Step 4 完整計算過程
題目給定:P = 0.8,R = 0.6

F1 = 2 × P × R ÷ (P + R)
   = 2 × 0.8 × 0.6 ÷ (0.8 + 0.6)
   = 2 × 0.48 ÷ 1.4
   = 0.96 ÷ 1.4
   = 0.68571...
   ≈ 0.686(取三位小數)

錯誤計算(算術平均,選項 B 的陷阱):
算術平均 = (0.8 + 0.6) / 2 = 0.700  ← 不是調和平均,不是 F1

驗證:F1 < 算術平均?
0.686 < 0.700 ✓  調和平均永遠 ≤ 算術平均
Step 5 自我複述
  1. F1 公式是什麼?為什麼不用算術平均?
  2. Precision = 0.9、Recall = 0.1,F1 是多少?(提示:F1 = 2 × 0.9 × 0.1 / 1.0 = 0.18)
  3. 調和平均為什麼總是小於或等於算術平均?
  4. F1 = 0.686 代表什麼直覺意義?(模型在「不誤報」和「不漏報」之間達到了約 68.6% 的綜合表現)
  5. 什麼情況下應該用 F2(β=2)而非 F1?
05 陷阱

為什麼其他選項是錯的

B0.700

字面在說什麼

0.700 = (0.8 + 0.6) / 2,這是 Precision 和 Recall 的算術平均數。

為什麼不對

F1 分數的定義是調和平均數(Harmonic Mean),不是算術平均數。調和平均的公式是 2PR/(P+R),計算結果是 0.686,比算術平均 0.700 更低。設計成調和平均的原因:對兩個值中較低的那個更敏感,避免高 Precision 掩蓋低 Recall 的問題。

誰會選錯

背了「F1 是 P 和 R 的平均」但沒記住是「調和平均」的人。這是最常見的計算陷阱:(0.8 + 0.6) / 2 = 0.7,感覺合理,但公式錯了。

C0.720

字面在說什麼

0.720 看起來介於 0.686 和 0.750 之間,像是某種「折中」的結果。

為什麼不對

代入任何正確的 F1 公式都不會得到 0.720。這個選項可能是用 0.8 × 0.9 或某種非標準計算方式湊出來的干擾值,對應到沒有任何標準統計意義的計算路徑。

誰會選錯

對公式不確定、覺得答案應該在幾個候選值中間的人。考試上應付計算題的關鍵是記住正確公式,而不是從選項反推哪個「比較合理」。

D0.750

字面在說什麼

0.750 = 0.6 / 0.8,或者也可能是某種混合計算的結果。

為什麼不對

0.750 = 0.6 / 0.8 是 Recall / Precision 的比值,這個比值本身沒有標準的 F1 意義。代入正確公式 F1 = 2 × 0.8 × 0.6 / (0.8 + 0.6) = 0.686,不是 0.750。

誰會選錯

把分子分母弄混,或者用 0.8 × (0.6 + 0.6) / (0.8 + ... ) 等錯誤公式計算的人。計算類題目一定要從公式出發,逐步代入,不能憑感覺選。

06 變形

同個考點下次怎麼變形

變形 1

Precision = 0.9、Recall = 0.5,F1 是多少?

直覺

Precision 很高但 Recall 很低,F1 應該會被 Recall 拖低。

答案

F1 = 2 × 0.9 × 0.5 / (0.9 + 0.5) = 0.9 / 1.4 ≈ 0.643。算術平均是 0.7,F1 比算術平均低 0.057,因為 Recall = 0.5 這個低值被調和平均放大了影響。

變形 2

Precision = Recall = 0.7,F1 是多少?

直覺

兩個值相等時,調和平均應該和算術平均一樣吧?

答案

是的。F1 = 2 × 0.7 × 0.7 / (0.7 + 0.7) = 0.98 / 1.4 = 0.7。當 P = R 時,調和平均 = 算術平均 = 幾何平均,三者相等。這是唯一一種 F1 不會低於算術平均的情況(其實是相等)。

變形 3

為什麼 F1 永遠 ≤ 算術平均?

直覺

是數學規律還是設計選擇?

答案

這是數學定理:對任意兩個正數,調和平均 ≤ 幾何平均 ≤ 算術平均(HM ≤ GM ≤ AM 不等式)。等號成立的條件是兩個數相等。F1 是調和平均,因此永遠 ≤ (P+R)/2,也就是說 F1 對低值的懲罰比算術平均更嚴格,是刻意的設計選擇。

變形 4

F2 分數的公式是什麼?什麼時候用?

直覺

疾病篩檢漏掉病患的代價遠大於誤報,這時候應該更重視 Recall?

答案

Fβ = (1+β²) × P × R / (β²P + R)。F2(β=2)讓 Recall 的權重是 Precision 的 4 倍。代入:F2 = 5 × 0.8 × 0.6 / (4×0.8 + 0.6) = 2.4 / (3.2+0.6) = 2.4/3.8 ≈ 0.632。比 F1 = 0.686 更低,反映了對 Recall = 0.6 這個弱點的更強懲罰。疾病篩檢、詐欺偵測場景常用 F2。

變形 5

F1 分數和 AUC-ROC 的差別是什麼?各自的適用場景是?

直覺

兩者都是分類模型的評估指標,用途有什麼不同?

答案

F1 分數是在某個固定閾值(通常 0.5)下計算,適合需要一個明確「是/否」決策的場景。AUC-ROC 評估的是模型在所有可能閾值下的整體辨別能力(不依賴閾值選擇),適合比較不同模型的整體排序能力。類別嚴重不平衡時,AUC-ROC 可能過於樂觀,F1 或 AUC-PRC(Precision-Recall Curve 下面積)更適合。

07 延伸

想再往下看,這 5 個

  • F1 Score(F1 分數)本題核心,Precision 和 Recall 的調和平均數,公式 2PR/(P+R),任一指標低都會拉低 F1。
  • 精確率(Precision)F1 的組成分之一,衡量預測為正例中真正為正例的比例,與 Recall 之間存在此消彼長的關係。
  • 召回率(Recall)F1 的另一組成分,衡量所有真實正例中被模型正確找到的比例,本題中 Recall = 0.6 拉低了 F1。
  • ROC 曲線(Receiver Operating Characteristic)和 F1 並列的分類評估工具,評估所有閾值下的整體辨別力,適合比較多個模型的排序能力。
  • ROC 曲線下面積(AUC)ROC 曲線的量化指標,0.5 代表隨機猜測,1.0 代表完美分類,常與 F1 搭配評估不同場景下的模型效能。
出處

iPAS 經濟部產業人才能力鑑定 ・ 114 年第二梯次 iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用 第 16 題

查看官方原文 PDF