一种信息推荐系统及信息推荐方法与流程

文档序号:12602910阅读:372来源:国知局
一种信息推荐系统及信息推荐方法与流程

本发明涉及互联网技术领域,具体涉及一种网站提供对象的推荐系统和推荐方法。



背景技术:

在信息过剩的互联网时代,信息推荐技术对于互联网公司运营的重要性是不言而喻的,目前各种各样的网站都会在后台使用推荐系统,上线了“今日推荐”和“猜你喜欢”两项功能,比如各类购物网站、付费下载的音乐网站、视频网站及各类服务网站等,他们都是根据用户的访问特点,计算出最适合推荐给该用户的候选产品,然后把这些产品展现给用户,供其选择。由于产品数量和用户数量非常庞大,推荐系统大量使用到基于云计算的数据挖掘,通过挖掘用户行为和商品信息,使用各种推荐算法来计算推荐列表,实现向不同用户展示不同内容的效果,提高页面的转化率。

现有的推荐系统中,最具有代表性的一种是同类产品推荐,根据用户的浏览记录和订单记录,向用户推荐记录中的同类型产品或相同产品。这种推荐个性化不足,推荐产品的多样性不够,不能发现用户对其他产品的潜在需求,因为用户往往对已购买过的产品兴趣会下降。另外,互联网中大部分网站的推荐系统都是以百度插件为主,不能真正达到将推荐转向运营的目的。



技术实现要素:

鉴于上述问题,提出了本发明,以便提供一种克服上述问题或至少部分地解决上述问题的一种信息推荐系统及其推荐方法。

依据本发明的一个方面,提供了一种信息推荐系统,该系统包括:

数据模块,用于收集并存储用户的属性数据,对订单的关键词提取和分析;

触发模块,用于利用触发策略产生推荐的候选集;

筛选模块,用于融合推荐的侯选集,并过滤掉不符合推荐条件的商品;

排序模块,用于对拟向用户推荐的商品进行优先级重新排序;

推荐模块,用于对排序后的商品向用户进行推荐。

进一步的,所述数据模块包括数据生成单元和数据存储单元,其中:

所述数据生成单元,是利用各种数据处理工具,对原始日志进行清洗、去除噪声数据,处理成格式化的数据;

所述数据存储单元,是对格式化的数据,分成不同的类型进行存储。

进一步的,所述侯选集可从基于用户的历史行为、基于用户的偏好以及基于用户所处的地域三个维度获取,还可以从在线相关,在线相似,离线相关,离线相似,近期热销品牌品类的各个维度获取。

进一步的,所述用户的历史行为维度,可根据用户之前的购买行为或浏览行为推荐相关或相似的商品。

进一步的,所述用户的偏好维度,可包括用户画像和多屏互通,其中:所述用户画像是指结合商品品牌、适用人群、价格指数以及用户对商品的点击、购买、关注和收藏等行为,确定用户的属性;所述多屏互通是指在各种智能终端上可实现推荐的同步。

进一步的,所述用户所处的地域维度,是把整个地图划分成多个网格,运用数据统计的结果实现对处于某一地域的用户进行推荐。

进一步的,对于没有之前的用户行为或之前的用户行为比较少的新用户,采用所述的用户所处的地域维度进行触发。

进一步的,所述触发算法包括协同过滤、基于位置、基于查询、基于图例、实时用户行为及替补策略。

进一步的,所述排序模块,可从用户的交互日志中,通过训练特征权重,再通过排序学习(Learning to Rank,L2R)算法改进实现。

根据本发明的另一方面,本发明还提供一种信息推荐方法,包括:

收集并存储用户的属性数据,对订单的关键词提取和分析;

利用触发策略产生推荐的候选集;

过滤掉不符合推荐条件的商品;

对拟向用户推荐的商品进行优先级重新排序;

对排序后的商品向用户进行推荐。

本发明可以向用户推荐与其浏览过或购买过的商品相关的商品,大大增强了推荐的多样性,并且,不会对客户已经购买过的商品进行重复推荐,优化了推荐功能,促进了推荐向销售的转化,提高了销售的转化率及用户的使用率。

