基于问题引导的个性化推荐方法及系统的制作方法

文档序号:8258854阅读:402来源:国知局
基于问题引导的个性化推荐方法及系统的制作方法
【技术领域】
[0001] 本发明涉及物品推荐技术领域,更为具体地,涉及一种基于问题引导的个性化推 荐方法及系统。
【背景技术】
[0002] 目前,个性化推荐系统在互联网应用中得到了广泛的使用,其中,个性化推荐算法 往往都依赖于用户交互过程中产生的点击流量数据以及产生的文本内容数据,根据这些海 量数据挖掘出用户的潜在喜好以及需求。
[0003]由于个性化推荐算法的这一特点,在针对新用户进行推荐时都会面临用户冷启动 这一行业共性问题,由于新用户没有或者仅有很少的交互数据,在实际应用过程中,往往都 是新用户更需要推荐系统的辅助,老用户对应用更加了解反而不太依赖于机器推荐。
[0004] 对于新用户的冷启动问题,通常采用传统的群体策略,利用排名补足的方法把最 热门评分最高的物品作为推荐选项,这种采用全局排名的推荐方法损失了个性化的特点, 导致所有人看到内容都是一样的,很难满足长尾用户的需求。
[0005] 另一个针对新用户的冷启动问题的解决方法是:通过引导问题的方式,在用户注 册后通过强制回答问题的方式来采集用户的第一手数据,从而基于这些数据来进行个性化 推荐。目前对引导问题的数据处理方式是采用信息量(Entropy)算法,使得通过最少数量 的问题获得最大的信息量。其具体实现思路是通过对已知用户对物品的评价数据集进行分 析,比如通过图1所示的两层问题引导树作为选取合适的物品来构建问题引导树。
[0006] 如图1所示,每个节点对应的物品A-物品M为最佳提问的物品,引导树中的边代 表用户的对上层物品的反馈(喜欢、不喜欢以及不知道)。例如问题引导树会首先询问用户 是否喜欢物品A,如果用户回答不知道,引导树会接着提问用户是否喜欢物品C,如果用户 回答不喜欢,则引导树会接着询问物品J,以此类推。
[0007] 引导树构建的过程实际上是对用户群的分群分组的过程,假设已知用户对物品的 评价数据集中有n个用户,根据用户对物品A的打分,分成三组用户作为决策树的候选子节 点。通过分析每组组内用户评价的相似性(方差),评估物品A作为分组问题的优劣(每 组组内评价越相似越好),以此类推,对于每一个子节点,需要针对当前组内的用户群进行 迭代分组,直到引导树层级达到一定的阀值。按照引导树的节点进行提问就可以快速的找 到与当前用户行为相似的用户群的共同喜好,从而能够解决推荐系统中的冷启动问题。图 2示出了问题引导流程,如图2所示,其具体的问题引导过程为:
[0008] 在推荐系统构建之后,根据站内用户评分数据和站外评价数据对每一个物品按照 评价分数进行用户分组,然后计算组内用户评分方差,进而得出多组方差之和;选取最小方 差和的物品作为当前决策树节点,并按照评分构建其子节点。在决策树构建的过程中,判断 决策树深度是否超过预设阀值,如果所构建的决策树的深度超过预设阀值,则完成决策树 的构建;否则进一步对每个子节点数据集进行重复前述"分组?构建子节点"的处理过程, 直至完成决策树的构建。在决策树构建完毕,就可以根据该构建的决策树在用户登录网站 /应用(步骤S202)后询问用户对物品的评价。
[0009] 根据上述流程的描述,目前的问题引导方法主要存在下三个问题:
[0010] 1.引导模式不灵活。该类引导方法往往都是捆绑在用户的注册流程中,用户需要 按照流程对每一个问题进行回答,用户在流程中没有任何的主导权,无法针对某一类问题 进行选择作答。
[0011] 2.问题缺乏关联性。在问题选择上采用了全局物品,由于追求过度信息量最大话, 问题之间缺乏关联性,这种方式导致类似算法只能用在初始用户上,无法持续跟用户进行 交互。例如,如果用户在商城只想购买合适的服装,该类算法无法只提问关于服装相关的问 题进行分类问题引导。
[0012] 3.稀疏矩阵支持度低。在问题选择上都是基于对于一个物品打分的分类进行分群 分组(例如"喜欢"、"不喜欢"以及"不知道"三个类别),由于用户评价评分矩阵在大多数 应用场景中都是极度稀疏的,用户评价的物品只占总物品数的很小部分,所以随着群组细 化数据减少,"不知道"类别的用户数量会远远超过其他类别数量,导致所有可选物品的信 息量都较小从而没有合适的问题进行提问,算法提前终止。
[0013] 为了解决以上所述问题,需要提供一种有效的问题引导的方法,从而解决用户冷 启动问题以及提高用户体验。

