Probability
在多個類的情況下如何調整分類器的概率閾值?[複製]
上面是一個非常簡單的示例,它基於一些概率為二元類案例輸出 0 或 1 的概率分類器。
此外,如何更改閾值也很簡單。您將閾值設置為更高或更低的 50% 以更改精度/召回平衡,從而針對您自己的獨特情況進行優化。
然而,當我們嘗試對多類場景有相同的想法時,即使只有如下圖所示的三個類(想像這些是概率)
你如何開始思考如何轉移門檻?
默認是取概率最大的類(這裡是第3類)。
如果你想取得這種平衡(影響精確度/召回率)你能做什麼?
一個想法可能是讓第一個最主要的類重新規範化它們,並考慮在這兩者之間設置一個閾值,但這聽起來不是一個優雅的解決方案。
是否有可靠的方法可以遵循?
您可以在類上使用先驗分佈。
讓我們假設您的模型計算類別概率的向量 v . 您可以定義先驗概率向量 π 然後計算你的班級概率與 v∘π , 在哪裡 ∘ 表示逐元素乘積。所以你的觀察屬於類的概率 c 正比於 vcπc .
如果你想要一個正確的分佈,你只需要重新規範化。
在您的示例中,如果您希望您的預測稍微偏向於第 1 類,您可以定義 π=(0.4,0.3,0.3) , 例如。
如果您考慮一下,在二進制情況下,這就是您在更改閾值時隱式執行的操作。假設您建立了以下規則:如果您的概率向量是 v 你的決策函數是 f(x) , 然後 f(x)={2v2≥θ 1otherwise
對於一些 θ∈(0,1) .那麼這相當於(至少在做出決定時)計算類概率與 (v11−θ,v2θ) ,所以你會定義 π=(11−θ,1θ) .
您還可以了解的價值 π 從你的數據。例如,您可以計算每個類別的比例並將其用作先驗概率。
對於將這種先驗假設納入模型的更原則性方法,您可能需要查看貝葉斯推理。