CatBoost - 模型評估指標



為了確保機器學習模型的效能滿足不斷增長的標準和要求,在建立模型時進行有效的評估是必要的。Yandex 的 CatBoost 是一個強大的梯度提升庫,它為資料科學家和機器學習專業人員提供了一套評估模型有效性的指標。

CatBoost 以輕鬆、準確和有效地處理類別特徵而聞名。由於其驚人的準確性,它在許多現實場景中的機器學習任務中備受青睞。

但模型的真正價值與其演算法一樣,也取決於其實際效能。在這種情況下,指標非常有用。CatBoost 提供的兩個用於模型評估的核心函式是“evaluate()”和“eval_metric”。這些函式涵蓋了廣泛的功能。但 CatBoost 提供的不僅僅是這些。

CatBoost 指標

CatBoost 指標用於評估使用 CatBoost 機器學習技術建立的模型的效能。這些指標幫助我們瞭解模型預測的質量和準確性。以下是一些常見的 CatBoost 指標及其解釋:

準確率

準確率是評估分類模型效能的常用引數。它評估模型對給定資料集的預測百分比的準確性。

對於二元分類,準確率如下:

Accuracy = {TP + TN}/{TP + TN + FP + FN}       

其中:

  • TP(): 真陽性 (TP) 指的是被正確預測為陽性的案例數量,即正確分類為屬於特定類別的案例數量。

  • TN(): 真陰性 (TN) 指的是被正確預測為陰性的案例數量,即正確識別為不屬於特定類別的案例數量。

  • FP(): 假陽性 (FP) 指的是被錯誤預測為陽性的案例數量,即被錯誤分類為屬於特定類別的案例數量。

  • FN(): 假陰性 (FN) 指的是被錯誤預測為陰性的案例數量,即被錯誤分類為不屬於特定類別的案例數量。

多類別對數損失

多類別對數損失,也稱為交叉熵損失或對數損失,是衡量分類模型在多類別場景中效能的常用指標。它計算真實類別標籤與每個例項的預期類別機率之間的差異。

多類別對數損失的數學表示如下:

Multiclass Log Loss = - (1 / N) Σi=1N Σj=1M [ yij * log(pij) ]

其中:

  • N: 樣本(或資料點)的數量。

  • M: 類別的數量。

  • yij: 一個二元指示器(0 或 1),指示樣本 i 是否屬於類別 j。如果樣本屬於該類別,則為 1,否則為 0。

  • pij: 樣本 i 屬於類別 j 的預測機率。

二元對數損失

二元對數損失是評估二元分類演算法效能的常用資料。它也稱為邏輯損失或交叉熵損失。它計算每個例項的預期機率與真實二元標籤之間的差異。

二元對數損失的數學表示如下:

Binary Log Loss = - (1 / N) Σi=1N [ yi * log(pi) + (1 - yi) * log(1 - pi) ]

其中:

  • N: 樣本(或資料點)的數量。

  • yi: 一個二元指示器(0 或 1),指示樣本 i 是否為陽性 (1) 或陰性 (0)。

  • pi: 樣本 i 屬於陽性類別(類別 1)的預測機率。

  • log: 自然對數。

AUC-ROC(接收者操作特徵曲線下的面積)

接收者操作特徵 (ROC) 曲線以圖形方式顯示二元分類模型在一定閾值範圍內的有效性。它在不同的機率水平上繪製真陽性率 (TPR) 與假陽性率 (FPR)。

ROC 曲線下的面積,即 AUC-ROC,可以計算如下:

  • 真陽性率 (TPR): 也稱為靈敏度或召回率,計算公式為:

    TPR = True Positives (TP) / [True Positives (TP) + False Negatives (FN)]
    
  • 假陽性率 (FPR): 計算公式為:

    FPR = False Positives (FP) / [False Positives (FP) + True Negatives (TN)]
    
  • ROC 曲線: ROC 曲線在不同的閾值下繪製,y 軸為 TPR,x 軸為 FPR。

  • AUC 計算: 可以使用提供此功能的軟體庫或數值方法來計算 ROC 曲線下的面積。

F1 分數

F1 分數將召回率(靈敏度)和精確率(正預測值)組合成一個單一分數,這是二元分類問題中一個流行的指標,它在兩者之間取得平衡。

F1 分數的數學表示如下:

F1 = F1 = 2.Precision.Recall / (Precision + Recall)
廣告