回归问题
回归问题是机器学习要解决的四大问题之一,在我们的生活中也存在着很多回归问题。比如某一地区的房价预测,某一个学生高考成绩的预测,某一地区感染病毒人数的预测,某一公司2020年营业收入的预测等等。从以上的例子中,我们可知回归问题的目标是预测一个数值或者一个区间数值。
回归模型
回归模型是一种预测性的建模技术,它研究的是因变量(目标)和自变量(预测器)之间的关系。这种技术通常用于预测分析,时间序列模型以及发现变量之间的因果关系。例如,司机的鲁莽驾驶与道路交通事故数量之间的关系,最好的研究方法就是回归。
回归模型的评估指标:
- 解释方差(explained_variance)
- 平均绝对值误差(MAE)
- 平均绝对百分比误差(MAPE)
- 均方误差(MSE)
- 均方根误差(RMSE)
- 可决系数(R²)
解释方差(explained_variance)
假定yi为真实值,f(xi)为预测值(后同)
,且Var为方差,那么解释方差的计算公式为:
explained_variance_score=1−Var(yi)Var{yi−f(xi)}
解释方差的最大值是1.0,数值越大代表模型预测结果越好,越小代表模型预测结果越差
平均绝对值误差(MAE)
计算每一个样本的预测值和真实值的差的绝对值,然后求和再取平均值。用于评估预测结果和真实数据集的接近程度,其值越小说明拟合效果越好。
MAE=m1i=1∑m(∣yi−f(xi)∣)
平均绝对百分比误差(MAPE)
范围[0,+∞),MAPE 为0%表示完美模型,MAPE 大于 100 %则表示劣质模型。
可以看到,MAPE跟MAE很像,就是多了个分母。
MAPE = m100%i=1∑m∣∣∣∣yiyi−f(xi)∣∣∣∣
注意:当真实值有数据等于0时,存在分母0除问题,该公式不可用。且sklearn中没有计算MAPE的库函数,MAPE的计算需自行实现
均方误差(MSE)
计算每一个样本的预测值与真实值差的平方,然后求和再取平均值。该指标计算的是拟合数据和原始数据对应样本点误差的平方和的均值,其值越小说明拟合效果越好。
MSE = m1i=1∑m(yi−f(xi))2
均方根误差(RMSE)
均方根误差就是在均方误差的基础上再开方,其值越小说明拟合效果越好。
RMSE = m1i=1∑m(yi−f(xi))2
可决系数(R²)
可决系数值在0~1之间。越接近于1,说明模型的预测效果越好,越接近于0,说明模型的预测效果越差,当然也存在负值,此时说明模型的效果非常差。公式中yˉ为y的平均值。
R2=1−m1∑i=1m(yi−yˉ)2MSE(yi,f(xi))
参考资料
[1] 回归算法的评估指标
[2] 预测评价指标RMSE、MSE、MAE、MAPE、SMAPE
[3] sklearn中的回归器性能评估方法
[4] 回归模型