【附图说明】

图1为本发明一个实施例的信息推荐系统示意图。

图2为本发明的信息推荐方法示意图。

【具体实施方式】

下面将参照附图更详细的描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明,而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能更透彻的理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

图1示出了根据本发明一个实施例的一种信息推荐系统。如图1所示,该系统包括:

数据模块100,用于收集并存储用户的属性数据,对订单的关键词提取和分析。数据是后续各个模块的根本。作为一个交易平台,同时具有快速增长的用户量,因此产生了海量丰富的用户行为数据,不同类型的数据,其价值和反映用户意图的强弱也有所不同,因此,需要对数据进行不同的提取和分析,以方便后续模块的调用。

数据模块100包括数据生成单元和数据存储单元,其中:

数据生成单元主要是利用各种数据处理工具,对原始日志进行清洗,处理成格式化的数据,比如对于作弊、刷单、代购等严重影响后续模块算法效果的噪声数据,首先要在数据清洗中剔除。数据生成单元包括对数据的提取和分析。对于注册用户而言,可提取到注册用户的属性信息,比如性别、年龄、学历等等;对于注册或非注册用户而言,根据用户所处的地理位置和用户近期的电脑缓存,通过对UGC(User Generated Content,用户原创内容)数据的挖掘,可以提取出一些关键词,然后进行关键词分析,使用分析后的关键词给订单(deal)打标签,生成格式化的数据,展示个性化的订单。

数据存储单元是对格式化的数据,分成不同的类型进行存储,比如hive数据库、hbase数据库、mysql数据库、redis数据库等等,以供触发模块200使用。

触发模块200,利用触发策略产生推荐的候选集。候选集的获取,可以主要从三个维度来实现:分别是基于用户的历史行为、基于用户的偏好以及基于用户所处的地域。当然,侯选集的获取也可以从其他维度考虑,比如在线相关,在线相似,离线相关,离线相似,近期热销品牌品类等,都可以加入到侯选集获取的维度当中。评价某个维度从推荐到购买转化效率的高低,主要看该维度下用户的点击率、转化率及年度成交总额。侯选集获取后,对侯选集进行效率分析,根据不同的维度采用不同的触发策略产生推荐的侯选集。

对于基于用户的历史行为维度而言,可根据用户之前的购买行为或浏览行为推荐相关或相似的商品。更进一步的,可以把用户之前的购买行为视为一个重要的分界线,当用户已购买某个商品,根据商品种类和用途选择推荐与其相关或相似的商品,而不是地重复推荐,比如为iphone6 plus买家推荐iphone6 plus保护套而不是iphone6 plus。为了提高推荐到购买的转化效率,可以将用户最近浏览或关注的商品推荐到首页,或者将放入购物车但未购买的商品推荐给用户,尤其是在商家对这些商品做活动的时候,推荐给相关用户。

对于基于用户的偏好维度而言,推荐可包括用户画像和多屏互通。其中,用户画像是指结合商品品牌、适用人群、价格指数以及用户对商品的点击、购买、关注和收藏等行为,对用户进行画像,确定用户的属性,从而确定可以长期推荐的品类。比如,根据关注上述条件下的用户行为,对于一个经常购买进口名牌婴幼儿产品的用户,可以大体确定出用户的性别为女性、购买能力很强、商品的消费档次较高、关注的商品类别为婴幼儿产品,进而根据婴幼儿成长的时间轨迹,可确定出后续长期向其推荐的商品,如依次年龄段的衣服、玩具、早教书籍等等。多屏互通是指推荐应适用于不同的客户端,在各种智能终端(比如笔记本、手机、平板电脑等)上可实现推荐的同步。

对于基于用户所处的地域维度而言,是把整个地图划分成多个网格,运用数据统计的结果实现对处于某一地域的用户进行推荐。以北京为例,东三环CBD地区的用户更感兴趣的商品是手机、时装、化妆品。房山长阳地区(该区为新城,大部分为新建小区)可以根据年轻人装修、结婚、生子,主要集中在推荐结婚摄影、装修、母婴用品等等。基于地域的推荐主要用于没有之前的用户行为或之前的用户行为比较少的新用户。

