performance measure(性能度量)

Performance Measure

Classification

错误率、精度、查准率、查全率、F1 Score、PR曲线和ROC曲线都是常用的性能度量方法。错误率和精度适用于类别平衡的情况,而查准率、查全率、F1 Score、PR曲线都可以用于类别不平衡情况,ROC曲线与AUC普遍适用。

error rate and accuracy

错误率(Error Rate)表示分类错误的样本数占总样本数的比例,而精度(Accuracy)表示分类正确的样本数占总样本数的比例。这两者是互补的概念。错误率和精度通常用于二分类或多分类问题,它们适用于类别分布相对均衡的情况。当类别分布不平衡时,错误率和精度可能不能很好地反映模型性能。
具体计算公式见下:
错误率(error) = 错误分类的样本数 / 总样本数
准确率(accuracy) = 正确分类的样本数 / 总样本数

precision and recall

查准率(Precision)表示预测为正例的样本中实际为正例的比例。查全率(Recall)表示实际为正例的样本中被正确预测为正例的比例。查准率和查全率主要用于二分类问题,尤其是在类别不平衡的情况下。查准率和查全率通常需要权衡,因为提高查准率可能会降低查全率,反之亦然。
具体计算公式见下:
查准率(precision) = 正确分类的正样本数 / 分类器预测为正的样本数
也写作
P = T P / ( T P + F P ) P = TP / (TP + FP) P=TP/(TP+FP)
召回率(recall) = 正确分类的正样本数 / 所有真正的正样本数
也写作
R = T P / ( T P + F N ) R = TP / (TP + FN) R=TP/(TP+FN)

F1 score

F1 Score是查准率和查全率的调和平均值。它是一种综合考虑查准率和查全率的性能度量方法。F1 Score适用于二分类问题,尤其是在类别不平衡的情况下。F1 Score在查准率和查全率之间取得平衡,因此可以更好地反映模型的整体性能。
具体计算公式见下:
F1 score = 2 * 准确率 * 召回率 / (准确率 + 召回率)

F 1 = 2 ∗ P ∗ R / ( P + R ) F_1 = 2 * P * R / (P + R) F1=2PR/(P+R)
F1 score的一般形式:
Fβ score = (1 + β^2) * 准确率 * 召回率 / (β^2 * 准确率 + 召回率)

F β = ( 1 + β 2 ) ∗ P ∗ R / ( β 2 ∗ P + R ) F_β = (1 + β^2) * P * R / (β^2 * P + R) Fβ=(1+β2)PR/(β2P+R)
β = 1时,Fβ score = F1 score
β > 1时,Fβ score > F1 score,此时查全率有更大的影响
β < 1时,Fβ score < F1 score,此时查准率有更大的影响

PR curve

PR曲线(Precision-Recall Curve)表示查准率和查全率之间的关系。PR曲线下的面积(AUC-PR)可以作为模型性能的度量。PR曲线适用于二分类问题,尤其是在类别不平衡的情况下。PR曲线可以直观地展示查准率和查全率之间的权衡,有助于选择适当的阈值来平衡这两者。
PR曲线下的面积(AP)是常用的衡量二分类模型性能的指标,AP越大,模型性能越好。
具体计算公式见下:
A P = ∑ ( P r e c i s i o n i ) n AP = \frac{\sum(Precision_i)} {n} AP=n(Precisioni)
其中,
P r e c i s i o n i = T P / ( T P + F P ) Precision_i = TP / (TP + FP) Precisioni=TP/(TP+FP)

ROC curve and AUC

ROC曲线(Receiver Operating Characteristic Curve)表示真正例率(True Positive Rate,与查全率等价)和假正例率(False Positive Rate)之间的关系。ROC曲线下的面积(AUC,Area Under the Curve)可以作为模型性能的度量。ROC曲线和AUC适用于二分类问题,无论类别是否平衡。ROC曲线展示了不同阈值下真正例率和假正例率之间的权衡,而AUC值越大,表示模型性能越好。
具体计算公式见下:
F P R = F P / ( F P + T N ) FPR = FP / (FP + TN) FPR=FP/(FP+TN)

T P R = T P / ( T P + F N ) TPR = TP / (TP + FN) TPR=TP/(TP+FN)

A U C = 1 / 2 ∗ ( T P R + T N R ) ∗ ( F P R − T N R ) AUC = 1 / 2 * (TPR + TNR) * (FPR - TNR) AUC=1/2(TPR+TNR)(FPRTNR)

T N R = T N T N + F P TNR = \frac{TN}{TN + FP} TNR=TN+FPTN

其中,TPR = recall,FPR = 1 - TNR

Regression

MAE、MSE和RMSE都是基于预测值与实际值之间的差值来度量模型性能的指标。其中,MAE关注平均偏差大小,对异常值不敏感;MSE和RMSE关注较大误差的预测结果,对异常值敏感。RMSE具有与原始数据相同的量纲,因此更容易解释。
MAPE是基于预测值与实际值之间误差的百分比来度量模型性能的指标,易于解释。但在实际值接近零时,MAPE可能出现问题。

Mean Absolute Error (MAE)

MAE表示预测值与实际值之间绝对误差的平均值。它度量了预测值与实际值之间的平均偏差大小。MAE的值越小,说明模型的预测性能越好。MAE对异常值的敏感度较低,因此在存在异常值的情况下,MAE仍能反映模型的整体性能。
具体计算公式见下:
M A E = ∑ ( ∣ y i − y i ^ ∣ ) n MAE = \frac{\sum(|y_i - \hat{y_i}|)}{n} MAE=n(yiyi^)

Mean Squared Error (MSE)

MSE表示预测值与实际值之间误差平方的平均值。MSE放大了预测值与实际值之间的差异,因此对异常值更敏感。当模型对某些样本预测不准确时,MSE的值会显著增加。相比于MAE,MSE更关注较大误差的预测结果。
具体计算公式见下:
M S E = 1 / n ∗ ∑ ( y i − y i ^ ) 2 MSE = 1 / n * \sum(y_i - \hat{y_i})^2 MSE=1/n(yiyi^)2

Root Mean Squared Error (RMSE)

RMSE表示MSE的平方根。RMSE与MSE具有相似的特性,但由于RMSE取平方根,它的量纲与原始数据相同,便于解释。RMSE同样对异常值敏感,并关注较大误差的预测结果。
具体计算公式见下:
R M S E = ∑ ( y i − y i ^ ) 2 n RMSE = \sqrt{\frac{\sum(y_i - \hat{y_i})^2} {n}} RMSE=n(yiyi^)2

Mean Absolute Percentage Error (MAPE)

MAPE表示预测值与实际值之间绝对误差的百分比平均值。MAPE相对于MAE和MSE,更易于解释,因为它表示预测误差占实际值的比例。然而,当实际值接近零时,MAPE可能会出现问题,因为此时误差百分比可能无穷大。
具体计算公式见下:
M A P E = ∑ ∣ ( y i − y i ^ ) / y i ∣ n MAPE = \frac{\sum|(y_i - \hat{y_i}) / y_i|}{n} MAPE=n(yiyi^)/yi

猜你喜欢

转载自blog.csdn.net/qq_62862258/article/details/130177693