推荐召回阶段-正负样本选取准则
粗排-正负样本选取准则
精排目的是在优中(用户感兴趣的商品中)择优(挑选用户最感兴趣的商品)、粗排从商品池子中挑选出用户感兴趣的商品,了解这一区分性后,对精排和粗排正负样本的选取便会采取不同方式。本文着重讲解粗排的负样本选取(以Embedding-based Retrieval in Facebook Search(EBR)论文为例)

【结论】
文中指出:
i 采用曝光未点击的样本直接作为负样本,比随机采样效果差;
ii 仅仅采用hard negative策略(不加入easy negative),也比随机采样效果差(easy negative很有必要,easy :hard negative=100:1),且采用上一轮模型结果101-500的样本进行采样(作为hard negative)能得到最好的模型recall;
iii 采用迁移学习模式,从easy model 迁移到hard model,结果不会变好,但从hard model迁移到easy model,能得到很大的召回率的提升
一、负样本选取准则
现有的准则,对正样本的选取没有异议,主要优化点,在于对负样本的选取
当然文中也指出hard positive,通过访问用户的活动日志,发掘尚未被生产成功检索但仍为阳性的新结果(但没具体展开细讲)
1、现有的负样本选取
以是否点击为例:
1.1 easy negative
曝光未点击的商品为负样本,也称之为easy negative ,简言之,这种负样本的选取没有多大难度,只需筛选出曝光未点击的商品即可,这类商品数量有限,处理起来速度较快,且训练出来的模型,既能做排序,也能做召回
1.2 随机抽样
随机抽样的样本可能压根没曝光过,包含(曝光未点击,未曝光的商品),该方式选取负样本(从未点击的商品池中随机挑选商品)较easy negative速度较慢
注:a.Youtube 和Microsoft的DSSM中的负样本是随机抽样来的,而不是简单的拿“曝光未点击”做负样本;b.随机抽样并不是在整个候选库中等概率抽样;c. 按照随机抽样训练出来的模型,可能无法对用户感兴趣的商品产生区分性(如优质商品概率相差不大)
随机抽样步骤:
i、当热门商品为正样本时,对该样本进行降采样,某商品成为正样本的概率为:
Ppos=(np.sqrt(z(wi)/0.001)+1)*(0.001/z(wi)),其中z(wi)是第i个物料的曝光或点击占比。
ii、当热门商品为负样本时,适当对该样本过采样,但同时也得保证长尾商品出现的机会,某商品成为负样本的概率为
Pneg =n(wi)^a/np.sum(n(wj)^a),j=(1,2,3···n),n(wi)为第i个商品出现的次数,其中a一般为3/4
值得注意的是:随机采样的正负样本选取方式和w2v的正负样本选取公式一模一样
1.3 hard negative(作为easy negative的一种补充)
随机抽样可能挖掘不到用户偏好上的细微差异,为了增强样本的区分性,提出hard negative的概念。从字面来看,hard negative即为比较难的负样本,即匹配度适中的,用户既可能喜欢,也可能不喜欢,但实际是不喜欢的的负样本
业界挑选hard negative主要方式如下:
- 业务逻辑选取(以airbnb为例)
i 增加与正样本同城的房间作为负样本,增强了正负样本在地域上的相似性,加大了模型的学习难度
ii 增加“被房主拒绝”作为负样本,增强了正负样本在“匹配用户兴趣爱好”上的相似性,加大了模型的学习难度
放在列表页场景(个人理解)
a 增加skc级别的负样本(某个商品点击了黄色,但没点击绿色,增加绿色的样本)
b 增加与某商品相似度(点击) 较高的(未点击样本)
- 模型挖掘
EBR与百度Mobius的做法极其相似,都是用上一版本的召回模型筛选出"没那么相似"的<user,doc>对,作为额外负样本,训练下一版本召回模型。
EBR的做法是:采用上一版模型召回位置在101~500上的item作为hard negative(负样本还是以easy negative为主,文章中经验值是easy:hard=100:1)
注意:
个人见解:在没有更好的业务逻辑(选取hard negative)时,采用这种方式实现起来比较简单
1.4 模型融合
文中指出串行融合和并行融合两种方式,可提高模型的线下以及线上评估指标
a 并行融合
依照不同目标训练不同的模型,以不同权重融合
final_score =w1*model_1+w2*model_2+···wn*model_n
现阶段,很多公司就是这么处理的
b 串行融合
其本质是先用easy model挑出候选集,再用hard model对easy model的结果进一步训练,剩余结果交给下游(如精排)
而这种放式,更像是粗排-更复杂的粗排-精排-重排的演变方式
参考
1、2020 facebook Embedding-based Retrieval in Facebook Search(EBR)论文
2、https://zhuanlan.zhihu.com/p/39684349
3、https://zhuanlan.zhihu.com/p/165064102?utm_source=qq