参考
推荐算法常用评价指标:NDCG、MAP、MRR、HR、ILS、ROC、AUC、F1等
[LTR] 信息检索评价指标(RP/MAP/DCG/NDCG/RR/ERR)
在线指标
- 点击率。例如对电商平台,浏览率、购买率等。
- 相关性标注。对推荐结果进行人工标注,观察推荐内容的相关性。
- 多样性。
离线指标
- PR。
- AUC。横坐标为FPR,假阳性率,即负样本被预测为正的概率。纵坐标为TPR,真阳性率,即正样本被预测为正的概率。阈值取正无穷时,所有样本预测为负,FPR=TPR=0,对应(0,0)点;阈值取负无穷时,所有样本预测为正, FPR=TPR=1, 对应(1,1)点。
- MAP
- NDCG
疑问
- auc的概率解释?https://www.alexejgossmann.com/auc/。auc描述的是正样本排在负样本前面的概率,在上述博客中从auc定义给出了严格证明。
- auc为什么对正负样本比例不敏感?对给定的模型阈值,x=FP/N,正样本数量变化时,分子分母都不变;负样本数量变化时,分子分母等比例变化,x值保持不变。对y=TP/P,有同样的结论。因此auc曲线不随正负样本比例变化。
- auc的python计算代码? 详见auc计算公式推导与Python代码实现
- pr曲线一定过(r=0,p=1)点吗?不是的。阈值取正无穷时, 所有样本预测为负,r=0, p=0/0没有定义。如果阈值取最大预测分,这时又有两种情况。情况1,rank1为正样本,则r=1/正样本总量,在正样本总量很大时r≈0,同时p=1,这时大概率经过(0,1)点。情况2,rank1为负样本,这种情况概率小但也存在,特别是在实际的推荐系统中,排在第一位的可能是广告,这时r=0, p=0。因此pr曲线不一定过(0,1)点,只是大概率过。阈值取负无穷时,所有样本预测为正,r=1, p=正样本占比。