不同的机器学习算法得到的模型,评估指标是不一样的,对于推荐算法来说,常用的评估指标是RMSE(均方根误差),MSE(均方误差),这两个误差结果肯定是越小越好,越小代表我们的推荐模型比较优秀,能够达到预期的推荐效果
假设:
预测值:yˆ = { y1ˆ,y2ˆ,...,ynˆ }
真实值:y = { y1,y2,...,yn }
前提理解,比如电影推荐算法中,有用户对的真实评分、机器学习预测评分,如下表
用户
真实评分
预测评分
用户A
真实评分1
预测评分1
用户B
真实评分2
预测评分2
用户C
真实评分3
预测评分3
MSE (均方误差) = {(真实评分1 - 预测评分1)^2 +(真实评分2 - 预测评分2)^2 +(真实评分3 - 预测评分3)^2} / n
如果准确率100%,则MES为0,即均方误差越小越好,范围在:[0,+∞)
MSE (均方误差) =
RMSE(均方根误差) =
如果准确率100%,则RMES为0,即均方根误差越小越好,范围在:[0,+∞)
MSE
均方误差(Mean Square Error)
范围[0,+∞),当预测值与真实值完全吻合时等于0,即完美模型;误差越大,该值越大。
RMSE
均方根误差(Root Mean Square Error),其实就是MSE加了个根号,这样数量级上比较直观,比如RMSE=10,可以认为回归效果相比真实值平均相差10。
范围[0,+∞),当预测值与真实值完全吻合时等于0,即完美模型;误差越大,该值越大。
MAE
平均绝对误差(Mean Absolute Error)
范围[0,+∞),当预测值与真实值完全吻合时等于0,即完美模型;误差越大,该值越大。
MAPE
平均绝对百分比误差(Mean Absolute Percentage Error)
范围[0,+∞),MAPE 为0%表示完美模型,MAPE 大于 100 %则表示劣质模型。
可以看到,MAPE跟MAE很像,就是多了个分母。
注意点:当真实值有数据等于0时,存在分母0除问题,该公式不可用!
SMAPE
对称平均绝对百分比误差(Symmetric Mean Absolute Percentage Error)
注意点:当真实值有数据等于0,而预测值也等于0时,存在分母0除问题,该公式不可用!