推荐系统中的召回算法大致梳理(非完整)

推荐系统中的召回算法大致梳理(非完整)

定义

推荐策略中的两个关键问题分别是“召回”和“排序”。
“召回match”是指从全量信息中触发尽可能多的正确结果,并将正确结果返回给“排序”

来源

全量商品与用户进行匹配排序,计算力无法支持,需要召回获得较小的商品候选集,在进行复杂模型的排序。

指标

召回率(recall)、准确率(precision)

召回类型

1.基于内容匹配的召回(content-based)
2.基于协同过滤的召回 (collaborative filtering)
	协同过滤分为:
	a. 基于共现关系 neighborhood ( user-based ,item-based)
	b.基于模型 model-based
	模型协同过滤细分为:
		i.传统svd,FM
		ii, 深度网络 DNN (deepmatch)、embedding (w2v、graph embedding)

base 算法

item-based CF (i2i)

商品根据用户浏览表示成向量,例如 商品A 被 用户a和用户b浏览,没有被用户c浏览,可以表示为(1,1,0)
计算两个商品的余弦相似度 similarity(A,B)=cos(A,B)=AB / (||A||*||B||)

实际应用中,采用一个session 内的用户行为来计算 两个商品的pair对

最终产生的离线数据为左i, 和相似的右i,按照相似度来从高到低 ,线上使用时,右i要进行截断。

modified 算法
余弦相似度过于粗暴,容易出现哈利波特效应,改良版将会降低热门用户对商品的权重
1. wbcos i2i (weighted bin)
2. swing i2i
3. expectaion i2i

ranki2i
背景:上面都是基于统计产生的i2i,实际展示的时候不是要最相似原商品的,还有考虑该商品的ctr 和 cvr 等综合产出
过程:利用模型,离线训练和离线预测,右i的点击率,并进行重排。

1.分别预测ctr,cvr
类似于线上rank,这里采用左i的feature和右i的feature,模型可采用现有rank模型,(gbdt,lr,dnn皆可)
2.一步到位
利用pairwise或者listwise 作为损失函数
将gmv或者点击率转化为预测目标,label为多分类,指标为ndcg.

embedding 实践

word2vec,graph embedding

你可能感兴趣的:(计算广告)