Learning to rank
广告排序和推荐排序优化的目标都是点击率,技术栈包括LR/FTRL、FM/FFM、GBDT、DNN等模型。
排序问题的演进
- 策略排序
- 相关性;
- 质量度,质量更好的结果排在前面如时效性;
- 时效性,视频从上传开始,其相关性随着时间不断衰减;
- 点击行为。
- 学习排序
- 基于用户在历史的排序结果的点击行为收集起来构造 label,根据用户在搜索时候给出的 query 以及展现给用户的 video 以及上下文信息构造特征向量,与 label 进行 join,得到 ground turth,之后进入学习系统进行学习,训练出一个排序模型,就可以对数据进行预测排序
- 深度学习模型
业界应用比较广泛的有
- 广告排序
- 广告排序比如Google和百度的关键字广告排序,今日头条、腾讯的展示广告排序
- 推荐排序
- 推荐排序比如快手、抖音这些短视频平台,以及各大App、浏览器的信息流
- 推荐排序比如快手、抖音这些短视频平台,以及各大App、浏览器的信息流
搜索与推荐下的排序
搜索场景下更加关注排序问题的评价指标
- cg
- 逐条对搜索结果进行分等级的打分。CG并不考虑在搜索结果页面中结果的位置信息,它是在这个搜索结果list里面所有的结果的等级对应的得分的总和。如一个搜索结果list页面有P个结果
- CG的统计并不能影响到搜索结果的排序,CG得分高只能说明这个结果页面总体的质量比较高并不能说明这个算法做的排序好或差。
- dcg
- Discounted Cumulative Gain
- DCG的思想是等级比较高的结果却排到了比较后面,那么在统计分数时,就应该对这个结果的得分有所打折。
- ndcg
- top指标
推荐
算法指标
- HR@K(召回的预测)
- y_pred 召回的K个item的排序后的list
y 用户下一次点击的item
Hit Rate 对应的是leave one out的测试场景。例如用户u点击过n个物品,则取前n-1个物品作为训练集,最后1个用于测试。
模型在测试中将给出一个长度为k的推荐列表,当列表中有测试集中对应的物品时,则说明预测成功。
最终平均所有用户的测试结果计算出的值为 Hit Rate@k,一般来说在k越小的时候,模型取得较高hr的难度越大。
推荐场景下的业务产品指标
- 核销率 领取率
广告
CPC、CPA、CPM
产品指标
- 在互联网行业中,用户在某段时间内开始使用应用,经过一段时间后,仍然继续使用该应用的用户,被认作是留存用户。这部分用户占当时新增用户的比例即是留存率,会按照每隔1单位时间(例日、周、月)来进行统计。顾名思义,留存指的就是“有多少用户留下来了”。留存用户和留存率体现了应用的质量和保留用户的能力。
- 使用友盟的通用定义:用户已经记录7日以及7日以上未有登录(即先认定这部分用户已经流失,当然你也可以自己来定义),而在今天有登录,那在今天这部分用户称之为回流用户。
- 日活、新增、留存、回流及其关系模型
参考
- https://www.jianshu.com/p/3018da7b29cb