1、 电商推荐算法简述算法
目前比较多的电商模式为B2B,B2C,O2O,在本文介绍和须要举例说明的地方B2B电商模式为主。数据库
电商推荐根据推荐内容不一样分为物品推荐、商家推荐;流行的推荐应用主要有三个方面:1)针对用户的浏览、搜索等行为所作的相关推荐;2)根据购物车或物品收藏所作的类似物品推荐;3)根据历史会员购买行为记录,利用推荐机制作邮件推送或会员营销。其中推荐算法主要分为如下几个类: 网络
一、基于用户的协同过滤推荐算法性能
a. 找到与目标用户兴趣类似的用户集合学习
b. 找到这个集合中用户喜欢的、而且目标用户没有据说过的物品推荐给目标用户网站
二、基于Item(项目)的协同过滤推荐算法spa
a.基于用户对某商品的兴趣程度,寻找出类似度最大的物品。对象
b.将类似度最大的物品推荐给目标用户。排序
协同过滤举例:四个用户ABCD,对5个商品abcde的兴趣与否见下表(实际用户对物品的兴趣程度有区别,须要具体的评份量化),这里方便理解原理,用二元值表示用户对物品是否感兴趣。接口
|
a |
b |
c |
d |
e |
目标物品 |
A |
1 |
1 |
0 |
1 |
0 |
1 |
B |
1 |
0 |
1 |
0 |
0 |
0 |
C |
0 |
1 |
0 |
0 |
1 |
1 |
D |
0 |
1 |
1 |
1 |
0 |
? |
基于用户的协同过滤:指根据用户对各物品的兴趣度计算类似性,类似性的算法有不少(主要有余弦类似性、相关类似性以及欧式距离等),上述与用户D类似对最高的是用户A,用户A对目标物品的兴趣度为1,就可将目标物品推荐给用户D。
基于item的协同过滤:指从物品维度上看,根据用户对每一个物品的兴趣度,计算物品间的类似性,能够算出物品b和目标物品的类似性最大,用户D对物品b感兴趣,则极可能对目标用户感兴趣。
三、基于内容的推荐算法
商品为客观体,提取商品对象的特征,寻找类似度比较大的物品进行推荐。系统首先对物品的属性进行建模,经过类似度计算,发现物品A和B类似度较高,或者他们都属于同类物品。系统还会发现某用户喜欢物品A,由此得出结论,某用户可能对物品B也感兴趣,因而将物品B推荐给该用户。
基于内容的推荐算法比较容易理解,主要用到分类、聚类算法,对用户兴趣能够很好的建模,并经过对物品属性维度的增长,得到更好的推荐精度。可是物品的属性有限,很可贵到更多数据属性,且对于部分物品属性特征提取有时候比较困难,只考虑物品自己的特征,忽略用户的行为特征,存在必定片面性,对于从未购买物品的新用户存在冷启动问题,不能对新用户进行推荐。
四、基于关联规则的推荐算法
基于关联规则的推荐是以关联规则为基础,把已购商品做为规则头,规则体为推荐对象。关联规则挖掘能够发现不一样商品在销售过程当中的相关性,关联规则就是在一个交易数据库中统计购买了商品集X的交易中有多大比例的交易同时购买了商品集Y,其直观的意义就是用户在购买某些商品的时候有多大倾向去购买另一些商品,根据某种商品所属的置信度较高的关联规则,推荐物品。
根据用户的购买记录,提取关联规则,经常使用的算法有Apriori算法,为了提取频繁项集和必定置信度的关联规则。Apriori算法的主要原则是若是项集A是频繁的,那么它的子集都是频繁的。若是项集A是不频繁的,那么全部包括它的父集都是不频繁的,简化频繁项集的选择的复杂度。
五、基于RFM的推荐算法
六、基于人口统计特征的推荐算法
这是最为简单的一种推荐算法,它只是简单的根据系统用户的基本信息发现用户的相关程度,而后将类似用户喜好的其余物品推荐给当前用户。系统首先会根据用户的属性建模,好比用户的年龄,性别,兴趣等信息。根据这些特征计算用户间的类似度。好比系统经过计算发现用户A和C比较类似。就会把A喜欢的物品推荐给C。
基于人口统计特征推荐算法的优点是不须要历史数据,没有新用户冷启动问题,不依赖于物品的属性,不足是算法比较粗糙,效果很难使人满意,只适合简单的推荐。
七、混合推荐算法
融合以上方法,以加权或者串联、并联等方式尽心融合。实际应用最多的是内容推荐和协同过滤推荐的组合。最简单的作法就是分别用基于内容的方法和协同过滤推荐方法去产生一个推荐预测结果,而后用某方法组合其结果,如加权、变换、混合、特征组合、层叠、特征扩充、元级别等。组合推荐一个最重要原则就是经过组合后要能避免或弥补各自推荐技术的弱点。
1)加权(Weight):加权多种推荐技术结果。
2)变换(Switch):根据问题背景和实际状况或要求决定变换采用不一样的推荐技术。
3)混合(Mixed):同时采用多种推荐技术给出多种推荐结果为用户提供参考。
4)特征组合(Feature combination):组合来自不一样推荐数据源的特征被另外一种推荐算法所采用。
5)层叠(Cascade):先用一种推荐技术产生一种粗糙的推荐结果,第二种推荐技术在此推荐结果的基础上进一步做出更精确的推荐。
6)特征扩充(Featureaugmentation):一种技术产生附加的特征信息嵌入到另外一种推荐技术的特征输入中。
7)元级别(Meta-level):用一种推荐方法产生的模型做为另外一种推荐方法的输入
2、 各类推荐算法的优缺点
推荐方法 |
优势 |
缺点 |
协同过滤推荐 |
新异兴趣发现、不须要领域知识; 随着时间推移性能提升; 推荐个性化、自动化程度高; 能处理复杂的非结构化对象 |
稀疏问题; 可扩展性问题; 新用户问题; 质量取决于历史数据集; 系统开始时推荐质量差; |
基于内容推荐 |
推荐结果直观,容易解释; 不须要领域知识 |
新用户问题; 复杂属性很差处理; 要有足够数据构造分类器 |
基于规则推荐 |
能发现新兴趣点; 不要领域知识 |
规则抽取难、耗时; 产品名同义性问题; 个性化程度低; |
基于人口统计 |
不须要历史数据,没有冷启动问题; 不依赖于物品的属性,所以其余领域的问题均可无缝接入 |
算法比较粗糙,效果很难使人满意,只适合简单的推荐 |
3、 推荐算法总结
鉴于各类推荐算法的优缺点和适应场景,系统开始与系统成熟时的推荐算法应有区别。系统开始时,用户数据不够多,交易行为记录数据比较少,假若利用基于内容和协同过滤的推荐算法存在不少新用户冷启动问题。在系统成熟时,用户交易数据较多,部分算法用到矩阵,产生较大的稀疏矩阵数据,运算量大,须要结合组合推荐法。总结B2B电商平台在系统初和系统成熟时的推荐算法建议:
系统初可以使用的推荐方法:
一、基于人口统计、热搜、浏览记录
基于人口统计的推荐:经过注册以及询问得知一些用户的属性信息,譬如年龄、居住城市、受教育程度、性别、职业等等,可以获得用户之间属性的类似度;
热搜:站内热搜,按排名进行推荐;
基于浏览记录的内容的推荐:部分产品的内容特征比较好提取,好比带文字描述的产品,也有内容特征比较难提取的,如图片,或者浏览的商品不详,则须要人工或智能爬取相关信息。总的来讲,这一部分的推荐是基于用户浏览的内容,经过提取特征,计算类似度,推荐类似产品(类似产品的推荐精确度可能比较难达到要求,经过提升粒度,进行品类推荐是常见作法)。
二、标签系统
利用标签也只能是提升有少许行为的用户的推荐准确性,对于纯粹的冷启动用户,是没有帮助的,由于这些人尚未打过任何标签。系统也能够给商品打上标签,可是这里面没有个性化的因素,效果会打一个折扣。从这个意义上讲,利用标签进行推荐、激励用户打标签以及引导用户选择合适的标签,都很是重要。引导用户多打标签,经过标签进行分类推荐也是经常使用的方法
三、多维数据的利用
每一个人处于一个巨大的社会网络中,在多个网站存在行为数据,至关比例的用户都具备交叉购物的习惯,把这些网络数据整合起来,特别是知道每一个节点身份的对应关系,能够带来的巨大的社会经济价值。使用‘迁移学习法’,能够实现跨领域的推荐。多维数据的利用能解决新用户的冷启动问题。
神州商桥的用户来自原本的用户群的比例应该很大,从其它的数据接口获取数据源,得到用户的基础信息。
系统成熟时可以使用的推荐方法:
一、 协同过滤推荐法
二、 基于内容的推荐法
三、 基于关联规则,用户与用户之间的关联,商品与商品之间的关联
四、 组合推荐法(协同过滤和基于内容的推荐的结合)
这三个推荐法在电商系统成熟时应用的比较多,行为数据充足使得这些算法的推荐效果比较好,然而在数据量级特别大的时候存在数据稀疏问题,通常采用的解决办法是把这些商品信息粗粒化,譬如只考虑一个个的品类,数据就会马上变得稠密。若是可以计算品类之间的类似性,就能够帮助进行基于品类的推荐。
4、推荐算法评价指标
准确度、多样性、新颖性和覆盖率。每一类下辖不少不一样的指标,譬如准确度指标又能够分为四大类,分别是预测评分准确度、预测评分关联、分类准确度、排序准确度四类。第二个层次是商业应用上的关键表现指标,譬如受推荐影响的转化率,购买率,客单价,购买品类数等等,第三个层次是用户真实的体验,注意保护用户隐私。