对于上述三个维度,涉及到的触发算法包括:

(1)协同过滤

协同过滤几乎在每一个推荐系统中都会用到。基本的算法非常简单,但是要获得更好的效果,往往需要根据具体的业务做一些差异化的处理,比如清除作弊、刷单、代购等噪声数据;合理选取训练数据,选取的训练数据的时间窗口不宜过长,当然也不能过短,具体的窗口期数值需要根据实验来确定;还可以考虑引入时间衰减,因为近期的用户行为更能反映用户接下来的行为动作。

在数据分析中,有些算法需要利用现有的数据构建模型,比如贝叶斯分类器,决策树,线性回归等,这类算法统称为监督学习(Supervisied Learning)算法。一般做预测分析时,会将数据分为两大部分:

一部分是训练数据(Train Data),用于构建模型。但是,有时候模型的构建过程中也需要检验模型,辅助模型构建,所以会将训练数据再分为两个部分:1)训练数据;2)验证数据(Validation Data),可选,用于辅助模型构建,可以重复使用。典型的例子是用K-Fold Cross Validation裁剪决策树,求出最优叶节点数,防止过渡拟合(Overfitting)。

另一部分是测试数据(Test Data),用于检验模型的构建。此数据只在模型检验时使用,用于评估模型的准确率。绝对不允许用于模型构建过程,否则会导致过渡拟合。

(2)location-based(基于位置)

对于移动设备而言,与PC端最大的区别之一是移动设备的位置是经常发生变化的。不同的地理位置反映了不同的用户场景,在具体的业务中可以充分利用用户所处的地理位置。在推荐的候选集触发中,也会根据用户的实时地理位置、工作地、居住地等地理位置触发相应的策略。比如根据用户的历史消费、历史浏览等,挖掘出某一粒度的区域(比如商圈)内的区域消费热单和区域购买热单,当新的线上用户请求到达时,根据用户的几个地理位置对相应地理位置的区域消费热单和区域购买热单进行加权,最终得到一个推荐列表。

此外,还可以根据用户出现的地理位置,同时采用协同过滤的方式计算用户的相似度。

(3)query-based(基于查询)

搜索是一种强用户意图,比较明确的反应了用户的意愿,但是在很多情况下,因为各种各样的原因,没有形成最终的转换。尽管如此,这种情景还是代表了一定的用户意愿,可以加以利用。具体做法如下:对用户过去一段时间的搜索无转换行为进行挖掘,计算每一个用户对不同查询的权重。

(4)graph-based(基于图例)

对于协同过滤而言,用户(user)之间或者订单(deal)之间的图距离是两跳,对于更远距离的关系则不能考虑在内。而图算法可以打破这一限制,将用户与订单的关系视作一个二部图,相互间的关系可以在图上传播。Simrank[2]是一种衡量对等实体相似度的图算法。它的基本思想是,如果两个实体与另外的相似实体有相关关系,那它们也是相似的,即相似性是可以传播的。

(5)实时用户行为

目前互联网上的业务会产生包括搜索、筛选、收藏、浏览、下单等丰富的用户行为,是可以进行效果优化的重要基础。当然希望每一个用户行为流都能到达转化的环节,但是事实上远非这样。当用户产生了下单行为上游的某些行为时,会有相当一部分因为各种原因使行为流没有形成转化。但是,用户的这些上游行为是非常重要的先验知识。很多情况下,用户当时没有转化并不代表用户对当前的项目不感兴趣。当用户再次到达推荐展位时,根据用户之前产生的先验行为理解用户的真正意图,将符合用户意图的相关订单再次展现给用户,引导用户沿着行为流向下游行进,最终达到下单这个终极目标。实时用户行为可包括:实时浏览、实时收藏。

(6)替补策略

虽然有一系列基于用户历史行为的候选集触发算法,但对于部分新用户或者历史行为不太丰富的用户,上述算法触发的候选集太小,因此需要使用一些替补策略进行填充。包括:

