拉手网-个性化推荐方法与系统设计

本文探讨了团购网站的个性化推荐技术,旨在提高用户转化率、交叉销售能力和用户忠诚度。核心是推荐算法,包括关联规则、内容基础、协同过滤和隐语义模型等。系统面临的挑战包括推荐质量、实时性、稀疏性和冷启动问题。拉手网提出了一种结合用户属性喜好度的推荐方法,解决了新用户和购买量小的用户推荐问题,提高了推荐准确性和针对性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

团购网站的个性化推荐技术是指利用算法和技术向用户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助用户完成购买过程的技术。个性化推荐技术的作用主要表现在,

1、将团购网站的浏览者转变为购买者;

2、提高团购网站的交叉销售能力。比如,购买了某商场电影票的用户极有可能会在影院周边做餐饮等相关消费。

3、改善用户体验 , 提高用户忠诚度。智能决策能很大程度上提高团购网站的用户粘性。

个性化推荐技术的核心是推荐算法,现有的各种推荐算法有其适用的环境,在具体环境中使用合适的算法会对推荐结果产生非常重要的影响。

一个成功的个性化推荐系统,能够帮助用户快速找到或发掘出感兴趣的商品,这样可以极大地便利用户,而且会使用户对个性化推荐系统产生依赖,养成长期使用的习惯,对网站保持用户忠诚度有着很大的作用。

个性化推荐系统的两个挑战

将个性化推荐系统适用在大型团购网站上,主要面临如下几个挑战:

1、推荐质量。在大型团购网站,商品数量很庞大,用户有过行为(浏览、购买、评分等)的商品数量占的比例极小,因此数掘稀疏性很高。另外,使用不同的推荐算法对推荐质量的影响也很大。如何提高推荐质量是个性化推荐研究的一个重要挑战。

2、实时性。推荐的精度和所需的时间是矛盾体。推荐精度高的算法往往需要较长的计算时间。但是在线推荐对实时性的要求较高,因此往往需要牺牲一部分的推荐质量。如何在满足实时性的前提下保证推荐质量是个性化推荐研究的另一个重要挑战。

个性化推荐系统的主要问题

1、稀疏性问题。随着团购网站的快速发展,网站中的用户和商品也越来越多,用户数据和商品数据都朝着海量方向发展,随之产生了一个问题:把用户作为行,商品作为列构成的用户-商品矩阵中,有效的用户-商品数据只占了很小的一部分,即每个用户有过浏览、评价等行为的商品只占总商品数的很小一部分。数据越稀疏,个性化推荐系统的推荐质量、推荐实时性挑战越大。

2、冷启动问题。团购网站在持续运营的过程中,会有新的用户不断涌入。当一个新用户进入个性化推荐系统时,由于该用户在系统中没有可供参考的历史记录,系统不能识别其偏好,从而很难对其产生个性化推荐。对于新商品来说亦然,由于对新商品的不了解,系统难以将其与其他商品计算相似度,新商品就不容易出现在推荐结果中。

3、可扩展性问题。个性化推荐系统的数据一般是海量动态的,在个性化推荐系统运行的过程中,会不断有新的数据加入进来。个性化推荐系统需要在原有数据的基础上,把新加入的数据也结合到系统里来,以丰富训练数据,提高推荐质量。

4、实时性问题。实际应用中,很大一个比例的个性化推荐系统的作用是在线实时推荐,需要系统能及时响应用户的请求。而由于数据量的巨大,在保证准确率的同时保证实时性是个两难问题。

常用的个性化推荐方法

目前的个性化推荐系统使用的算法主要有如下几种,基于关联规则的推荐算法,基于内容的推荐算法,基于协同过滤的推荐算法,基于隐语义模型的推荐算法。

1、基于关联规则的推荐方法(Association Rule-based Recommendation),是比较传统的方法。基于商品在用户购物车中的共现率进行推荐。由于有的团购商品上线时间较短,因此导致共现信息很少或根本不存在,所以该方法不能适用于团购商品的推荐。

2、基于内容的推荐方法 (Content-based Recommendation)。内容过滤主要采用自然语言处理、人工智能、概率统计和机器学习等技术进行过滤。通过相关特征的属性来定义项目或对象,系统基于用户评价对象的特征学习用户的兴趣,依据用户资料与待预测项目的匹配程度进行推荐,努力向用户推荐与其以前喜欢的产品相似的产品。

3、协同过滤推荐方法(Collaborative Filtering Recommendation)。协同过滤是在信息过滤和信息系统中正迅速成为一项很受欢迎的技术。与传统的基于内容过滤直接分析内容进行推荐不同,协同过滤分析用户兴趣,在用户群中找到指定用户的相似(兴趣)用户,综合这些相似用户对某一信息的评价,形成系统对该指定用户对此信息的喜好程度预测。协同过滤推荐方法的不足是,

