《旅客需求推荐方法.pdf》由会员分享,可在线阅读,更多相关《旅客需求推荐方法.pdf(8页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104021483 A (43)申请公布日 2014.09.03 C N 1 0 4 0 2 1 4 8 3 A (21)申请号 201410175627.0 (22)申请日 2014.06.26 G06Q 30/02(2012.01) G06Q 50/14(2012.01) G06F 17/30(2006.01) (71)申请人陈思恩 地址 361009 福建省厦门市思明区软件园二 期望海路57号801-A (72)发明人陈思恩 冯望烟 (74)专利代理机构广州市红荔专利代理有限公 司 44214 代理人张文 (54) 发明名称 旅客需求推荐方法 (57) 摘要 本。
2、发明涉及一种旅客需求推荐方法,该方法 在历史交易数据,等级信息等常规结构化数据的 之上,通过JS嵌码的方式收集用户在网站的在线 行为等非结构化数据,采用分布式文件系统HDFS 作为统一的存储平台,通过Mahout和Storm技术 为分别用户提供基于训练模型的离线推荐和在线 推荐。本方法不仅扩大了推荐数据的利用范围,提 升了推荐精度,而且整合了实时推荐和离线推荐, 推荐性能更加稳定。 (51)Int.Cl. 权利要求书1页 说明书3页 附图3页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图3页 (10)申请公布号 CN 104021483 A CN。
3、 104021483 A 1/1页 2 1.旅客需求推荐方法,其特征在于,包括以下步骤: 步骤1,收集客户信息,历史交易数据,等级信息等常规结构化数据; 步骤2,通过JS嵌码的方式收集用户在网站的在线行为等非结构化数据; 步骤3,将收集到的数据统一存放到分布式文件系统HDFS; 步骤4,在Mahout框架上选择推荐模型,并利用收集到的数据训练推荐模型; 步骤5,利用Mahout框架采用训练好的模型基于历史数据做离线推荐,并将推荐结果 存储到HDFS; 步骤6,当用户登录网站,为用户提供离线推荐; 步骤7,浏览网站的过程中触发事件,为用户提供基于Storm的在线推荐。 2.如权利要求1所述的旅客。
4、需求推荐方法,其特征在于:步骤1中采用JS标记收集到 的非结构数据包括点击,浏览区域,停留时间,Ajax。 3.如权利要求1或2所述的旅客需求推荐方法,其特征在于:步骤3所述的HDFS文件 系统,包括基于HDFS文件系统的数据库Hbase和Hive。 4.如权利要求1所述的旅客需求推荐方法,其特征在于:步骤4中所述模型不仅包括 聚类,分类,预测,协同过滤等常用模型,还包括自行开发定制新的模型。 5.如权利要求1或权利要求4所述的旅客需求推荐方法,其特征在于:步骤4和5所 述的模型训练和推荐均采用分布式的实现。 6.如权利要求1所述的旅客需求推荐方法,其特征在于:步骤7中所述的事件采用定 制的方。
5、式,定制方法视具体应用环境而定。 权 利 要 求 书CN 104021483 A 1/3页 3 旅客需求推荐方法 技术领域 0001 本发明涉及民航旅游业的个性化推荐系统构建方法,尤其涉及一种旅客需求推荐 方法。 背景技术 0002 在过去的几十年里,随着网络基础设施的普及与改进以及移动互联网相关服务及 应用的推广,信息技术的发展让我们进入一个信息爆炸的时代。现如今,无论您身处哪个 行业,信息爆炸都是一个不可回避的话题。从航空航天到电子商务,从银行业到医疗行业, 虽然行业不同,但都面临着同样的问题,那就是呈爆炸式增长的数据量。民航旅游业也不例 外。业界将这种爆炸式增长的数据称为大数据,大数据虽。
6、然价值密度低,但是总体价值大, 因此大数据既是机遇又是挑战。大数据带来的机遇之一,就是通过大数据分析用户行为习 惯,据此为用户提供个性代的推荐。 0003 但目前,航空旅游业的个性化推荐存在以下问题: 1.数据收集问题。用户在航空旅游的网站上留下了大量的数据,这些数据不仅包括交 易等结构化的数据,还包括用户行为等非结构化数据。传统推荐因为受技术限制,只关注结 构化数据的应用,而忽略了非结构化数据的应用。 0004 2.推荐算法可扩展性问题。随着用户和物品数量的大量增加,算法的推荐性能和 速度都大幅降低,如此一来,时间和空间都超出可控范围,导致其执行效率变得非常低下, 严重影响推荐效果和用户满意。
7、度。 0005 3.互联网环境下,社交网络发达,信息获取途径多,用户认知和接受能力的周期变 短,使得用户偏好波动变大。比方说某用户在两周以前特别喜欢篮球,他的旅游计划是本周 去美国看一场NBA比赛,但在上周他通过社交网络加入到一个足球的社交群体,通过与群 体的交流认知,他觉得足球更有魅力,由此他就本周旅行计划改为去曼彻斯特老特拉福球 场看一场足球比赛。 发明内容 0006 为了解决上述问题,本发明提供一种旅客需求推荐方法,本发明的技术方案如下。 0007 旅客需求推荐方法,包括以下步骤: 步骤1,收集客户信息,历史交易数据,等级信息等常规结构化数据; 步骤2,通过JS嵌码的方式收集用户在网站的。
8、在线行为等非结构化数据; 步骤3,将收集到的数据统一存放到分布式文件系统HDFS; 步骤4,在Mahout框架上选择推荐模型,并利用收集到的数据训练推荐模型; 步骤5,利用Mahout框架采用训练好的模型基于历史数据做离线推荐,并将推荐结果 存储到HDFS; 步骤6,当用户登录网站,为用户提供离线推荐; 步骤7,浏览网站的过程中触发事件,为用户提供基于Storm的在线推荐。 说 明 书CN 104021483 A 2/3页 4 0008 其中,推荐模型的训练过程如下: 步骤1,根据数据量的规模以及推荐性能要求,选择合适的推荐模型; 步骤2,对数据进行数据预处理; 步骤3,训练模型,模型训练好之。
9、后,将模型关键参数放入到CSV文件,并存储到HDFS模 型文件夹model之中。 0009 其中,在线推荐和离线推荐使用同一个推荐模型,模型基于离线的历史数据训练, 其中历史数据包括结构化的交易数据,也包括非结构化的在线行为数据。 0010 其中,当数据增长量超过一定阀值时,更新离线推荐和训练模型,阀值可自行设 定,离线推荐的阀值初定为5%,训练模型的更新阀值初定为15%。 0011 本发明的有益效果是, 1. 本发明扩大了数据的应用范围,不仅利用了用户交易等结构化数据,还利用了用户 行为等非结构化数据,通过扩大数据应用范围,提升推荐精度。 0012 2.本发明采用在线推荐和离线推荐两种推荐方。
10、式,不仅使得推荐的稳定性更高, 而且可再次提升推荐精度。 0013 3.在线推荐和离线推荐均采用分布式的计算框架实现,通过分布式框架提升计算 能力,可根据数据规模在计算能力上做水平扩展,解决算法的可扩展性问题。 0014 4.JS页面标记获取用户行为数据灵活性和可控性都较好,不仅可定制收集各用种 户行为,而且获取信息较为完整。 0015 以下将将结合附图以实施例的方式对本发明做进一步阐述。 附图说明 0016 图 1是本发明实施例的技术架构图; 图 2是本发明实施例JS标记获取用户行为信息; 图 3本发明实施例的用户行为示意图; 图 4本发明实施例的推荐效果示意图。 具体实施方式 0017 为。
11、了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。 0018 如图1所示,本发明实施推荐方法包括离线推荐和在线推荐两部分,其中离线推 荐的执行过程如下: 1.收集用户历史数据,数据包括用户个人信息,历史交易数据,旅游产品数据等; 2.应用Flume框架,将历史数据导入到HDFS文件夹;数据放入HDFS之后以数据类 别存放,然后在每个类别下面以时间戳为文件夹名构造子文件夹,以此标识文件的增量 式存放,文件名用类别加时间戳的方式标识;如有13年10月1号的针对十一假期推出 的一个革命老区团体游活动的数据文件,就会被放到文件夹/travel/20131。
12、0下,命名为 travel_20131001.csv; 3.应用Mahout框架,利用已获得的历史数据,训练推荐模型;推荐模型训练的结果输 出是具体的算法参数,结果以CSV的形式存储在HDFS模型文件夹model之中; 说 明 书CN 104021483 A 3/3页 5 4.应用Mahout框架利用已训练好的模型基于历史数据做个性化的推荐,推荐结果以 CSV的形式存放到HDFS推荐文件夹recommendation离线部分offline之中; 5.开发Service API调用推荐结果;Service API的参数包括推荐类型,用户ID; 6.前台调用Service API,获取推荐结果并展。
13、示;推荐结果包括推荐类型,推荐内容 等; 对应离线推荐,在线推荐的执行流程如下: 1.用户浏览网站,触发推荐事件; 2.应用Kafka框架根据触发事件,推送数据到storm集群;推送数据包括触发事件的 行为数据以及推荐所需的部分历史数据;行为数据是指事件认定的关键词,如活动名称,旅 游线路,旅游景点,酒店名称等;部分历史数据是指与关键词和用户相关的历史数据; 3.应用storm集群启动实时推荐引擎,应用离线推荐过程中训练好的模型为用户进行 实时推荐,并将推荐结果以CSV的形式存放到HDFS推荐文件夹recommendation在线部分 online之中; 4.前台调用Service API,获。
14、取推荐结果并展示;在线推荐的Service API同离线推荐 的Service API相同,不同之处在于前台调用时传递的推荐类型参数。 0019 在推荐实施过程中,利用JS嵌码收集用户在线行为数据和推荐实现是关键步骤。 如图2所示,JS嵌码收集用户在线行为数据包括以下步骤: 1.根据定义的事件,嵌入JS代码到网页; 2.用户访问网页时,将同时并发执行嵌套在页面中的JS标记代码; 3.JS代码通过事件或时间触发,将需要获取的用户行为信息以avro的方式发送到特 定端口; 4.Flume 监听端口,当监听到端口有数据输入时,将用户行为数据sink到HDFS中。 0020 在线推荐由事件触发,事件由系统定义。如图3所示,当用户从同一出发地连 续搜索多个旅游城市目的地达到一定次数时,可将此行为定义为旅游意向事件travel_ intention,据此事件可以对其做旅游线路等推荐。 0021 系统的推荐结果如图4所示,推荐内容根据具体的推荐主题而定。 说 明 书CN 104021483 A 1/3页 6 图1 图2 说 明 书 附 图CN 104021483 A 2/3页 7 图3 说 明 书 附 图CN 104021483 A 3/3页 8 图4 说 明 书 附 图CN 104021483 A 。