原论文在UMAP'16。文章并没有太高深的模型,比较接地气;但其观点与结论很独到,并且在工业界具有很强的实际操作价值。

针对推荐系统的研究大多关注在挖掘用户并不知道但是却与其兴趣相关的物品。不过每个推荐系统所在的领域都有其各自的特点,本文所讨论的是电商领域的推荐系统,在电商领域中,给用户适当地推荐其过去曾经浏览过(或者消费过)的物品(reminders)同样具有一定的价值。

实验证明,在推荐结果中同时包含有reminders以及协同过滤(CF)等推荐方式的结果时,具有最好的效果。但是在推荐reminders时候也有很多需要改进的点:(1)如何避免太过明显的重复浏览的商品,避免已经无效商品(下架等);(2)如何推荐与用户当前购物需求相关的reminders。

首先,文章分析了用户对于电商网站的推荐内容中的reminders的接受度。以Zalando网站(一家欧洲的在线购物网站)为例,抽样了3000个重度用户,他们对18w+的商品有过310w量级左右的商品浏览记录,以及10w+的购买记录。对于这些用户,从日志中分析出有一下几个重要点:

1. 一个用户的购物session中平均有9次商品的浏览行为;平均每3次购物session会转化为一次购买行为。

2. 在推荐的商品中,有约1/10的商品是reminders,即用户之前已经浏览过这些商品;有约1/4的推荐列表中包含有至少一个reminders。

3. 在成功推荐的商品(在同一次session中,用户对该商品的点击浏览行为最终转化为购买行为)中,有约40%的商品为reminders。

4. 在用户最终转化成购买行为的reminders中,用户对这些商品在此前有过若干次的浏览行为。如下图所示:有成功推荐商品数与用户距离对该商品首次浏览时候的天数间隔的关系;以及成功推荐商品数与用户对该商品的浏览次数的关系。

5. 在一次购物session中,用户平均浏览的商品类目约为2.7个,说明用户在一次session中的意图还是比较有目的性的。

reminders的推荐策略

一个通用的流程是:

1. 获取用户在过去时间内有过浏览行为的商品集合,并从中筛选出哪些商品可以用作reminders。

2. 对这些reminders进行一定规则的过滤,并进行排序得到最终的reminders推荐结果。

排序的策略有:

1. Interaction Recency(IRec)

对某商品的浏览行为发生的时刻越接近,排序分越高。

2. Interaction Intensity(IInt)

对某商品的浏览行为发生的次数越多,排序分越高。

3. Item Similarity(ISim)

有过浏览行为的商品,与当前用户的购物意图(以当前实时浏览的商品来表示)越接近,排序分越高。

4. Session Similarity(SSim)

有过浏览行为的session,与当前用户的购物意图(以当前实时浏览的session来表示)越接近,排序分越高。然后再对排序较高的session中的商品进行IInt策略的重排序。

Feature-based Category Filtering

在电商领域,用户一般很少对相同类目下的商品进行重复购买,所以至少在一定时间间隔内,不应该给用户推荐与其之前已经购买过的商品属于相同类目的商品。

维护一个blacklist,对用户已经购买过的商品,将其类目加入到这个blacklist中,直至其又重新开始浏览该类目的商品再将其移出blacklist。

为了防止推荐商品太过于obvious,增加一个obvious gap的时间间隔,对于与当前时刻过近的时间段内用户浏览过的商品 ,我们不应当将其看作reminders。

版权声明:

本文由笨兔勿应所有,发布于http://www.cnblogs.com/bentuwuying。如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任。