热销单:在一定时间内销量最多的权重,可以考虑时间衰减的影响等。

好评单:用户产生的评价中,评分较高的权重。

城市单:满足基本的限定条件,在用户的请求城市内的。

子策略融合:为了结合不同触发算法的优点,同时提高候选集的多样性和覆盖率,需要将不同的触发算法融合在一起。可采用的融合方法有以下几种:

加权型:最简单的融合方法就是根据经验值对不同算法赋给不同的权重,对各个算法产生的候选集按照给定的权重进行加权,然后再按照权重排序。

分级型:优先采用效果好的算法,当产生的候选集大小不足以满足目标值时,再使用效果次好的算法,依此类推。

调制型:不同的算法按照不同的比例产生一定量的候选集,然后叠加产生最终总的候选集。

过滤型:当前的算法对前一级算法产生的候选集进行过滤,依此类推,候选集被逐级过滤,最终产生一个小而精的候选集合。

筛选模块300,用于融合推荐的侯选集,并过滤掉不符合推荐条件的商品。筛选模块300包括融合单元和过滤单元,融合单元是对触发模块200产生的不同候选集进行融合,以提高推荐策略的覆盖度和精度;过滤单元承担一定的过滤职责,从产品、运营的角度确定一些人工规则,过滤掉不符合条件的项目条款,比如,通过建立的关键词体系将国家明文禁止的产品及词语有效的过滤,对于没有合作的商品及相同的商品进行筛选或人工干预,不推荐给用户。

排序模块400,对拟向用户推荐的商品进行优先级重新排序。由于触发模块根据不同算法触发出来的候选集,只是根据算法的历史效果决定算法产生的权重的位置显得有些简单粗暴,同时,在每个算法的内部,不同权重的顺序也只是简单的由一个或者几个因素决定,这些排序的方法只能用于第一步的初选过程,最终的排序结果需要借助机器学习的方法,使用相关的排序模型,综合多方面的因素来确定。本发明中,推荐排序的问题转化为分类的问题实现,主要是利用机器学习的模型对筛选模块300筛选出来的候选集进行重排序。

现有的排序模块使用的是相关度排序或重要性排序,相关度排序是根据查询和文档之间的相似度来对文档进行排序;重要性排序不考虑查询,而仅仅根据网页之间的图结构来判断文档的权威程度。由于现有的排序模块往往只考虑某一个方面(相关度或者重要性),所以其转化率并不高。为了使转化率再一次获得提升,并发明从用户的交互日志中,通过训练特征权重,再通过排序学习(Learning to Rank,L2R)算法改进实现。具体的,本发明使用的L2R算法与文本分类不同,考虑的是给定查询的文档集合的排序,因此,L2R算法用到的特征不仅仅包含文档本身的一些特征等,也包括文档和给定查询之间的相关度,以及文档在整个网络上的重要性(比如PageRank值等),因此,本发明使用相关性排序和重要性排序的输出来作为L2R算法的特征权重。

L2R算法的训练数据可通过两种方法获得:人工标注和从日志文件中挖掘。

人工标注:首先从搜索引擎的搜索记录中随机抽取一些查询,将这些查询提交给多个不同的搜索引擎,然后选取各个搜索引擎返回结果的前几个,最后由专业人员来对这些文档按照和查询的相关度进行标注。

从日志中挖掘:搜索引擎都有大量的日志记录用户的行为,可以从中提取出L2R的训练数据。给定一个查询,搜索引擎返回的结果列表为L,用户点击的文档的集合为C,如果一个文档“di”被点击过,另外一个文档“dj”没有被点击过,并且“dj”在结果列表中排在di之前,则di>dj就是一条训练记录。

本发明具体的L2R算法使用PointWise、PairWise和ListWise三类,其中:

1). PointWise L2R

PointWise方法只考虑给定查询下,单个文档的绝对相关度,而不考虑其他文档和给定查询的相关度。亦即给定查询q的一个真实文档序列,只需要考虑单个文档di和该查询的相关程度ci,

2). Pairwise L2R