【发明内容】

[0014] 鉴于上述问题,本发明的目的是提供一种基于问题引导的个性化推荐方法及系 统,以解决用户冷启动问题,提高用户体验。
[0015] 根据本发明的一个方面,提供一种基于问题引导的个性化推荐方法,包括两个步 骤;
[0016] 第一步骤:获取语义主题或行为主题以及构建多个问题引导树;其中,
[0017] 根据用户输入的问题获取语义主题;
[0018] 根据用户的浏览内容获取行为主题;
[0019] 对用户行为数据、用户评分数据和物品元数据进行数据过滤,获取用户、物品和喜 好程度三元关系的多个物品主题,并基于遗传算法构建与所获取的多个物品主题一一对应 的问题引导树;
[0020] 第二步骤:通过主题匹配确定问题引导树;其中,
[0021] 根据语义主题或行为主题获取喜好主题;
[0022] 将喜好主题与问题引导树进行匹配,确定与喜好主题相匹配的问题引导树,根据 确定的问题引导树向用户进行问题输出,获取用户喜好数据从而进行个性化推荐。
[0023] 此外,优选的方案是,在根据用户输入的问题获取语义主题的过程中,
[0024] 将用户输入的问题进行中文分词和语义分析,获取语义主题;其中,
[0025] 在中文分词的过程中,利用中文分词算法将自然语言描述文本中的段落句子拆分 为词语;中文分词算法包括最大匹配算法、最长均词算法和最小方差算法;
[0026] 在语义分析的过程中,统计用户输入的段落句子中的每个词语与物品主题的相似 程度;
[0027] 在获取语义主题的过程中,选取最大相似度主题为该语句的语义主题。
[0028] 此外,优选的方案是,在根据用户的浏览内容获取行为主题的过程中,
[0029] 根据用户的浏览内容获取用户行为,根据用户行为获取用户对物品主题的喜好程 度,将用户喜好程度最大并且超过预设阀值的物品主题作为行为主题。
[0030] 此外,优选的方案是,根据用户对含有多个物品的列表中各物品的选择,获取用户 最喜好的物品。
[0031] 此外,优选的方案是,在基于遗传算法构建与所获取的多个物品主题 对应的 问题引导树的过程中,
[0032] 对获取的每个物品主题所对应的用户评价数据集进行种群选择运算、交叉运算、 变异运算生成问题引导树;其中,
[0033] 在种群选择运算的过程中,从群体中选择优胜的个体,淘汰劣质个体;其中,在种 群选择运算的初始的阶段采用随机生成N个物品集进行交叉运算,在每次完成交叉运算与 所述变异运算后,从候选物品集随机选取N个物品集,并计算种群选择运算中的物品集种 群的平均适应度,其中,N大于1 ;
[0034] 在交叉运算的过程中,每次随机选取任意两个物品集,并对任意两个物品进行交 换产生一个新的物品集,并且满足新生成的物品集中
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1