文章目录
- 模型上线前需要进行离线评估;模型上线后需要进行在线评估。
- 推荐系统的评估流程:
1)离线评估:在相同的训练集上,不同算法训练出新旧两版模型,在同一个测试集上进行评估。若新模型的指标优于旧模型,则通过离线测试,可进入下一阶段。注意:离线评估的训练集一般采用连续3天或7天的历史数据;在第4天或第8天的数据上测试
2)上线前回溯:新模型在上线评估之前必须先进行回溯,比如自两周前的历史数据开始训练,直到追平并接入线上的实时样本流。之后,新旧模型就能够同步接收线上的实时反馈并自我更新,才能进行后续A/B实验的在线评估
3)在线评估:A/B 实验,随机划分为两份流量:控制组(流入老模型);实验组(流入新模型,可以有多个)。实验一段时间后,统计关键业务指标(例如CTR、平均观看时长等),若实验组显著优于控制组,就认为新模型优于旧模型,可考虑推广至全部流量
1、离线评估
- 主要针对排序(粗排和精排)和召回算法,存在不同的评估指标
1.1、评估排序算法
1.1.1、AUC和GAUC
- 评估排序模型最重要的指标是AUC(ROC曲线下面积,以TPR和FPR分别为纵坐标和横坐标 )
- AUC更为直观的解释:模型给一堆样本(正负类别标签已知)预测打分,然后将他们从大到小排序,正样本能够正确排在负样本前面的概率就是AUC
A U C = 正确排序的样本对 所有样本对 AUC = \frac{正确排序的样本对}{所有样本对} AUC=所有样本对正确排序的样本对
一个正样本和负样本可组成一个样本对
正确排序是指按概率,将正样本排在负样本之前
下图显示的AUC为7/9
- 从上述定义来看,AUC天然适合衡量模型的排序性能,然而AUC体现的是全局的性能,会将所有用户的排序结果都考虑进来,可能会存在失真,因此可以引入GAUC(Groupwise AUC),将样本划分为group,每个group计算一个AUC,最后再加权平均
- 一般以用户为单位划分group计算GAUC:
G A U C = ∑ u w u A U C u ∑ u n u GAUC = \frac{ {\textstyle \sum_{u}w_uAUC_u} }{\sum_{u}n_u} GAUC=∑unu∑uw



1785

被折叠的 条评论
为什么被折叠?



