CN105809475A - “互联网+旅游”环境下支持o2o应用的商品推荐方法 - Google Patents
“互联网+旅游”环境下支持o2o应用的商品推荐方法 Download PDFInfo
- Publication number
- CN105809475A CN105809475A CN201610113832.3A CN201610113832A CN105809475A CN 105809475 A CN105809475 A CN 105809475A CN 201610113832 A CN201610113832 A CN 201610113832A CN 105809475 A CN105809475 A CN 105809475A
- Authority
- CN
- China
- Prior art keywords
- commodity
- weight
- recommendation
- num
- represent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000005065 mining Methods 0.000 claims abstract description 11
- 238000006243 chemical reaction Methods 0.000 claims abstract description 8
- 238000001914 filtration Methods 0.000 claims abstract description 8
- 239000013065 commercial product Substances 0.000 claims description 25
- 239000000047 product Substances 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0277—Online advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/14—Travel agencies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
Landscapes
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了“互联网+旅游”环境下支持O2O应用的商品推荐方法,包括:游客选择即将游览的景点,根据景点查询数据库以获取本景点可购买的所有商品,并对各商品按照点击转化率和历史销售量进行推荐权重初始化;查询该游客以往的浏览、购买、收藏以及不喜欢的商品记录,更新本景点所有商品的权重;采用协同过滤推荐算法再次更新商品权重;对本景点的所有商品按照权重从高到低进行堆排序,选出权重最高的一定数量的商品形成临时推荐商品列表;采用Apriori频繁项集挖掘算法,计算出可能被一起购买的商品集合;将临时推荐商品列表分成数量相等的两部分,从高到低遍历推荐商品列表,对于每个商品进行调整,最后将临时推荐商品列表的前半部分作为最终的推荐商品列表。
Description
技术领域
本发明涉及互联网的特别是计算机网络旅游信息服务数据处理领域,特别是“互联网+旅游”环境下支持O2O应用的商品推荐方法。
背景技术
近年来,随着社会的进步和人们生活水平的提高,旅游正成为一种越来越流行的消遣方式。然而当人们到达一个景点,面对形形色色、多种多样的商品,游客很难知道自己真正需要的商品,甚至有很多人在选择商品时被欺骗。因此,基于移动app的旅游景点的商品推荐正好可以帮助游客找到自己可能需要的商品,参考以往的商品购买和评价也可以极大降低自己被骗的概率。另一方面,对于景点而言,也可以提高自己的整体利润。综上所述,研究基于移动app的旅游景点的商品推荐方法成了一件非常有意义的事情。
旅游景点的商品推荐方法属于典型的推荐***问题,却也有很大不同。对于一个客户,面对数量巨大的物品集合,如何快速地找到自己感兴趣的物品就成了一个问题,推荐***的出现正是要解决这个问题。比如电影网站采用电影推荐***给用户推荐可能喜欢的电影,购物网站采用商品推荐***给客户推荐很可能想买的商品。推荐***就是通过已有的选择过程或相似性关系挖掘每个用户潜在的感兴趣的对象,进而进行个性化推荐。归纳起来,根据推荐算法的不同,目前推荐***可以分为以下几类:基于内容的推荐***、协同过滤推荐***、基于网络结构的推荐***和混合推荐***。基于内容的推荐***的核心思想是分别对用户和物品建立配置文件,通过分析已经购买或者浏览过的内容,建立或更新用户的配置文件,***可以比较用户与产品配置文件的相似度,并直接向用户推荐与其配置文件最相似的产品。协同过滤推荐***核心思想是利用用户的历史信息计算用户之间的相似性和利用与目标用户相似性较高的邻居对其他产品的评价来预测目标用户对特定产品的喜好程度并进行推荐。基于网络结构的推荐***的核心思想是不考虑用户和产品的内容特性,而仅仅把他们看作抽象的节点,所有算法利用的信息都隐藏在用户和产品的选择关系之中。混合推荐***的核心思想是结合上述推荐***的优缺点,来扬长避短。
目前有许多针对不同领域的商品推荐方法已经取得了一些成果。中国专利《一种产品信息的推荐方法及***》,申请号:201010273633.1,授权公告号102385601A公开了一种产品信息的推荐方法及***,该方法仅仅根据本用户历史记录进行商品推荐,没有使用相似用户的喜好数据进行推荐。中国专利《一种基于关键字的电子商务网站商品推荐方法》,申请号:201210050057.3,授权公告号102629257A公开了一种基于关键字的电子商务网站商品推荐方法,该方法仅仅根据本用户历史记录进行商品推荐,没有对商品的推荐顺序进行数据处理,也没有考虑商品之间销售的数据相互影响关系。
但是,基于景点的商品推荐***由于每次可推荐的商品集合会随着游客到达的地点而变化,而不是整个推荐***的商品集合只有一个。另一方面,考虑到商品之间可能存在着多个商品被一起购买的倾向,将这几个商品放在一起很可能会提高游客的购买欲,而这两个方面正是上述各种推荐***不用考虑的因素。因此现有的推荐***并不能直接应用于基于景点的商品推荐。
发明内容
发明目的:本发明主要针对基于景点的商品推荐,弥补现有物品推荐算法在此适用背景下的不足,提供一种“互联网+旅游”环境下支持O2O(OnlineToOffline,线上到线下)应用的商品推荐方法。
为了解决上述技术问题,本发明公开了“互联网+旅游”环境下支持O2O应用的商品推荐方法,包括以下步骤:
步骤1,根据游客选择的即将游览的景点,通过景点查询数据库获取本景点可购买的所有商品,并对各商品按照点击转化率和历史销售量进行推荐权重初始化;
步骤2,查询该游客以往的浏览、购买、收藏以及不喜欢的商品记录,使用基于内容的推荐算法更新本景点所有商品的推荐权重;
步骤3,采用基于用户的协同过滤推荐算法更新商品推荐权重,即先使用k邻近算法,寻找与该游客相似的用户,然后根据这些用户的喜好更新本景点所有商品的推荐权重;
步骤4,对本景点的所有商品按照推荐权重从高到低进行堆排序,选出推荐权重最高的一定数量的商品形成临时推荐商品列表;
步骤5,查询本景点的不同商品同时被同一用户购买的记录,采用Apriori频繁项集挖掘算法,计算出可能被一起购买的商品集合;
步骤6,将临时推荐商品列表分成数量相等的两部分,按商品推荐权重从高到低遍历临时推荐商品列表,对于每个商品,如果它的可能一起被购买的商品不在临时推荐商品列表的前半部分中,则将该可能一起被购买的商品调整到临时推荐商品列表的前半部分,最后将临时推荐商品列表的前半部分作为最终的推荐商品列表。
本发明中,游客到达某一个特定的景点时,可推荐的商品集合就随之确定,步骤1中,所有商品的集合ItemSet表示为ItemSet={item1,item2,…,itemi,…,itemn},其中itemi表示第i个商品,1≤i≤n,n表示商品集合中商品的总个数,itemi=(itemidi,classi,salesvolumei,clicknumi,weighti),其中itemidi表示第i个商品的id,classi表示第i个商品的类别,salesvolumei表示第i个商品迄今为止的销售量,clicknumi表示第i个商品的浏览次数,weighti表示第i个商品的推荐权重;然后通过如下步骤进行推荐权重初始化:
步骤1-1,通过如下公式计算第i个商品的点击转化率clickconvratei:
步骤1-2,通过如下公式对第i个商品的推荐权重weighti初始化:
weighti=salesvolumei*clickconvratei。
步骤2包括如下步骤:
步骤2-1,查询该游客的浏览、购买、收藏以及不喜欢的商品记录集合ItemHistorySet={h1,h2,…,ha,…,hm},m表示商品记录的总个数,其中ha表示第a条商品记录,1≤a≤m,每一条商品记录表示为ha=(classa,feela),其中classa表示第a个商品的类别,feela表示该游客对第a个商品的喜好程度,feela的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
步骤2-2,遍历该游客的商品记录集合中每一条商品记录ha,在本景点内所有商品中找出与该商品记录的商品类别相同的商品,作为相似商品,然后根据该商品记录的feela字段更新相似商品的推荐权重:如果feela等于1,这些相似商品的推荐权重weightg减去1,1≤g≤Numa,Numa表示与商品ha相似的商品数量;如果feela等于3,这些相似商品的推荐权重weightg加上1;如果feela等于4,这些相似商品的推荐权重weightg加上2,由此得到第一次更新后的商品推荐权重。
步骤3中,采用基于用户的协同过滤推荐算法第二次更新所有商品的权重,包括如下步骤:
步骤3-1,游客的信息userinfo表示为userinfo=(userid,age,gender,class1num,class2num,…),其中userid表示游客id,age表示年龄,gender表示性别,class1num表示第1类商品的购买数量,class2num表示第2类商品的购买数量,后面以此类推,然后,采用k邻近算法,找出与该游客距离最近的k个邻居,作为最相似的k个游客,其中k的取值由使用该商品推荐方法的用户设定,一般k取值5<k<10;
步骤3-2,查询这k个相似游客对本景点的所有商品的历史记录,第c个记录表示为item_historyc=(classc,feelc),其中classc表示第c个商品的类别,c的上限为历史记录的总数,feelc表示该游客对第c个商品的喜好程度,feelc的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
查找商品记录集合ItemHistorySet中与classc字段相等的商品,作为相似商品,然后根据每条记录的feelc字段更新相似商品的推荐权重:如果feelc等于1,将所述商品的权重weighth减去1,1≤h≤Numc,Numc表示与classc字段相等的商品的数量;如果feelc等于3,将所述商品的权重weighth加上1;如果feelc等于4,将所述商品的权重weighth加上2,由此得到第二次更新后的商品推荐权重。
步骤4中,采用堆排序获取权重最大的2q个商品形成有序的临时推荐商品列表ItemList,其中q为最终推荐商品的个数,具体包括如下步骤:
步骤4-1,初始化空的临时推荐商品列表ItemList={},根据本景点的所有商品的推荐权重构建一个最大堆,最大堆中的堆顶元素即为商品;
步骤4-2,每次取出最大堆的堆顶元素保存到临时推荐商品列表ItemList尾部,将堆最后一个元素放到堆顶,重新调整使其形成新的最大堆;
步骤4-3,重复步骤4-2,直至临时推荐商品列表ItemList内有2q个堆顶元素或堆为空。
步骤5中,如果临时推荐商品列表ItemList只有不超过q个元素,则直接将ItemList中的商品作为推荐结果,否则执行如下步骤:
步骤5-1,查询临时推荐商品列表ItemList中每个商品被用户购买的记录,形成集合RecordSet={r1,r2,…,rf,…,rr},其中1≤f≤r,r为购买记录条数,且第f个条购买记录rf=(useridf,itemidf),其中useridf表示第f个游客的id,itemidf表示第f个游客购买的商品的id;
步骤5-2,对集合RecordSet中的不同记录根据userid进行笛卡儿积操作,形成新的集合NewRecordSet={nr1,nr2,…,nrg,…,nrs},其中1≤g≤s,s为新的购买记录条数,而第g个购买记录nrg为表示为nrg=(num1,num2,…,numb,…,numt),其中numb表示临时推荐商品列表ItemList中第b个商品是否购买,t表示临时推荐商品列表ItemList中的商品数,numb取值为1或0,numb等于1表示该商品被购买,numb等于0表示该商品没有被购买;
步骤5-3,对集合NewRecordSet实施Apriori频繁项集挖掘算法获取可能被同时购买的商品,计算出的结果集合表示为RelationSet={re1,re2,…,reo,…,reu},其中1≤e≤u,u为关系的条数,集合中的每个记录reo表示为:reo=(numo,1,numo,2,…,numo,u,…,numo,t),其中numo,u是由Apriori频繁项集挖掘算法计算得到,如果商品o和商品u可能被同时购买,则对应的numo,u为1,否则为0。
步骤6包括如下步骤:
步骤6-1,遍历临时推荐商品列表ItemList,设待访问起点index=1,待访问终点endj=q,将临时推荐商品列表ItemList分成数量相等的两部分,按照商品推荐权重从高到低遍历临时推荐商品列表ItemList,如果该商品出现在关系集合RelationSet中的一条记录上,则将该记录中的其他商品调整到临时推荐商品列表ItemList的前半部分,即如果其他商品已在ItemList的前半部分则它的位置保持不变,否则将该其他商品从endj往前放入,并将endj减去放入的商品个数;
步骤6-2,重复步骤6-1直到index等于endj,最后将临时推荐商品列表ItemList的前q个商品作为最终的商品推荐列表。
与现有技术相比,本发明具有的有益效果是:
(1)能够随着景点变化推荐相关的商品候选集合。
(2)采用了Apriori算法挖掘出游客可能一起购买的商品,提高游客购买次要商品的欲望。
(3)引入了对商品“不喜欢”的评价,使得推荐可以避开一些不太可能的商品。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1是本发明方法的流程图。
具体实施方式
下面结合附图对本发明作具体说明。应该指出,所描述的实施例仅是为了说明的目的,而不是对本发明范围的限制。
本发明公开了“互联网+旅游”环境下支持O2O应用的商品推荐方法,该方法流程图如图1所示,包括以下步骤:
步骤1,根据游客选择的即将游览的景点,通过景点查询数据库获取本景点可购买的所有商品,并对各商品按照点击转化率和历史销售量进行推荐权重初始化;
步骤2,查询该游客以往的浏览、购买、收藏以及不喜欢的商品记录,使用基于内容的推荐算法更新本景点所有商品的推荐权重;
步骤3,采用基于用户的协同过滤推荐算法更新商品推荐权重,即先使用k邻近算法,寻找与该游客相似的用户,然后根据这些用户的喜好更新本景点所有商品的推荐权重;
步骤4,对本景点的所有商品按照推荐权重从高到低进行堆排序,选出推荐权重最高的一定数量的商品形成临时推荐商品列表;
步骤5,查询本景点的不同商品同时被同一用户购买的记录,采用Apriori频繁项集挖掘算法,计算出可能被一起购买的商品集合;
步骤6,将临时推荐商品列表分成数量相等的两部分,按商品推荐权重从高到低遍历临时推荐商品列表,对于每个商品,如果它的可能一起被购买的商品不在临时推荐商品列表的前半部分中,则将该可能一起被购买的商品调整到临时推荐商品列表的前半部分,最后将临时推荐商品列表的前半部分作为最终的推荐商品列表。
本发明中,游客到达某一个特定的景点时,可推荐的商品集合就随之确定,步骤1中,所有商品的集合ItemSet表示为ItemSet={item1,item2,…,itemi,…,itemn},其中itemi表示第i个商品,1≤i≤n,n表示商品集合中商品的总个数,itemi=(itemidi,classi,salesvolumei,clicknumi,weighti),其中itemidi表示第i个商品的id,classi表示第i个商品的类别,salesvolumei表示第i个商品迄今为止的销售量,clicknumi表示第i个商品的浏览次数,weighti表示第i个商品的推荐权重;然后通过如下步骤进行推荐权重初始化:
步骤1-1,通过如下公式计算第i个商品的点击转化率clickconvratei:
步骤1-2,通过如下公式对第i个商品的推荐权重weighti初始化:
weighti=salesvolumei*clickconvratei。
步骤2包括如下步骤:
步骤2-1,查询该游客的浏览、购买、收藏以及不喜欢的商品记录集合ItemHistorySet={h1,h2,…,ha,…,hm},m表示商品记录的总个数,其中ha表示第a条商品记录,1≤a≤m,每一条商品记录表示为ha=(classa,feela),其中classa表示第a个商品的类别,feela表示该游客对第a个商品的喜好程度,feela的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
步骤2-2,遍历该游客的商品记录集合中每一条商品记录ha,在本景点内所有商品中找出与该商品记录的商品类别相同的商品,作为相似商品,然后根据该商品记录的feela字段更新相似商品的推荐权重:如果feela等于1,这些相似商品的推荐权重weightg减去1,1≤g≤Numa,Numa表示与商品ha相似的商品数量;如果feela等于3,这些相似商品的推荐权重weightg加上1;如果feela等于4,这些相似商品的推荐权重weightg加上2,由此得到第一次更新后的商品推荐权重。
步骤3中,采用基于用户的协同过滤推荐算法第二次更新所有商品的权重,包括如下步骤:
步骤3-1,游客的信息userinfo表示为userinfo=(userid,age,gender,class1num,class2num,…),其中userid表示游客id,age表示年龄,gender表示性别,class1num表示第1类商品的购买数量,class2num表示第2类商品的购买数量,后面以此类推,然后,采用k邻近算法,找出与该游客距离最近的k个邻居,作为最相似的k个游客,其中k的取值由使用该商品推荐方法的用户设定,一般k取值5<k<10;
步骤3-2,查询这k个相似游客对本景点的所有商品的历史记录,第c个记录表示为item_historyc=(classc,feelc),其中classc表示第c个商品的类别,feelc表示该游客对第c个商品的喜好程度,feelc的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
查找商品记录集合ItemHistorySet中与classc字段相等的商品,作为相似商品,根据每条记录的feelc字段更新相似商品的推荐权重:如果feelc等于1,将所述商品的权重weighth减去1,1≤h≤Numc,Numc表示与classc字段相等的商品的数量;如果feelc等于3,将所述商品的权重weighth加上1;如果feelc等于4,将所述商品的权重weighth加上2,由此得到第二次更新后的商品推荐权重。
步骤4中,采用堆排序获取权重最大的2q个商品形成有序的临时推荐商品列表ItemList,其中q为最终推荐商品的个数,具体包括如下步骤:
步骤4-1,初始化空的临时推荐商品列表ItemList={},根据本景点的所有商品的推荐权重构建一个最大堆,最大堆中的堆顶元素即为商品;
步骤4-2,每次取出最大堆的堆顶元素保存到临时推荐商品列表ItemList尾部,将堆最后一个元素放到堆顶,重新调整使其形成新的最大堆;
步骤4-3,重复步骤4-2,直至临时推荐商品列表ItemList内有2q个堆顶元素或堆为空。
步骤5中,如果临时推荐商品列表ItemList只有不超过q个元素,则直接将ItemList中的商品作为推荐结果,否则执行如下步骤:
步骤5-1,查询临时推荐商品列表ItemList中每个商品被用户购买的记录,形成集合RecordSet={r1,r2,…,rf,…,rr},其中1≤f≤r,r为购买记录条数,且第f个条购买记录rf=(useridf,itemidf),其中useridf表示第f个游客的id,itemidf表示第f个游客购买的商品的id;
步骤5-2,对集合RecordSet中的不同记录根据userid进行笛卡儿积操作,形成新的集合NewRecordSet={nr1,nr2,…,nrg,…,nrs},其中1≤g≤s,s为新的购买记录条数,而第g个购买记录nrg为表示为nrg=(num1,num2,…,numb,…,numt),其中numb表示临时推荐商品列表ItemList中第b个商品是否购买,t表示临时推荐商品列表ItemList中的商品数,numb取值为1或0,numb等于1表示该商品被购买,numb等于0表示该商品没有被购买;
步骤5-3,对集合NewRecordSet实施Apriori频繁项集挖掘算法获取可能被同时购买的商品。
Apriori频繁项集挖掘算法的主要工作是在一个数据集上,找出满足一定频繁程度的项集。本发明中的频繁程度是指不同商品经常一起频繁出现在同一个购买记录的程度。本发明使用该算法来计算集合NewRecordSet中不同商品之间的频繁程度,以此得到可能同时购买的商品集合。计算出的结果集合表示为RelationSet={re1,re2,…,reo,…,reu},其中1≤e≤u,u为关系的条数,集合中的每个记录reo表示为:reo=(numo,1,numo,2,…,numo,u,…,numo,t),其中numo,u是由Apriori频繁项集挖掘算法计算出来的,如果商品o和商品u可能被同时购买,则对应的numo,u为1,否则为0。
步骤6包括如下步骤:
步骤6-1,遍历临时推荐商品列表ItemList,设待访问起点index=1,待访问终点endj=q,将临时推荐商品列表ItemList分成数量相等的两部分,按照商品推荐权重从高到低遍历临时推荐商品列表ItemList,如果该商品出现在关系集合RelationSet中的一条记录上,则将该记录中的其他商品调整到临时推荐商品列表ItemList的前半部分,即如果其他商品已在ItemList的前半部分则它的位置保持不变,否则将该其他商品从endj往前放入,并将endj减去放入的商品个数;
步骤6-2,重复步骤6-1直到index等于endj,最后将临时推荐商品列表ItemList的前q个商品作为最终的商品推荐列表。
实施例
本实施例使用了A城市某一个景点数据进行实验。游客B的id已知,设最终一共要推荐12个商品,即q=12,该景点一共有100个商品可供选择,ItemSet={item1,item2,…,item100},itemi=(itemidi,classi,salesvolumei,clicknumi,weighti)。
首先对每一个商品计算点击转化率:如果salesvolume为0,对应weight为Double类型的最小正数;否则,然后将该商品的weight初始化为weighti=salesvolumei*clickconvratei。
其次根据游客B的id查询该游客历史纪录构成集合ItemHistorySet={h1,h2,…,ha,…,hm},其中ha表示第a条记录ha=(classa,feela)。针对每一个ha,在本景点内所有商品中找出与该记录的class字段相等的商品,作为相似商品,根据该记录的feela字段更新相似商品的权重,如果feela等于1,这些相似商品的weightg减去1,如果feela等于3,这些相似商品的weightg加上1,如果feela等于4,这些相似商品的weightg加上2。
然后游客信息表示为userinfo=(userid,age,gender,class1num,class2num,…),采用k邻近算法计算与游客B最相似的50个游客,记录他们的id为SimilarUser={id1,id2,…,id50},对每一个相似游客,查询该游客有关ItemSet中商品的历史纪录,再根据每条商品记录的feel字段更新该所有商品的权重。
接着对ItemSet进行堆排序找出此时权重最大的24个商品形成商品列表ItemList,且ItemList的元素也按权重高到低排序。
再接着查询ItemList中每个商品被某个用户购买的记录,形成集合RecordSet=RecordSet={r1,r2,…,rf,…,rr},且rf=(useridf,itemidf)。对其中的不同元素的userid字段做笛卡儿积操作,形成新的集合NewRecordSet={nr1,nr2,…,nrg,…,nrs}。再对NewRecordSet实施Apriori算法获取可能被同时购买的商品,得到集合RelationSet={re1,re2,…,reo,…,reu},且reo=(numo,1,numo,2,…,numo,u,…,numo,t)。
最后令index=1,endj=12,从头遍历ItemList,每次index=index+1,如果某个商品出现在reindex中,但是存在其他商品在reindex中且未出现在前12个商品中,则将这些商品依次在ItemList中从endj往前放入,endj减去放入的商品个数,重复上述步骤直到index等于endj时停止。然后将ItemList中的前12个商品作为推荐列表进行推荐。
本发明提供了“互联网+旅游”环境下支持O2O应用的商品推荐方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (7)
1.“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于:包括以下步骤:
步骤1,根据游客选择的即将游览的景点,通过景点查询数据库获取本景点可购买的所有商品,并对各商品按照点击转化率和历史销售量进行推荐权重初始化;
步骤2,查询该游客以往的浏览、购买、收藏以及不喜欢的商品记录,使用基于内容的推荐算法更新本景点所有商品的推荐权重;
步骤3,采用基于用户的协同过滤推荐算法更新商品推荐权重,即先使用k邻近算法,寻找与该游客相似的用户,然后根据这些用户的喜好更新本景点所有商品的推荐权重;
步骤4,对本景点的所有商品按照推荐权重从高到低进行堆排序,选出推荐权重最高的一定数量的商品形成临时推荐商品列表;
步骤5,查询本景点的不同商品同时被同一用户购买的记录,采用Apriori频繁项集挖掘算法,计算出可能被一起购买的商品集合;
步骤6,将临时推荐商品列表分成数量相等的两部分,按商品推荐权重从高到低遍历临时推荐商品列表,对于每个商品,如果它的可能一起被购买的商品不在临时推荐商品列表的前半部分中,则将该可能一起被购买的商品调整到临时推荐商品列表的前半部分,最后将临时推荐商品列表的前半部分作为最终的推荐商品列表。
2.根据权利要求1所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤1中,所有商品的集合ItemSet表示为ItemSet={item1,item2,…,itemi,…,itemn},其中itemi表示第i个商品,1≤i≤n,n表示商品集合中商品的总个数,itemi=(itemidi,classi,salesvolumei,clicknumi,weighti),其中itemidi表示第i个商品的id,classi表示第i个商品的类别,salesvolumei表示第i个商品迄今为止的销售量,clicknumi表示第i个商品的浏览次数,weighti表示第i个商品的推荐权重;
通过如下步骤进行推荐权重初始化:
步骤1-1,通过如下公式计算第i个商品的点击转化率clickconvratei:
步骤1-2,通过如下公式对第i个商品的推荐权重weighti初始化:
weighti=salesvolumei*clickconvratei。
3.根据权利要求2所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤2包括如下步骤:
步骤2-1,查询该游客的浏览、购买、收藏以及不喜欢的商品记录集合ItemHistorySet={h1,h2,…,ha,…,hm},m表示商品记录的总个数,其中ha表示第a条商品记录,1≤a≤m,每一条商品记录表示为ha=(classa,feela),其中classa表示第a个商品的类别,feela表示该游客对第a个商品的喜好程度,feela的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
步骤2-2,遍历该游客的商品记录集合中每一条商品记录ha,在本景点内所有商品中找出与该商品记录的商品类别相同的商品,作为相似商品,然后根据该商品记录的feela字段更新相似商品的推荐权重:如果feela等于1,这些相似商品的推荐权重weightg减去1,1≤g≤Numa,Numa表示与商品ha相似的商品数量;如果feela等于3,这些相似商品的推荐权重weightg加上1;如果feela等于4,这些相似商品的推荐权重weightg加上2,由此得到第一次更新后的商品推荐权重。
4.根据权利要求3所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤3中包括如下步骤:
步骤3-1,游客的信息userinfo表示为:
userinfo=(userid,age,gender,class1num,class2num,…),
其中userid表示游客id,age表示年龄,gender表示性别,class1num表示第1类商品的购买数量,class2num表示第2类商品的购买数量;采用k邻近算法,找出与该游客距离最近的k个邻居,作为最相似的k个游客;
步骤3-2,查询这k个相似游客对本景点的所有商品的历史记录,第c个记录表示为item_historyc=(classc,feelc),其中classc表示第c个商品的类别,c的上限为历史记录的总数,feelc表示该游客对第c个商品的喜好程度,feelc的取值集合为{1,2,3,4},分别对应不喜欢、浏览、收藏和购买;
查找商品记录集合ItemHistorySet中与classc字段相等的商品,作为相似商品,根据每条记录的feelc字段更新相似商品的推荐权重:如果feelc等于1,将所述商品的权重weighth减去1,1≤h≤Numc,Numc表示与classc字段相等的商品的数量;如果feelc等于3,将所述商品的权重weighth加上1;如果feelc等于4,将所述商品的权重weighth加上2,由此得到第二次更新后的商品推荐权重。
5.根据权利要求4所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤4中,采用堆排序获取权重最大的2q个商品形成有序的临时推荐商品列表ItemList,其中q为最终推荐商品的个数,具体包括如下步骤:
步骤4-1,初始化空的临时推荐商品列表ItemList,根据本景点的所有商品的推荐权重构建一个最大堆,最大堆中的堆顶元素即为商品;
步骤4-2,每次取出最大堆的堆顶元素保存到临时推荐商品列表ItemList尾部,将堆最后一个元素放到堆顶,重新调整使其形成新的最大堆;
步骤4-3,重复步骤4-2,直至临时推荐商品列表ItemList内有2q个堆顶元素或堆为空。
6.根据权利要求5所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤5中,如果临时推荐商品列表ItemList只有不超过q个元素,则直接将ItemList中的商品作为推荐结果,否则执行如下步骤:
步骤5-1,查询临时推荐商品列表ItemList中每个商品被用户购买的记录,形成集合RecordSet={r1,r2,...,rf,...,rr},其中1≤f≤r,r为购买记录条数,且第f条购买记录rf=(useridf,itemidf),其中useridf表示第f个游客的id,itemidf表示第f个游客购买的商品的id;
步骤5-2,对集合RecordSet中的不同记录根据userid进行笛卡儿积操作,形成新的集合NewRecordSet={nr1,nr2,…,nrg,…,nrs},其中1≤g≤s,s为新的购买记录条数,而第g个购买记录nrg为表示为nrg=(num1,num2,…,numb,…,numt),其中numb表示临时推荐商品列表ItemList中第b个商品是否购买,t表示临时推荐商品列表ItemList中的商品数,numb取值为1或0,numb等于1表示该商品被购买,numb等于0表示该商品没有被购买;
步骤5-3,对集合NewRecordSet实施Apriori频繁项集挖掘算法获取可能被同时购买的商品,计算出的结果集合表示为RelationSet={re1,re2,…,reo,…,reu},其中1≤e≤u,u为关系的条数,集合中的每个记录reo表示为:
reo=(numo,1,numo,2,…,numo,u,…,numo,t),
其中numo,u是由Apriori频繁项集挖掘算法计算得到,如果商品o和商品u可能被同时购买,则对应的numo,u为1,否则为0。
7.根据权利要求6所述的“互联网+旅游”环境下支持O2O应用的商品推荐方法,其特征在于,步骤6包括如下步骤:
步骤6-1,遍历临时推荐商品列表ItemList,设待访问起点index=1,待访问终点endj=q,将临时推荐商品列表ItemList分成数量相等的两部分,按照商品推荐权重从高到低遍历临时推荐商品列表ItemList,如果该商品出现在关系集合RelationSet中的一条记录上,则将该记录中的其他商品调整到临时推荐商品列表ItemList的前半部分,即如果其他商品已在ItemList的前半部分则它的位置保持不变,否则将该其他商品从endj往前放入,并将endj减去放入的商品个数;
步骤6-2,重复步骤6-1直到index等于endj,最后将临时推荐商品列表ItemList的前q个商品作为最终的商品推荐列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610113832.3A CN105809475A (zh) | 2016-02-29 | 2016-02-29 | “互联网+旅游”环境下支持o2o应用的商品推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610113832.3A CN105809475A (zh) | 2016-02-29 | 2016-02-29 | “互联网+旅游”环境下支持o2o应用的商品推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105809475A true CN105809475A (zh) | 2016-07-27 |
Family
ID=56465911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610113832.3A Pending CN105809475A (zh) | 2016-02-29 | 2016-02-29 | “互联网+旅游”环境下支持o2o应用的商品推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105809475A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106210137A (zh) * | 2016-08-26 | 2016-12-07 | 成都鑫原羿天科技有限责任公司 | 游客个性化匹配的服务推送*** |
CN106408110A (zh) * | 2016-08-26 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种旅游景点锁定的方法和*** |
CN106485577A (zh) * | 2016-11-01 | 2017-03-08 | 合肥华贝信息科技有限公司 | 一种基于电子商务的旅游平台 |
CN107590675A (zh) * | 2017-07-25 | 2018-01-16 | 广州智选网络科技有限公司 | 一种基于大数据的用户购物行为识别方法、储存设备及移动终端 |
CN107832365A (zh) * | 2017-10-25 | 2018-03-23 | 携程旅游信息技术(上海)有限公司 | 多类旅行产品推送方法、装置、电子设备、存储介质 |
CN108133406A (zh) * | 2017-12-21 | 2018-06-08 | 北京小度信息科技有限公司 | 信息显示方法、装置、电子设备及计算机可读存储介质 |
CN109255586A (zh) * | 2018-08-24 | 2019-01-22 | 安徽讯飞智能科技有限公司 | 一种面向电子政务办事的在线个性化推荐方法 |
CN109493192A (zh) * | 2018-12-17 | 2019-03-19 | 广州市位讯信息科技有限责任公司 | 一种智能推荐商品的方法及*** |
CN109582876A (zh) * | 2018-12-19 | 2019-04-05 | 广州易起行信息技术有限公司 | 旅游行业用户画像构造方法、装置和计算机设备 |
CN109685614A (zh) * | 2018-12-19 | 2019-04-26 | 广州易起行信息技术有限公司 | 旅游产品推荐方法、装置、计算机设备和存储介质 |
CN109801094A (zh) * | 2018-12-07 | 2019-05-24 | 珠海中科先进技术研究院有限公司 | 一种商业分析管理推荐预测模型的方法及*** |
CN110287410A (zh) * | 2019-06-05 | 2019-09-27 | 达疆网络科技(上海)有限公司 | 一种o2o电商场景下用户的多种推荐算法的融合方法 |
CN111652738A (zh) * | 2020-04-17 | 2020-09-11 | 世纪保众(北京)网络科技有限公司 | 一种基于用户行为权重的保险产品推荐的方法 |
CN114449038A (zh) * | 2022-04-12 | 2022-05-06 | 珠海市杰理科技股份有限公司 | 沿途设施导流的信息推送方法和装置 |
CN114997956A (zh) * | 2022-06-14 | 2022-09-02 | 杭州洋驼网络科技有限公司 | 基于大数据的母婴产品智能推荐*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567899A (zh) * | 2011-12-27 | 2012-07-11 | 纽海信息技术(上海)有限公司 | 基于地理信息的商品推荐方法 |
CN102902691A (zh) * | 2011-07-28 | 2013-01-30 | 上海拉手信息技术有限公司 | 推荐方法及*** |
CN103533390A (zh) * | 2012-11-15 | 2014-01-22 | Tcl集团股份有限公司 | 基于社交网络信息进行电视节目推荐的方法及*** |
CN104252456A (zh) * | 2013-06-25 | 2014-12-31 | 阿里巴巴集团控股有限公司 | 一种权重估计方法、装置及*** |
-
2016
- 2016-02-29 CN CN201610113832.3A patent/CN105809475A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902691A (zh) * | 2011-07-28 | 2013-01-30 | 上海拉手信息技术有限公司 | 推荐方法及*** |
CN102567899A (zh) * | 2011-12-27 | 2012-07-11 | 纽海信息技术(上海)有限公司 | 基于地理信息的商品推荐方法 |
CN103533390A (zh) * | 2012-11-15 | 2014-01-22 | Tcl集团股份有限公司 | 基于社交网络信息进行电视节目推荐的方法及*** |
CN104252456A (zh) * | 2013-06-25 | 2014-12-31 | 阿里巴巴集团控股有限公司 | 一种权重估计方法、装置及*** |
Non-Patent Citations (1)
Title |
---|
王树西等: "基于购物倾向的商品推荐方案研究", 《集成技术》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408110A (zh) * | 2016-08-26 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种旅游景点锁定的方法和*** |
CN106210137A (zh) * | 2016-08-26 | 2016-12-07 | 成都鑫原羿天科技有限责任公司 | 游客个性化匹配的服务推送*** |
CN106485577A (zh) * | 2016-11-01 | 2017-03-08 | 合肥华贝信息科技有限公司 | 一种基于电子商务的旅游平台 |
CN107590675A (zh) * | 2017-07-25 | 2018-01-16 | 广州智选网络科技有限公司 | 一种基于大数据的用户购物行为识别方法、储存设备及移动终端 |
CN107832365A (zh) * | 2017-10-25 | 2018-03-23 | 携程旅游信息技术(上海)有限公司 | 多类旅行产品推送方法、装置、电子设备、存储介质 |
CN108133406A (zh) * | 2017-12-21 | 2018-06-08 | 北京小度信息科技有限公司 | 信息显示方法、装置、电子设备及计算机可读存储介质 |
CN109255586A (zh) * | 2018-08-24 | 2019-01-22 | 安徽讯飞智能科技有限公司 | 一种面向电子政务办事的在线个性化推荐方法 |
CN109255586B (zh) * | 2018-08-24 | 2022-03-29 | 安徽讯飞智能科技有限公司 | 一种面向电子政务办事的在线个性化推荐方法 |
CN109801094B (zh) * | 2018-12-07 | 2021-06-08 | 珠海中科先进技术研究院有限公司 | 一种商业分析管理推荐预测模型的方法及*** |
CN109801094A (zh) * | 2018-12-07 | 2019-05-24 | 珠海中科先进技术研究院有限公司 | 一种商业分析管理推荐预测模型的方法及*** |
CN109493192A (zh) * | 2018-12-17 | 2019-03-19 | 广州市位讯信息科技有限责任公司 | 一种智能推荐商品的方法及*** |
CN109582876A (zh) * | 2018-12-19 | 2019-04-05 | 广州易起行信息技术有限公司 | 旅游行业用户画像构造方法、装置和计算机设备 |
CN109685614A (zh) * | 2018-12-19 | 2019-04-26 | 广州易起行信息技术有限公司 | 旅游产品推荐方法、装置、计算机设备和存储介质 |
CN110287410A (zh) * | 2019-06-05 | 2019-09-27 | 达疆网络科技(上海)有限公司 | 一种o2o电商场景下用户的多种推荐算法的融合方法 |
CN111652738A (zh) * | 2020-04-17 | 2020-09-11 | 世纪保众(北京)网络科技有限公司 | 一种基于用户行为权重的保险产品推荐的方法 |
CN114449038A (zh) * | 2022-04-12 | 2022-05-06 | 珠海市杰理科技股份有限公司 | 沿途设施导流的信息推送方法和装置 |
CN114997956A (zh) * | 2022-06-14 | 2022-09-02 | 杭州洋驼网络科技有限公司 | 基于大数据的母婴产品智能推荐*** |
CN114997956B (zh) * | 2022-06-14 | 2023-01-10 | 杭州洋驼网络科技有限公司 | 基于大数据的母婴产品智能推荐*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105809475A (zh) | “互联网+旅游”环境下支持o2o应用的商品推荐方法 | |
US20180197209A1 (en) | Advertising and fulfillment system | |
US7908184B2 (en) | Method of providing customized information of commodity for on-line shopping mall users | |
US7836051B1 (en) | Predictive analysis of browse activity data of users of a database access system in which items are arranged in a hierarchy | |
Schafer et al. | Recommender systems in e-commerce | |
US6466918B1 (en) | System and method for exposing popular nodes within a browse tree | |
US6489968B1 (en) | System and method for exposing popular categories of browse tree | |
TWI670660B (zh) | 發行優惠券之資訊處理裝置、發行優惠券之資訊處理方法、及發行優惠券之資訊處理程式產品 | |
US10423999B1 (en) | Performing personalized category-based product sorting | |
US20110282821A1 (en) | Further Improvements in Recommendation Systems | |
JP6045750B1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
US20070271146A1 (en) | Method and apparatus for matching and/or coordinating shoes handbags and other consumer products | |
CN104899763A (zh) | 基于二分网络双向扩散的个性化推荐方法 | |
US20120330778A1 (en) | Product comparison and feature discovery | |
JP2013512501A (ja) | コンテクスト情報を利用するシステム、装置及び方法 | |
US20170186065A1 (en) | System and Method of Product Selection for Promotional Display | |
KR100762829B1 (ko) | 소비자의 구매 취향에 따른 상품 검색 서비스 시스템 및방법 | |
EP2755181B1 (en) | Information processing device, information processing method, information processing program, and recording medium | |
KR101873319B1 (ko) | 실시간 홍보 및 이벤트 제공시스템 | |
US20140207620A1 (en) | Systems and Methods for Taxonomy-Based Price Adjustments and Product Location | |
Chiang et al. | An analytic hierarchy process approach to assessing consumers' distribution channel preference | |
Choi et al. | Online marketplace advertising | |
JP2020095561A (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6779965B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
KR101983704B1 (ko) | 개인화 알고리즘을 이용한 사이트 추천 방법 및 개인화 알고리즘 서버 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160727 |
|
RJ01 | Rejection of invention patent application after publication |