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)
广告