决定系数sklearn.metrics.r2_score到底是什么?

1 R 2 R^2 R2计算公式

若用 y i y_i yi表示真实的观测值,用 y ˉ \bar{y} yˉ表示真实观测值的平均值,用 y i ^ \hat{y_i} yi^表示预测值,则
R 2 = 1 − ∑ i = 1 n ( y i − y ^ i ) 2 ∑ i = 1 n ( y i − y ˉ 2 ) 2 R^{2}=1-\frac{\sum_{i=1}^{n}\left(y_{i}-\hat{y}_{i}\right)^{2}}{\sum_{i=1}^{n}\left(y_{i}-\bar{y}^{2}\right)^{2}} R2=1i=1n(yiyˉ2)2i=1n(yiy^i)2


R 2 = 1 − ∑ i ( y i − y i ^ ) 2 / n ∑ i ( y i − y ˉ ) 2 / n = 1 − M S E Var ⁡ R^{2}=1-\frac{\sum_{i}\left(y_{i}-\hat{y_i}\right)^{2} / n}{\sum_{i}\left(y_{i}-\bar{y}\right)^{2} / n}=1-\frac{ M S E}{\operatorname{Var}} R2=1i(yiyˉ)2/ni(yiyi^)2/n=1VarMSE

分子就变成了常用的评价指标均方误差MSE,分母就变成了方差Var

2 利用Python的误差值实现

from sklearn.metrics import mean_squared_error
1-mean_squared_error(y_test,y_pred)/ np.var(y_test)

在这里插入图片描述

3 利用sklearn.metrics.r2_score实现

from sklearn.metrics import r2_score
print("\n决定系数R^2=",r2_score(y_test, y_pred))

在这里插入图片描述

4 笔者认为:

  • 决定系数一般用在回归模型的评价中;
  • 因为分类模型的预测值只有0,1,在分类模型中非 0 即 1,这样利用公式计算时对模型的评测结果是不合适的。
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值