Reminders在电商推荐中的价值的更多相关文章

  1. solr在电商平台中的使用示例简析

    来源:http://blog.csdn.net/yangbutao/article/details/9450463 在电商平台中搜索是非常重要的功能,主要包括有搜索词类目导航.自动提示和搜索排序功能 ...

  2. 电商系统中的商品模型的分析与设计—续

    前言     在<电商系统中的商品模型的分析与设计>中,对电商系统商品模型有一个粗浅的描述,后来有博友对货品和商品的区别以及属性有一些疑问.我也对此做一些研究,再次简单的对商品模型做一个介 ...

  3. 转)SSO单点登录在互联网电商应用中的解决方案(基于CAS的改造)

    电商平台中无论是前端还是后端会存在大量的业务应用,在整个交易的过程中请求是在各个业务应用中流转的,对于用户来讲只需要登录一次就可以访问所有的业务,这就是单点登录SSO. 单点登录开源有很多的解决方案, ...

  4. 电商系统中SPU、SKU的区别

    SPU = Standard Product Unit(标准产品单位) SPU是商品信息聚合的最小单位,是一组可复用.易检索的标准化信息的集合,该集合描述了一个产品的特性.SPU多见于后台商品的管理. ...

  5. 电商项目中使用Redis实现秒杀功能

    参与过抢购活动就知道,很明显的一点是商即便商品实际没有了也是可以下单成功的,但是在支付的时候会提示你商品没有了. 实现原理:list双向链表 使用redis队列,因为pop操作是原子的,即使有很多用户 ...

  6. 电商网站中价格的精确计算(使用BigDecimal进行精确运算(实现加减乘除运算))

    使用BigDecimal的String的构造器.商业计算中,使用bigdecimal的String构造器,一定要用. 重要的事情说三遍: 商业计算中,使用bigdecimal的String构造器! 商 ...

  7. 电商技术中企业数据总线ESB和注册服务管理的区别

    一.概述 1.什么是ESB 就是企业数据总线的意思,他的核心功能就是兼容各种协议接口,可以将数据在各种协议之间进行流转,并且可以针对数据格式进行编排转换. 异构系统,功能繁多,复杂 代表性的项目有:J ...

  8. Java生鲜电商平台-SpringCloud微服务架构中核心要点和实现原理

    Java生鲜电商平台-SpringCloud微服务架构中核心要点和实现原理 说明:Java生鲜电商平台中,我们将进一步理解微服务架构的核心要点和实现原理,为读者的实践提供微服务的设计模式,以期让微服务 ...

  9. Java生鲜电商平台-SpringCloud微服务架构中分布式事务解决方案

    Java生鲜电商平台-SpringCloud微服务架构中分布式事务解决方案 说明:Java生鲜电商平台中由于采用了微服务架构进行业务的处理,买家,卖家,配送,销售,供应商等进行服务化,但是不可避免存在 ...

随机推荐

  1. 简单的计算100000以内的质数(JAVA实现)

    public class TestPrimeNumber(int i){ public static void main(String[] args) { long start = System.cu ...

  2. GCC(警告.优化以及调试选项)

    GCC(警告.优化以及调试选项) [介绍] gcc and g++分别是gnu的c & c++编译器   gcc/g++在执行编译工作的时候,总共需要4步   1.预处理,生成.i的文件 预处 ...

  3. CodeForces - 294A Shaass and Oskols

    //////////////////////////////////////////////////////////////////////////////////////////////////// ...

  4. 暑假练习赛 004 E Joint Stacks(优先队列模拟)

    Joint StacksCrawling in process... Crawling failed Time Limit:4000MS     Memory Limit:65536KB     64 ...

  5. Turn the corner

    Turn the corner Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...

  6. 2015上海赛区B Binary Tree

    B - Binary Tree   Description The Old Frog King lives on the root of an infinite tree. According to ...

  7. 【Kafka源码】ReplicaManager启动过程

    在KafkaServer启动过程的入口中,会启动Replica Manager,众所周知,这是一个副本管理器.replica在Kafka中扮演的角色很重要,是保证消息不丢失的一个重要概念. repli ...

  8. 微服务下的契约测试(CDC)解读

    1. 前言 有近两周没有在公众号中发表文章了,看过我之前公众号的读者都知道,公众号中近期在连载<RobotFramework接口自动化系列课程>,原本计划每周更新一篇,最近由于博主在带一个 ...

  9. c#鼠标点击TextBox控件后清空默认字体

    方案(一) 脚本: <script type="text/javascript" language="javascript">        //得 ...

  10. [转载] 2 分钟读懂大数据框架 Hadoop 和 Spark 的异同

    转载自https://www.oschina.net/news/73939/hadoop-spark-%20difference 谈到大数据,相信大家对Hadoop和Apache Spark这两个名字 ...