推荐系统的本质是提取用户特征,并且匹配相应的物品集进行推荐,把整个过程进行梳理拆分,大概可以分为四个阶段:
推荐引擎四个阶段一、生成用户特征向量
这部分主要是对用户信息提取,并且将行为转化为特征向量。
用户信息主要分为两部分,一部分是属性信息,如用户的性别、所在地、职业等,这些信息一般可以通过注册信息或关联第三方账号信息获得;另一部分是用户的行为信息,这部分信息通常是用户在平台产生一定的行为后,分析行为日志获得。
对于不同的用户信息,应该给定不同的权重,比如,购买的权重>浏览的权重,因为购买是个成本更高的操作;同理详情页浏览的权重>列表页浏览
对于用户的行为信息,也应当根据用户行为的时间、次数,给予不同的权重:时间越临近的行为,应当反馈的是相对更新的信息,权重较高;频次越高的行为,代表信息准确度高,用户喜好强,权重较高
另外一个对于权重的给定,可以参考物品的热门度,热门物品一般推荐排序较为靠前,用户的行为一定程度受热门度影响,适当降低热门物品的权重会得到更准确的用户特征向量。
注:如果是新用户,信息不足无法生成特征向量时,建议直接使用topN列表,获取一定的行为后再进行个性化推荐
二、特征-物品相关推荐
根据用户的特征向量,和物品进行匹配,生成该用户推荐的物品集;推荐方式一般有协同过滤、基于内容的推荐,基于关联规则等……
在匹配用户特征向量和物品集时,一般有正向推荐和反向推荐两种:
正向推荐是按照物品关联度做一定的推荐规则,适用于推荐较少的物品集,如文章的相关推荐等
反向推荐是直接过滤调不在特征候选集内的物品,适用于推荐物品较多的时候,比如流列表
三、物品集过滤
对于上一步匹配出来的物品集,还要进行一定的过滤,过滤原则是:剔除无效物品、低质物品、重复物品或用户已经浏览过的物品
我们可以限定某些条件作为无效物品的过滤,如UGC平台的已下线内容、电商平台的无库存商品以及用户手动设置的筛选范围之外的物品
低质物品如电商平台被举报的假货,新闻平台的低质文章等
对于多个一样的物品,只推荐一个;像新闻资讯平台标题、内容一致的文章一个列表只推荐一篇就可以了;但在电商平台这一点可能会不一样,一样的商品如果是来自不同的商家,是不可以过滤的
有些业务场景,用户产生过行为(查看、近期购买等)的物品要进行一定的过滤,比如用户已经看过的帖子、文章等不需要重复推荐;但在电商业务模式下就不一定要过滤,比如生鲜电商的猜你喜欢内容推荐
总体来说,应该根据平台的业务不同,对各个推荐场景针对性制定过滤规则并且通过数据测试不断调优
四、物品集排名
在物品集输出前的最后一步,是对已有物品集进行排名,输出给用户的应当是个有序列表(输出无序列表CTR及用户满意度均低于有序列表)
有序列表确认的第一步,是确认当前场景的排名因子及权重,如特征-物品相关度权重、时间权重、物品分类及热门标记等……然后根据用户反馈对排序进行调优,在调优过程中要关注关键数据指标(如ctr、下单转化率等)的变化,关键指标不断提升,代表效果在不断优化~
网友评论