一种基于需求分类和主题分析的个性化旅行包推荐方法

文档序号:10594083阅读:277来源:国知局
一种基于需求分类和主题分析的个性化旅行包推荐方法
【专利摘要】一种基于需求分类和主题分析的个性化旅行包推荐方法,所述方法分析用户所输入的自然语言形式的需求,应用分词、需求分类提取等自然语言处理方法对用户需求进行处理和分类,得出用户的硬性需求、软性需求和负需求。进而利用LDA文档主题生成模型,通过主题相似度将旅行服务个体有效聚类到不同的服务领域中,进而与用户需求进行相似性匹配,以得出最为符合用户期望的服务列表。最后利用旅行包优化推荐算法进行旅行包的设计推荐:首先依据用户时间要求和服务优先级信息,得出旅行包景点集合;继而结合位置信息、偏好信息等确定旅行包酒店服务;而后根据路程函数L计算每天最优行程,并依据旅行包推荐指数排序旅行包;最后根据景点位置及用户偏好,选定旅行包餐饮服务。综合以上处理,即实现了为用户设计推荐最符合需求的个性化旅行包的目的。
【专利说明】
-种基于需求分类和主题分析的个性化旅行包推荐方法
技术领域
[0001] 本发明设及一种基于需求分类和主题分析的个性化旅行包推荐方法。该方法从用 户的输入中提取需求,并对需求内容进行分类;结合主题分析,生成备选的服务集合;在此 基础上,利用旅行包优化推荐方法为用户进行旅行包设计和推荐。该方法属于计算机系统 建模W及数据分析领域。
【背景技术】
[0002] 近年来,随着互联网技术的快速发展和人民生活水平的不断提高,在线旅游行业 快速发展,也随着面向服务计算(Service Oriented Computing,简称S0C)的兴起,人们习 惯于W服务的概念来看待各单个旅游产品(如景点、酒店等),并且W服务组合、服务推荐的 视角来看待旅行包推荐问题。当前,人们可W方便地在网上浏览、查询感兴趣的旅游服务产 品或旅行社发布的成套旅行方案。然而,随着互联网信息过载现象的不断加剧和人们需求 的日趋个性化、细节化,传统的在线旅游服务显现出如下弊端:
[0003] 1)信息过载严重。用户虽然可W在传统在线旅游平台上进行捜索、查找感兴趣的 旅游服务,但由于互联网信息量过大,而又充斥大量无用信息,使得用户查找效率下降,很 难快速找到符合自己需求的服务;
[0004] 2)缺乏个性化定制服务。除单一的旅游服务产品外,大量在线旅游平台还提供成 套的旅行解决方案供用户选择。但是运些解决方案都是固定不变的(或是旅行社提供的固 定产品,或是"驴友"发布的固定攻略),而用户的需求往往是多变的,很难找到完全符合要 求的成型方案,运就要求在线旅游平台能够根据用户需求,自动、自主地生成新的个性化解 决方案,也即旅行包,推荐给用户;
[0005] 3)不能处理用户自然语言需求。当前各在线旅游平台多W固定选项的模式要求用 户选择旅行目的地、游览天数、旅行预算等信息,而平台提供的固定选项一般不能涵盖用户 的所有可能需求。对于用户来说,最方便、也是最灵活的表达需求和喜好的方式就是W纯文 本自然语言的形式输入一段需求,而目前各在线旅游平台均不能采用有效技术来处理此类 需求。
[0006] 为了解决旅行包推荐过程中面临的W上技术问题,本发明提出了一种基于需求分 类和主题分析的个性化旅行包推荐方法:该方法能有效分析、处理用户的自然语言需求,对 用户需求进行提取和分类,结合主题分析技术,生成备选的旅行服务集合,最终利用旅行包 优化推荐方法,为用户进行旅行包的个性化设计和推荐。
[0007] 在本发明中,旅行服务是指单个的旅行产品,例如单个的景点、酒店、餐馆等即可 被视为单个的旅行服务;旅行包(trave 1 package/tour package)的概念是区别于单个旅 游服务产品的,它是一种成套的旅游产品,它将多个单独的旅游服务产品打包,W-个整体 进行推荐,包含了旅行中的餐饮、住宿、交通、景点等四大方面中的多个元素,为用户提供一 整套的旅行解决方案。

【发明内容】