Pairwise方法考虑给定查询下,两个文档之间的相对相关度。亦即给定查询q的一个真实文档序列,只需要考虑任意两个相关度不同的文档之间的相对相关度:di>dj,或者di<dj。

3). Listwise L2R

与Pointwise和Pairwise方法不同,Listwise方法直接考虑给定查询下的文档集合的整体序列,直接优化模型输出的文档序列,使得其尽可能接近真实文档序列。

推荐模块500,对排序后的商品向用户进行推荐。

举例来说,对于数据模块中用户主动行为的数据,记录了用户在网站平台上不同的环节的各种行为,比如在网站上进行的搜索,咨询和浏览的记录,针对这些内容结合周边的产品进行数据的分析,这些行为一方面可用于触发模块算法中的离线计算,另外一方面,这些行为代表的意图的强弱不同,因此在排序模块中可以针对不同的行为设定不同的回归目标值,以更细地刻画用户的行为强弱程度。此外,用户对交易的这些行为还可以作为排序模块的交叉特征,用于离线训练和在线预测。

数据模块中的负反馈数据,反映了当前的结果可能在某些方面不能满足用户的需求,因此在后续的候选集触发过程中需要考虑对特定的因素进行过滤或者降权,降低负面因素再次出现的几率,提高用户体验;同时在排序模块的模型训练中,负反馈数据可以作为不可多得的负例参与模型训练,这些负例要比那些展示后未点击、未下单的样本显著的多。

用户画像是刻画用户属性的基础数据,其中有些是直接获取的原始数据,有些是经过挖掘的二次加工数据,这些属性一方面可以用于候选集触发过程中对订单进行加权或降权,另外一方面可以作为排序模块中的用户维度特征。

本发明的上述方案具有如下优点:

1、本发明可以向用户推荐与其浏览过或购买过的商品相关的商品,大大增强了推荐商品的多样性,并且,不会对客户已经购买过的商品进行重复推荐,优化了推荐功能。

2、本发明促进了推荐向销售的转化,提高了销售的转化率及用户的使用率,可为网络销售提供更加准确的营销平台,提高网站运营方的收入。

图2示出了与图1推荐系统相对应的推荐方法,由于其原理与图1对应的系统一致,因此不再过多的赘述。一种信息推荐方法,包括:

收集并存储用户的属性数据,对订单的关键词提取和分析。具体的,可利用各种数据处理工具,对原始日志进行清洗,剔除噪声数据,处理成格式化的数据;对格式化数据进行不同类型的存储。

利用触发策略产生推荐的候选集。可以从基于用户的历史行为、基于用户的偏好、基于用户所处的地域以及在线相关,在线相似,离线相关,离线相似,近期热销品牌品类等获取侯选集。可根据用户之前的购买行为或浏览行为推荐相关或相似的商品。更进一步的,可以把用户之前的购买行为视为一个重要的分界线,当用户已购买某个商品,根据商品种类和用途选择推荐与其相关或相似的商品,而不是地重复推荐。可对用户进行画像,确定用户的属性,从而确定可以长期推荐的品类。可整个地图划分成多个网格,运用数据统计的结果实现对处于某一地域的用户进行推荐。

对侯选集进行融合,以及过滤掉不符合推荐条件的商品。对不同候选集进行融合,以提高推荐策略的覆盖度和精度;从产品、运营的角度确定一些人工规则,过滤掉不符合条件的项目条款。

对拟向用户推荐的商品进行优先级重新排序。利用机器学习的模型对筛选出来的候选集进行重排序。

对排序后的商品向用户进行推荐。

需要说明的是:

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定的编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明内容。

本领域那些技术人员可以理解,可以对实施例中各模块进行自适应性的改变并且把它们设置在与该实施例不同的一个或多个设备中。除非另有明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。

以上所述仅为本发明之较佳实施例,并非用以限定本发明的权利要求保护范围。同时以上说明,对于相关技术领域的技术人员应可以理解及实施,因此其他基于本发明所揭示内容所完成的等同改变,均应包含在本权利要求书的涵盖范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1