回归模型的性能的评价指标主要有:RMSE(平方根误差)、MAE(平均绝对误差)、MSE(平均平方误差)、R2score。但是当量纲不同时,RMSE、MAE、MSE难以衡量模型效果好坏。这就需要用到R2score,实际使用时,会遇到许多问题,今天我们深度研究一下。
预备知识
搞清楚R2_score计算之前,我们还需要了解几个统计学概念。
若用$yi$表示真实的观测值,用$bar{y}$表示真实观测值的平均值,用$hat{yi}$表示预测值,则:
回归平方和:SSR
?SSR = sum{i=1}^{n}(hat{yi} - bar{y})^2?
即估计值与平均值的误差,反映自变量与因变量之间的相关程度的偏差平方和
残差平方和:SSE
?SSE = sum{i=1}^{n}(yi-hat{y_i} )^2?
即估计值与真实值的误差,反映模型拟合程度
总离差平方和:SST?SST =SSR + SSE= sum{i=1}^{n}(yi - bar{y})^2?
即平均值与真实值的误差,反映与数学期望的偏离程度
R2_score计算公式
R^2 score,即决定系数,反映因变量的全部变异能通过回归关系被自变量解释的比例。计算公式:?R^2=1-frac{SSE}{SST}?即?R^2 = 1 - frac{sum{i=1}^{n} (yi - hat{y}i)^2}{sum{i=1}^{n} (y_i - bar{y})^2}?进一步化简?R^2 = 1 - frac{sumlimitsi(yi - yi)^2 / n}{sumlimitsi(y_i - hat{y})^2 / n} = 1 - frac{RMSE}{Var}?分子就变成了常用的评价指标均方误差MSE,分母就变成了方差。
对于$R^2$可以通俗地理解为使用均值作为误差基准,看预测误差是否大于或者小于均值基准误差。
R2_score = 1,样本中预测值和真实值完全相等,没有任何误差,表示回归分析中自变量