1)用户对商品的评价非常稀疏,这样基于用户的评价所得到的用户间的相似性可能不准确(即稀疏性问题)。

2)随着用户和商品的增多,系统的性能会越来越低(即可扩展性问题)。 

3)如果从来没有用户对某一商品加以评价,则这个商品就不可能被推荐(即最初评价问题)。

4、基于隐语义模型的推荐

隐语义模型(latent factor model,简写为LFM)的核心思想是通过隐含特征(latent factor)联系用户兴趣和项目。由于人工对项目的分类存在不能代表用户意见,难以控制分类粒度,难以给一个项目多个分类,难以给出多维度分类,以及难以决定一个项目在某一分类中的权重等问题,研究人员考虑从数据入手,自动地找到项目的类,采用的是基于用户行为统计的自动聚类方法。LFM模型在推荐的准确度上优于协同过滤算法,但在实际应用中因为耗时太久,不能提供实时推荐。经典的LFM模型每次训练时都需要扫描所有用户行为记录,这样才能计算出用户隐类向量和项目隐类向量,而且LFM的训练需要在用户行为记录上反复迭代才能获得较好的性能。因为耗时长的原因,实际应用中一般一天训练一次,计算出所有用户的推荐结果。

由此可见,上述现有的个性化推荐系统和方法存在的缺陷最终会影响推荐结果质量、实时性不高,导致不能完成推荐或推荐不准确。

有鉴于上述的个性化推荐方法存在的缺陷,拉手网基于多年丰富的实务经验及专业知识,经过不断的研究、设计,最终组合设计出一种适合团购网站推荐的方法及系统。

个性化推荐方法设计

本网站的推荐方法不仅对购买量大的老用户有效,同样也适用于对新用户和购买量较小的用户推荐,具有推荐的准确性高的特点。

个性化推荐方法的结构示意框图如下:

                 

推荐方法,包括:

1)计算目标用户对待推荐商品的各属性的喜好度;

2)综合目标用户在该商品的各个属性的喜好度得到目标用户对该商品的整体喜好度;

3)根据目标用户对待推荐商品的喜好度向所述目标用户推荐相应的商品。

进一步,其中步骤1)包括:

1-1)根据商品的各个属性的取值特点分别设定各个属性的概率分布;

1-2)根据历史数据确定各个属性的概率分布的参数;

1-3)将待推荐商品的某个属性相对于目标用户在上述概率分布上的概率值作为目标用户对该待推荐商品的该属性的喜好度。

进一步,所述各个属性的概率分布为正态分布或多项式分布。

进一步,所述各个属性的概率分布的参数通过目标用户的历史数据或所有用户的历史数据来确定。

进一步,所述步步骤2)是通过线性加权和的方式综合目标用户在待推荐商品的各个属性上的喜好度来得到目标用户在该商品上的整体喜好度,通过公式表示如下:


 其中,A1、A2……Ad表示商品的一组属性值, score(g.Ak,u)表示用户在商品g的第k个属性上的喜好度得分,wk表示该属性的权重,该权重可以通过经验设置,也可以根据既往数据进行优化,或者最简单的,全部设置成1,表示均衡的权重。其中各个属性的权重通过经验设定,或者通过历史数据优化。通过历史数据优化可以采用机器学习的方法根据用户的购买历史以及浏览历史进行优化。经过优化的权重相对于简单设置的权重会得到更精确全面的结果。

商品的属性包括商品描述信息、商品在线销售起止时间、商品价格、商品折扣率、商品配送信息或商品所述商家地址信息、商品类别等等。此处用到的特征不局限于上述特征,比如使用到的还有商品点击购买率,商品销量等。每个待推荐商品采用的属性越多,那么综合出来的目标用户在该待推荐商品上的喜好度也越准确。

作为一个前提,本网站个性化推荐系统中每个用户已经购买的以及将会购买的商品,在第k个商品的属性上的取值符合某种分布。比如对于那些连续变量的属性值,例如,商品的价格,所属商家的地址坐标以及折扣率等等,我们假设这些属性值符合正态分布;对于那些离散变量的属性值,例如,商品的类别,我们假设这些离散变量的属性值符合多项式分布。

假设用户u在商品第k个属性Ak上的分布为,那么对于商品g,我们假设g.Ak = ak,k=1,...,d那么,score(g.Ak,u)= ,即


对于那些新用户以及购买量较少的老用户,为了得到更稳健的得分值,我们采用贝叶斯分析的方法,即假设各个分布函数的参数符合某种先验分布。假设第k个属性上的先验分布的参数为,那么

连续变量的属性分为一维数值属性和二维数值属性,相应的喜好度的计算如下:

一维数值属性包括价格、折扣率等,其一维正态分布为

那么对于一个待推荐商品的该属性在上述分布上的概率值为


将上述概率归一化后得到该待推荐商品的该属性的喜好度得分:


二维数值属性以地址的坐标为例,设定地址的坐标服从二维正态分布,如下式:


其中,

。那么对于一个待推荐商品的所属商家的地址在上述分布中出现的概率值可以通过下式计算,

,其中是基于目标用户既往访问过的商品的所属商家的地址得到的均值和协方差阵参数的后验估计。

将上述的概率归一化得到该地址的得分值,即目标用户在该待推荐商品的地址属性上的喜好度


对于离散变量的属性的相应的喜好度的计算以商品类别为例,其服从多项式分布。假设共有C个属性取值,。目标用户历史数据中取值的出现次数为,显然,。对于一个作为待推荐商品的新商品,在该属性上的取值为c,即,通过下式计算该取值出现的后验概率,即目标用户在该属性上的喜好度

,其中是先验参数,我们可以采用均衡设置,即,得到下式

进一步,所述各个属性的权重通过经验设置,或者根据历史数据进行优化,或者全部设置成1,表示均衡的权重。

进一步,所述商品的属性包括商品描述信息、商品在线销售起止时间、商品价格、商品折扣率、商品配送信息或商家地址信息、商品类别。

个性化推荐系统设计

个性化推荐系统的流程图如下图所示,

 

由上图可以看出,个性化推荐系统主要包括如下几个模块,

(1)用户识别模块:识别登录的用户,以便调用相应的用户信息;

(2)用户信息数据库模块:存储用户信息;

(3)商品信息数据库模块:存储商品信息,包括商品属性信息;

(4)商品喜好度生成模块:根据用户识别模块对用户的识别结果,从用户信息数据库和商品信息库调取相应的信息,计算目标用户对待推荐商品的各属性的喜好度;然后综合目标用户在该商品的各个属性的喜好度得到目标用户在该商品上的整体喜好度; 

(5)商品推荐模块:根据目标用户对商品的喜好度进行排序,按排序结果向目标用户推荐相应的商品,将排序结果发送给目标用户。

个性化推荐系统如图1所示主要包括:(1)用户识别模块:识别登录的用户,以便调用相应的用户信息;根据用户ID等识别登录的用户,然后根据该用户的信息,为该用户提供有效的推荐。推荐方式可以根据用户的要求有针对性地进行,如最优推荐,周边推荐(在用户指定的距离范围内进行推荐)等。(2)用户信息数据库模块:存储用户信息;包括用户浏览历史、购买历史、年龄、性别以及登录信息等。根据这些信息盘对用户对商品的倾向性,从而为用户提供较为准确的推荐。(3)商品信息数据库模块:存储商品信息,包括商品属性信息;商品属性信息包括商品名称、商品描述信息、商品在线销售起止时间、商品价格、商品折扣、商品配送信息或商家地址信息、商品类别等。(4)商品喜好度生成模块:根据用户识别模块对用户的识别结果,从用户信息数据库和商品信息库调取相应的信息,计算目标用户对待推荐商品的各属性的喜好度;然后综合目标用户在该商品的各个属性的喜好度得到目标用户在该商品上的整体喜好度。(5)商品推荐模块:根据目标用户对商品的喜好度进行排序,按排序结果向目标用户推荐相应的商品,将排序结果发送给目标用户。

例如,某用户John登录当前系统之后, 用户识别模块会识别出此用户,调用相应的用户信息,得到以下信息:

1、该用户正在北京市海淀区中关村附近;

2、该用户浏览过餐饮类商家推出的产品;

3、该用户购买过奢侈品。

这里,假设有三个属性:地点、餐饮、价格。根据此用户的信息,商品喜好度生成模块可以得到该用户在这三个属性上的概率分布,如下:

1、地点:该用户在地点上的概率分布是一个以海淀区中关村为中心的二维高斯分布(经纬度);

2、餐饮:该用户在在餐饮上的概率分布是一个bernoulli分布。由于他购买过餐饮类产品,所以此概率分布趋向于喜欢餐饮;

3、价格:该用户在地点上的概率分布是一个一维高斯分布。由于大部分用户消费的价格比较低,但是该用户购买过价格贵的商品,所以此高斯分布的方差很大,中心点的值也比较大。

确定了用户对于各属性的喜好地概率分布后,从商品信息数据库中调用相关的商品属性信息,计算目标用户对待推荐商品的各属性的喜好度。这里,具有以下特性的商品服务会得分较高:离中关村比较近的价格中上的餐饮类商品服务。

最后,商品推荐模块会将“离中关村比较近的价格中上的餐饮类商品服务”发送给目标用户。

本网站个性化推荐系统的主要优点是:

(1) 能解决商品在线时间短,历史经验少的问题。

(2) 可以根据用户的要求进行有针对性的推荐。

(3) 适合给新用户以及购买量较小的用户进行推荐。

(4) 推荐方法和系统推荐的准确率高,针对性强,节约了用户的搜索及浏览时间

 作者:郭大亮


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值