[000引本发明首次提出一种基于需求分类和主题分析的个性化旅行包推荐方法。本发明 的方法包含=个过程:1)基于关键词字典的用户需求分类过程;2)基于主题分析的备选服 务集合捜索过程;3)基于路程最优化的旅行包推荐过程:
[0009] 1)基于关键词字典的用户需求分类过程包含W下两个阶段:
[0010] (1)对用户输入的自然语言形式的需求进行分词等预处理工作;
[0011] (2)根据关键词字典对提取的关键词进行需求区分,分别得到用户的硬性需求、软 性需求和负需求。
[0012] 2)基于主题分析的备选服务集合捜索过程包含W下=个阶段:
[0013] (1)根据数据库中各服务的服务描述文档,利用LDA(Latent Dirichlet Allocation)文档主题生成模型提取各服务到主题的概率分布,并存储在"服务一一主题字 典"库内;
[0014] (2)根据得到的用户硬性需求和软性需求,基于LDA主题分析,并借助"服务一一主 题字典"库匹配得出与运些需求相似的备选服务列表;
[001引(3化备选服务列表中,补充硬性需求中的服务,再剔除负需求中的服务,将硬性 需求服务优先级标记为高,其他服务优先级标记为低,最终得到旅行包推荐的备选服务集 合,W用于旅行包的生成和推荐。
[0016] 3)基于路程最优化的旅行包推荐过程包含W下四个阶段:
[0017] (1)生成备选的景点组合。根据用户的天数要求W及上面得到的备选服务集合,初 步生成旅行包中的景点组合,得到备选的一系列旅行包。在旅行包的生成过程中,用户的硬 性需求会得到优先的满足;
[0018] (2)选定住宿酒店。结合景点的地理位置信息及用户的偏好,选定旅行包中的住宿 酒店;
[0019] (3)根据路程函数制定具体行程并排序旅行包。根据路程函数L计算每天最优行 程,得到每个旅行包的预期路程,并结合优先级信息,计算旅行包推荐指数,W此作为依据 排序旅行包。预期路程越短、优先级越高的旅行包会得到优先的推荐;
[0020] (4)选定旅行包沿途餐饮。根据景点位置及用户的偏好,为用户选定旅行途中的餐 饮服务。
[0021] 本发明采用基于需求分类和主题分析的个性化旅行包推荐方法,具有W下两方面 的优点:
[0022] (1)通过分词和关键词字典的使用,对用户的需求种类进行区分,细化了用户的自 然语言形式需求,W得到更精准的推荐结果;
[0023] (2)本发明能够使用主题分析,生成备选的服务组合,并基于路程最优化的原则自 动为用户生成和推荐旅行包。
【附图说明】
[0024] 本申请通过附图对推荐方法进行了具体描述,运些描述仅用于说明本发明的内 容,并非用于限制本发明。
[0025] 图I是本发明中基于需求分类和主题分析的个性化旅行包推荐方法总体框图。
[0026] 图2是本发明中旅行包优化推荐过程详细步骤框图。
【具体实施方式】
[0027] 描述本发明所设及的符号意义W及具体步骤。
[0028] 图1图示了基于需求分类和主题分析的个性化旅行包推荐方法总体框图。如图1所 示,用户输入自然语言形式需求,包含旅行目的地,希望旅行天数及可能的个性化要求等, 本发明首先对用户输入进行分词处理和需求分类,分别分析出硬性需求、软性需求和负需 求,然后结合主题分析技术得到备选的服务集合,最后通过旅行包优化推荐方法输出排序 后的推荐旅行包。本发明的方法包含=个过程:1)基于关键词字典的用户需求分类过程;2) 基于主题分析的备选服务集合捜索过程;3)基于路程最优化的旅行包推荐过程。
[0029] 图2图示了旅行包优化推荐过程的详细步骤框图。如图2所示,方法输入信息为旅 行天数要求N、备选服务集合Sal^ (包含:备选景点服务集合S、备选餐饮服务集合R、备选酒店 服务集合H),首先根据N筛选S的子集,生成用户在N天内游览的全部景点集合Sf,再根据H的 优先级及景点距离的"重屯、"为每一个Sf确定住宿酒店,而后利用路程函数L求解优化问题, 得到每日的最优行程安排,进而根据推荐指数I排序旅行包,最后根据R及每日行程安排综 合优先级和距离信息确定沿途餐饮,最终输出旅行包的优化推荐结果。具体而言,过程包含 W下四个阶段:生成备选的景点组合。根据用户的天数要求W及上面得到的备选服务集合, 初步生成旅行包中的景点组合,得到备选的一系列旅行包。在旅行包的生成过程中,用户的 硬性需求会得到优先的满足;选定住宿酒店。结合景点的地理位置信息及用户的偏好,选定 旅行包中的住宿酒店;根据路程函数制定具体行程并排序旅行包。根据路程函数L计算每天 最优行程,得到每个旅行包的预期路程,并结合优先级信息,计算旅行包推荐指数,W此作 为依据排序旅行包。预期路程越短、优先级越高的旅行包会得到优先的推荐;选定旅行包沿 途餐饮。根据景点位置及用户的偏好,为用户选定旅行途中的餐饮服务。
[0030] 具体实施步骤分为=大部分:
[0031] 第一部分(步骤1~步骤4),基于关键词字典的用户需求分类;第二部分(步骤5~ 步骤8),基于主题分析的备选服务集合捜索;第=部分(步骤9~步骤13),基于路程最优化 的旅行包推荐。
[0032] 基于关键词字典的用户需求分类分为两个阶段
[0033] 阶段1对应步骤1
[0034] 步骤1:对用户自然语言形式输入的需求进行分词处理,进行中文分词(例如,调用 WVtool分词工具),利用停用词词典去除无关词语(例如"的、我们、呀"等),将用户输入需求 表示为一串顺序的词汇向量,记作Q={qi,q2, . . .,qp}。例如,当用户输入"我想去北京玩; 天,吃全聚德,喜欢住在市中屯、,不想去天坛"时,分词结果为"想去、北京、玩、=天、吃、全聚 德、喜欢、住在、市中屯、、不想去、天坛"。
[0035] 阶段2对应步骤2、步骤3、步骤4
[0036] 步骤2:将步骤1中的分词结果Q与负需求关键词字典进行匹配,负需求关键词字典 中存储了常见的负需求关键词,如"不想、不去、不喜欢"等。当发生匹配后,即将负需求关键 词其后紧跟的名词列入负需求列表,记作NQ={nqi,nq2, . . .,nqnp},表示用户不想得到此服 务。例如步骤I中的例子,"不想去"即为负需求关键词,则其后紧跟的名词"天坛"即被列入 负需求列表,在后续的推荐过程中,我们将不会推荐"天坛"运一景点服务。步骤2结束后,在 Q中剔除负需求关键词和被列入负需求列表的词汇,更新得到Q'。
[0037] 步骤3:将步骤2中得到的Q'与服务字典进行匹配,服务字典中存储了数据库中各 服务的标准名称及各常用名,如"颐和园、全聚德、四季"等。当发生匹配后,即将发生匹配的 名词对应的服务标准名称列入硬性需求列表,记作MQ= {mqi,mq2, . . .,mqmp},表示用户的运 些需求需要得到优先满足。例如步骤1中的例子,"全聚德"即被列入硬性需求列表,在后续 的推荐过程中,我们将优先推荐"全聚德"运一餐饮服务。此外,我们还将针对性识别用户的 目的地信息(D)和旅行时间信息(N),作为特殊的硬性需求进行处理,也即将MQ更新为MQ = {D,N,mqi,mq2, . . .,mqmp},例如步骤1中例子的"北京"、天"。步骤3结束后,在Q'中剔除硬 性需求关键词,更新得到护。
[0038] 步骤4:将步骤3中得到的护与软性需求字典进行匹配,软性需求字典中存储了各 常用偏好性需求关键词,如"辣、西餐、安静、历史底蕴"等。当发生匹配后,即将发生匹配的 词汇列入软性需求列表,记作SQ={sqi,sq2, . . .,sqsp},表示用户希望得到此类服务。例如 步骤1中的例子,"市中屯、"即被列入软性需求列表,在后续的推荐过程中,我们将推荐满足 "市中屯、"条件的酒店服务。
[0039] 至此,我们成功将用户自然语言需求进行了处理和分类,分别得到用户硬性需求 列表MQ= {D,N,mqi,mq2, . . .,mqmp},软性需求列表SQ= {sqi,sq2, . . . ,SQsp巧Pl负需求列表NQ ={叫1,叫2,...,叫叩}。
[0040] 基于主题分析的备选服务集合捜索分为=个阶段
[0041] 阶段1对应步骤5
[0042] 步骤5:基于服务字典及服务数据库中各服务的文本描述文档,利用LDA主题概率 模型获得每个服务的主题分布,用矩阵ST来形式化描述。ST为化X Ks维矩阵,化表示服务个 体的总数,Ks表示服务个体设及到的主题总数。ST矩阵第i行第j列的元素 STQ J)表示Tj在 S'l中的分布权重,其中L表示服务个体中的主题j,S'i表示服务个体i。矩阵的每一行为一 个服务个体的主题分布。该ST矩阵即存储在"服务一一主题字典"库内。
[0043] 阶段2对应步骤6、步骤7
[0044] 步骤6:首先,根据步骤3中得到的用户硬性需求列表MQ={D,N,mqi,mq2, . . .,mqmp} 中的用户目的地信息(D),在服务数据库中筛选可用的服务总列表S"。(例如D表示北京时, S"表示北京市内的全部景点、酒店、餐饮及其他服务)然后,将步骤3中得到的用户硬性需求 列表MQ= {D,N,mqi,mq2, . . .,mqmp}和步骤4中得到的软性需求列表SQ= {sqi,sq2, . . .,sqsp} 进行合并,得到用户需求总列表Qms= {mqi,mq2, . . .,mqmp,sqi,sq2,. . .,sqsp}。
[0045] 步骤7:利用步骤5中LDA主题分析得出的各服务到主题的分布概率p(T I S')(即存 储在"服务一一主题字典"库中的ST矩阵中的各ST(iJ)项)及各主题到词汇的分布概率P (Qms I T ),计算各服务与用户需求总列表Qms的相似度,具体计算如下:
1进而根据相似度P (Qms Is" i)的大小由高到低对S" 中的服务进行排序,得到备选服务列表Sal,其中各服务的优先级即用其归一化的相似度表 示。相似度越大的服务将会在推荐中被优先考虑。
[0046] 阶段3对应步骤8
[0047] 步骤8:将步骤3中得到的用户硬性需求列表MQ={D,N,mqi,mq2, . . .,mqmp}中的服 务{mqi,mq2, . . .,mqmp}添加至备选服务列表Sai中,并将{mqi,mq2, . . .,mqmp}中的全部服务优 先级标记为1。再将步骤2中得到的负需求列表NQ={nqi,nq2, . . .,nqnp}中的服务从备选服 务列表Sal中剔除,最终得到更新后的备选服务列表Sal'。每个服务都包含一个优先级的属 性,取值为0~1,越大表示该服务在组合时的优先级越高。由硬性需求得到的服务优先级为 1,其余为步骤7中计算的相似度的值。对备选服务列表Sal'中的服务分为W下=类:
[0048] 1)备选景点服务集合S。每个景点服务包含两个属性,优先级Sv和所需游玩时间St。 优先级Sv的取值范围为0~1,所需游玩时间St的取值范围也是0~InSt表示所需游玩时间占 全天可利用游玩时间的比例,例如St取值为0.5表示该景点需要半天时间进行游览;
[0049] 2)备选餐饮服务集合R。每个餐饮服务包含属性优先级Rv,其取值范围为0~1;
[0050] 3)备选酒店服务集合H。每个酒店服务包含属性优先级Hv,其取值范围为0~1。
[0051 ]基于路程最优化的旅行包推荐分为四个阶段
[0化2] 阶段1对应步骤9
[0053]步骤9:根据用户的旅行天数要求NW及步骤8得到的备选景点服务集合S求解优化 问题,生成用户在N天内游览的全部景点集合Sf。首先,备选景点服务集合S中优先级Sv=I的 景点先全部纳入隹合Sf內,此后求解如下优化问题:
[0化4;
[0化5;
[0056]其中a为正实数,优化目标为使推荐的景点服务优先级加和最大化,约束表示推荐 景点的总游玩时间等于用户的旅行天数要求N,此处引入误差参数U可取任意实数),允许 总游玩天数存在一定误差,但通过对系数a的调整,可保证误差在可接受的范围之内。求出 满足上述问题的Sf的所有可行解后,即得到备选旅行包集合SFall= {Sf1,Sf2, ...,SFn}。
[0化7] 阶段2对应步骤10
[005引步骤10:分别对步骤9中求得的备选旅行包集合SFall= {Sf1,Sf2, ...,SFn}中的每一 个Sfi计算筛选相应的酒店服务:
[0059] 若备选酒店服务集合H中有且仅有一个优先级Hv=I的酒店,则所有Sfi均安排推荐 该酒店即可;
[0060] 若备选酒店服务集合H中有多个优先级Hv=I的酒店,不妨记运些酒店集合为H', 此时求解如下优化问题得到每一个Sfi对应推荐的酒店出:
[0061]
[0062] s.t.HijGH'
[0063] 其中知%表示景点巧頓店Hu的交通距离;
[0064] 若备选酒店服务集合H中没有优先级Hv=I的酒店,则通过求解如下优化问题得到 每一个SFi对应推荐的酒店出:
[00 化]
[0066] s.t.HijGH
[0067] 其中a为正实数。
[006引综上,我们得到了备选旅行包集合SFall ={Sf1,Sf2, ...,SFn}中的每一个Sfi所对应 推荐的酒店服务出。
[0069] 阶段3对应步骤11、步骤12
[0070] 步骤11:对备选旅行包集合SFaii= Kfi ,Sf2.....SfJ中的每一个Sfi,计算相应的最 优路径规划,定义路程函数
表示旅行包Sfi第j天行程安排所需的最短全部交通路程,其中nj表示第j天游览的景点数 目。进而对每一个Sfi求解W下优化问题,W期得到最优的旅行包路径规划:
[0071:
[0072;
[0073;
[0074;
[0075] 其中a为正实数,[Sfi]为旅行包Sfi中景点数量,优化目标为使每天走过的路程加 总得到的旅行总路程最小化,第一项约束表示所有景点均需被安排行程,第二项约束表示 每天的景点游玩时间加总应等于"1",也即一天,此处引入误差参数可取任意实数),允 许每天游玩时间存在一定误差,但通过对系数a的调整,可保证误差在可接受的范围之内。 通过遍历所有可能的每日游览景点的不同组合模式,找到上述问题的最优解,也即总游览 交通路程最短的路径设计方案,并且我们尽量将优先级高的服务安排在前几天的行程中。 至此,我们为每一个Sfi找到了其对应的最优行程安排。
[0076] 步骤12:计算每个旅行包的推荐指数/:
其中b、c为正实 数,进而根据推荐指数I由高到低排序各旅行包,得到旅行包推荐方案SFaii'二{Sfi', Sf2 ',. . .,SFn' },最终为用户进行旅行包推荐时,即按照此排序顺序推荐。
[0077] 阶段4对应步骤13
[0078] 步骤13:根据步骤8得到的备选餐饮服务集合R为用户设计沿途餐饮,其中每日需 安排早、午、晚=餐。首先,备选餐饮服务集合R中优先级Rv=I的餐饮服务优先予W保证,在 行程规划中捜索与Rv=I的餐饮服务距离较近的景点,则该景点附近的就餐时间即安排此 餐饮服务。在满足Rv=I的餐饮服务被保证后,在尚未安排餐饮服务的就餐时间附近的景点 进行捜索,综合餐饮服务的Rv评分(此项权重可取较大,W更满足用户的喜好)和距离景点 的距离,为用户推荐餐饮服务。
[0079] 最终,我们得到了为用户推荐的旅行包集合Sf311' = {Sfi',Sf2',. . .,SFn'},其中每 个旅行包包括住宿酒店、每日游览景点及顺序和沿途餐饮等信息,并按照步骤12计算得出 的旅行包排序顺序为用户进行推荐。
[0080] 通过本发明,一种基于需求分类和主题分析的个性化旅行包推荐方法:能够利用 分词、需求分类提取等手段对用户自然语言输入的需求进行处理和分类,提取用户的硬性、 软性和负需求;进而利用LDA文档主题生成模型,通过主题相似度将旅行服务个体有效聚类 到不同的服务领域中,进而进行相似性匹配,W得出最为符合用户期望的服务列表;最终利 用旅行包优化推荐方法进行旅行包的行程设计、餐饮及酒店服务设计等,为用户推荐完整 的最符合需求的旅行包。
【主权项】
1. 一种基于需求分类和主题分析的个性化旅行包推荐方法,其特征在于,所述方法包 含三个过程:1)基于关键词字典的用户需求分类过程,2)基于主题分析的备选服务集合搜 索过程,3)基于路程最优化的旅行包推荐过程;其中 1) 基于关键词字典的用户需求分类过程包括以下两个阶段: (1) 对用户输入的自然语言形式的需求进行分词等预处理工作; (2) 根据关键词字典对提取的关键词进行需求区分,分别得到用户的硬性需求、软性需 求和负需求; 2) 基于主题分析的备选服务集合搜索过程包括以下三个阶段: (1) 根据数据库中各服务的服务描述文档,利用LDA(Latent Dirichlet Allocation) 文档主题生成模型提取各服务到主题的概率分布,并存储在"服务一一主题字典"库内; (2) 根据得到的用户硬性需求和软性需求,基于LDA主题分析,并借助"服务一一主题字 典"库匹配得出与这些需求相似的备选服务列表; (3) 在备选服务列表中,补充硬性需求中的服务,再剔除负需求中的服务,将硬性需求 服务优先级标记为高,其他服务优先级标记为低,最终得到旅行包推荐的备选服务集合,以 用于旅行包的生成和推荐; 3) 基于路程最优化的旅行包推荐过程包括以下四个阶段: (1) 根据用户的天数要求以及上面得到的备选服务集合,生成备选的景点组合,得到备 选的一系列旅行包,在旅行包的生成过程中,用户的硬性需求会得到优先的满足; (2) 结合景点的地理位置信息及用户的偏好,选定旅行包中的住宿酒店; (3) 根据路程确定每天最优行程,得到每个旅行包的预期路程,并结合优先级信息,计 算旅行包推荐指数,排序旅行包; (4) 根据景点位置及用户的偏好,为用户选定旅行途中的餐饮服务。2. 根据权利要求1所述的个性化旅行包推荐方法,其特征在于,所述(1)对用户输入的 自然语言形式的需求进行分词等预处理工作包括: 步骤1:对用户自然语言形式输入的需求进行分词处理,进行中文分词,利用停用词词 典去除无关词语,将用户输入需求表示为一串顺序的词汇向量,记作9=4#,...,^}。3. 根据权利要求1至2中任一项所述的个性化旅行包推荐方法,其特征在于,所述(2)根 据关键词字典对提取的关键词进行需求区分,分别得到用户的硬性需求、软性需求和负需 求包括: 步骤2:将步骤1中的分词结果Q与负需求关键词字典进行匹配,负需求关键词字典中存 储了常见的负需求关键词,即将负需求关键词其后紧跟的名词列入负需求列表,记作NQ = {nqi,nq2, . . .,nqnp},表示用户不想得到此服务,在Q中剔除负需求关键词和被列入负需求 列表的词汇,更新得到Q'; 步骤3:将步骤2中得到的Q'与服务字典进行匹配,服务字典中存储了数据库中各服务 的标准名称及各常用名,当发生匹配后,即将发生匹配的名词对应的服务标准名称列入硬 性需求列表,记作MQ={mqi,mq2, . . .,mqmP},表示用户的这些需求需要得到优先满足,将针 对性识别用户的目的地信息(D)和旅行时间信息(N),作为特殊的硬性需求进行处理,也即 将19更新为19={0』,11^1,11^2,...,11^ 1111)},在0'中剔除硬性需求关键词,更新得到0"; 步骤4:将步骤3中得到的Q"与软性需求字典进行匹配,软性需求字典中存储了各常用 偏好性需求关键词,当发生匹配后,即将发生匹配的词汇列入软性需求列表,记作SQ = {sqi,sq2, . . .,sqsp},表示用户希望得到此类服务。4. 根据权利要求1至3中任一项所述的个性化旅行包推荐方法,其特征在于,(1)根据数 据库中各服务的服务描述文档,利用LDA(Latent Dirichlet Allocation)文档主题生成模 型提取各服务到主题的概率分布,并存储在"服务一一主题字典"库内包括: 步骤5:基于服务字典及服务数据库中各服务的文本描述文档,利用LDA主题概率模型 获得每个服务的主题分布,用矩阵ST来形式化描述,该ST矩阵即存储在"服务一一主题字 典"库内。5. 根据权利要求1至4中任一项所述的个性化旅行包推荐方法,其特征在于,(2)根据得 至_用户硬性需求和软性需求,基于LDA主题分析,并借助"服务一一主题字典"库匹配得出 与这些需求相似的备选服务列表包括: 步骤6:首先,根据步骤3中得到的用户硬性需求列表MQ={D,N,mqi,mq2, . . .,mqmP}中的 用户目的地信息(D),在服务数据库中筛选可用的服务总列表S" ;然后,将步骤3中得到的用 户硬性需求列表MQ= {D,N,mqi,mq2, . . .,mqmP}和步骤4中得到的软性需求列表SQ= {sqi, sq2, · · ·,sqsp}进行合并,得到用户需求总列表Qms= {mqi,mq2, · · ·,mqmP,sqi,sq2, · · ·,sqsp}; 步骤7:利用步骤5中LDA主题分析得出的各服务到主题的分布概率p(T I S')及各主题到 词汇的分布概率P(Qms |T),计算各服务与用户需求总列表Qms的相似度;进而根据相似度p (QmsIS、)的大小由高到低对S"中的服务进行排序,得到备选服务列表S al,其中各服务的优 先级即用其归一化的相似度表示;相似度越大的服务将会在推荐中被优先考虑。6. 根据权利要求1至5中任一项所述的个性化旅行包推荐方法,其特征在于,(3)在备选 服务列表中,补充硬性需求中的服务,再剔除负需求中的服务,将硬性需求服务优先级标记 为高,其他服务优先级标记为低,最终得到旅行包推荐的备选服务集合,以用于旅行包的生 成和推荐包括: 步骤8:将步骤3中得到的用户硬性需求列表MQ={D,N,mqi,mq2, . . .,mqmP}中的服务 {mqi,mq2,…,mqmP}添加至备选服务列表Sai中,并将{mqi,mq2,…,mqm P}中的全部服务优先 级标记为1;再将步骤2中得到的负需求列表NQ= {nqi,nq2, . . .,nqnp}中的服务从备选服务 列表Sal中剔除,最终得到更新后的备选服务列表S al';每个服务都包含一个优先级的属性, 取值为0~1,越大表示该服务在组合时的优先级越高;由硬性需求得到的服务优先级为1, 其余为步骤7中计算的相似度的值。7. 根据权利要求1至6中任一项所述的个性化旅行包推荐方法,其特征在于,(1)根据用 户的天数要求以及上面得到的备选服务集合,生成备选的景点组合,得到备选的一系列旅 行包,在旅行包的生成过程中,用户的硬性需求会得到优先的满足包括: 步骤9:根据用户的旅行天数要求N以及步骤8得到的备选景点服务集合S求解优化问 题,生成用户在N天内游览的全部景点集合SF,得到备选旅行包集合SFall={SF1,S F2,..., SFn} 〇8. 根据权利要求1至7中任一项所述的个性化旅行包推荐方法,其特征在于,(2)结合景 点的地理位置信息及用户的偏好,选定旅行包中的住宿酒店包括: 步骤10:分别对步骤9中求得的备选旅行包集合SFaii = {SF1,SF2,. . .,SFn}中的每一个SFi 计算筛选相应的酒店服务,得到了备选旅行包集合SFall = {SF1,SF2,. . .,SFn}中的每一个SFl 所对应推荐的酒店服务出。9.根据权利要求1至8中任一项所述的个性化旅行包推荐方法,其特征在于,(3)根据路 程确定每天最优行程,得到每个旅行包的预期路程,并结合优先级信息,计算旅行包推荐指 数,排序旅行包包括: 步骤11:对备选旅行包集合SFall={SFl,SF2, . . .,SFn}中的每一个SFi,计算相应的最优路 径规划,定义路程函数+心-~+ J 旅行包3「1第」天行程安排所需的最短全部交通路程,其中表示第j天游览的景点数目;进 而对每一个SFl求解优化问题,以得到最优的旅行包路径规划; [s?] Ν' 步骤12:计算每个旅行包的推荐指数I: Z = ,其中b、c为正实数,进 ^=1 Μ 而根据推荐指数I由高到低排序各旅行包,得到旅行包推荐方案sFall'= {SF1',SF2',..., SFn ? } 〇
【文档编号】G06Q50/14GK105955981SQ201610237787
【公开日】2016年9月21日
【申请日】2016年4月15日
【发明人】范玉顺, 郝予实, 郜振锋, 汤恩清
【申请人】清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1