【史上最全】一文搞定机器学习的模型评估

0. 数学约定

模型的“好坏”是相对的,取决于算法和数据,也取决于任务需求
衡量模型的“好坏”的过程叫模型评估,也叫性能度量(performance measure)。

本篇数学约定如下:

  • x i \boldsymbol {x}_i xi为样本向量
  • f f f为模型
  • f ( x ) f(\boldsymbol {x}) f(x)为模型预测结果
  • y i y_i yi为样本 x i \boldsymbol {x}_i xi对应的真实结果。
  • E ( y i ) E(y_i) E(yi)表示结果集 { y i } \{y_i\} { yi}的期望, E ( y i ) = y ˉ = 1 n ∑ i = 1 n y i E(y_i)=\bar y =\frac{1}{n} \sum_{i=1}^{n}y_i E(yi)=yˉ=n1i=1nyi
  • V a r ( y ) Var(y) Var(y)表示y的方差。 V a r ( y ) = E ( ( y i − y ˉ ) 2 ) Var(y)=E((y_i-\bar y)^2 ) Var(y)=E((yiyˉ)2)

1. 回归型任务

简要总结如下:

评估法 函数 数学公式 说明
MSE mean_squared_error M S E = 1 n ∑ i = 1 n ( f ( x i ) − y i ) 2 , n 为样本量 MSE=\frac{1}{n}\sum_{i=1}^{n}(f(\boldsymbol x_i)-y_i)^2,n为样本量 MSE=n1i=1n(f(xi)yi)2n为样本量 MSE即预测误差的数学期望,是最常用的一个性能度量方法。
R 2 {R^2} R2 r2_score R 2 = 1 − ∑ i = 1 n ( f ( x i ) − y i ) 2 ∑ i = 1 n ( y i − y ˉ ) 2 R^2=1-\frac{\sum_{i=1}^{n}(f(\boldsymbol x_i)-y_i)^2}{\sum_{i=1}^{n}(y_i-\bar y)^2} R2=1i=1n(yiyˉ)2i=1n(f(xi)yi)2 【维基百科:】在统计学中用于度量应变数的变异中可由自变量解释部分所占的比例,以此来判断回归模型的解释力。
MAE mean_absolute_error M S E = 1 n ∑ i = 1 n ∣ f ( x i ) − y i ∣ MSE=\frac{1}{n}\sum_{i=1}^{n}|f(\boldsymbol x_i)-y_i| MSE=n1i=1nf(xi)yi
MSLE mean_squared_log_error M S L E = 1 n ∑ i = 1 n ( l o g e ( 1 + f ( x i ) ) − l o g e ( 1 + y i ) ) 2 MSLE=\frac{1}{n}\sum_{i=1}^{n}(log_e(1+f(\boldsymbol x_i))-log_e(1+y_i))^2 MSLE=n1i=1n(loge(1+f(xi))loge(1+yi))2 该指标最适合用于具有指数增长的目标,例如人口数量、商品在几年内的平均销售额等。请注意,该指标对低估的估计值比高估的估计值的惩罚更大。
MAPE mean_absolute_percentage_error M A P E = 1 n ∑ i = 1 n ∣ f ( x i ) − y i ∣ max ⁡ ( ϵ , ∣ y i ∣ ) MAPE=\frac{1}{n}\sum_{i=1}^{n}\frac{|f(\boldsymbol x_i)-y_i|}{\max(\epsilon,|y_i|)} MAPE=n1i=1nmax(ϵ,yi)f(xi)yi MSLE会忽略小幅度值,只反映最高幅度值的预测误差。但是这个问题在 MAPE 的情况下得到了解决,因为它计算了相对于实际输出的相对百分比误差。
MedAE median_absolute_error M e d A E = m e d i a n ( ∣ f ( x 1 ) − y 1 ∣ , ∣ f ( x 2 ) − y 2 ∣ , ⋯   , ∣ f ( x n ) − y n ∣ ) MedAE=median(|f(\boldsymbol x_1)-y_1|,|f(\boldsymbol x_2)-y_2|,\cdots,|f(\boldsymbol x_n)-y_n|) MedAE=median(f(x1)y1f(x2)y2,,f(xn)yn) MedAE它对异常值具有鲁棒性。损失是通过取目标和预测之间的所有绝对差的中值来计算的。
MaxError max_error M a x E r r o r = max ⁡ ( ∣ f ( x i ) − y i ∣ ) Max Error=\max(|f(\boldsymbol x_i)-y_i|) MaxError=max(f(xi)yi)
EVS explained_variance_score E V S = 1 − V a r ( y i − f ( x i ) ) V a r ( y i ) EVS =1-\frac{Var(y_i-f(\boldsymbol x_i))}{Var(y_i)} EVS=1Var(yi)Var(yif(xi)) E V S EVS EVS R 2 {R^2} R2得分之间的差异: R 2 {R^2} R2是当 E V S EVS EVS不考虑预测中的系统偏移时的情况。出于这个原因, R 2 {R^2} R2通常应该是首选。
MTDE mean_tweedie_deviance M T D E = 1 n ∑ i = − 1 n { ( f ( x i ) − y ) 2 , p = 0 2 ( y i l o g ( y i f ( x i ) ) + f ( x i ) − y i ) , p = 1 2 ( l o g ( f ( x i ) y i ) + y i f ( x i ) − 1 ) , p = 2 2 ( max ⁡ ( y i , 0 ) 2 − p ( 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值