个性化知识推荐方法及计算机存储介质与流程

文档序号:18319619发布日期:2019-08-03 10:19阅读:194来源:国知局
个性化知识推荐方法及计算机存储介质与流程

本发明涉及数据挖掘领域,特别是涉及一种个性化知识推荐方法及计算机存储介质。



背景技术:

互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但随着网络的迅速发展而带来的网上信息量的大幅增长,使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了,这就是所谓的信息超载问题。

解决信息超载问题一个非常有潜力的办法是推荐系统。推荐系统在电子商务网站的应用最为广泛,是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品。

推荐系统有3个重要的模块:用户建模模块、推荐对象建模模块、推荐算法模块。推荐系统把用户模型中兴趣需求信息和推荐对象模型中的特征信息匹配,同时使用相应的推荐算法进行计算筛选,找到用户可能感兴趣的推荐对象,然后推荐给用户。

主流推荐算法主要有:基于内容的推荐算法,对项目的内容信息进行研究进行推荐,不需要依据用户对项目的评价意见。但是,容易出现同质化严重的问题,缺乏惊喜,无法挖掘出用户的潜在兴趣,而且特征词较难提取。协同过滤推荐算法,采用最近邻技术,利用用户的历史喜好信息计算用户之间的距离,然后利用目标用户的最近邻居用户对商品评价的加权评价值来预测目标用户对特定商品的喜好程度。但是很难提供令用户信服的推荐解释。基于关联规则的推荐是以关联规则为基础,把已购商品作为规则头,规则体为推荐对象。规则抽取比较难,而且缺乏个性化。基于知识的推荐在某种程度是可以看成是一种推理技术,它不是建立在用户需要和偏好基础上推荐的,它们因所用的功能知识不同而有明显区别。



技术实现要素:

发明目的:本发明要解决的技术问题是提供一种个性化知识推荐方法及计算机存储介质,解决了目前推荐方法同质化严重、无法挖掘出用户的潜在兴趣而且特征词较难提取的缺陷,提高了推荐算法结果的准确性和新颖性,较好缓解了知识过载的问题。

技术方案:本发明所述的个性化知识推荐方法,其特征在于,包括以下步骤:

(1)根据选取的数据源对知识进行特征提取,对于特征值相同的特征,计算并赋予其权值,对于特征值不同的特征,将其权值设为1,形成特征值、权值对的特征向量;

(2)计算用户对于知识的衰减因子并将所述特征向量的权值按照衰减因子的速率进行递减,然后将当前用户的所有特征向量进行累加融合,形成用户特征向量;按照上述方法形成所有用户的用户特征向量;

(3)计算影响因子并将影响因子作用于所述特征向量的权值上,形成候选特征向量;

(4)通过所述的用户特征向量确立当前用户的相似用户群体su,计算su中的用户对知识的偏好,计算当前用户对知识的总偏好;按照上述方法计算当前用户对所有知识的总偏好;

(5)按照当前用户的总偏好对所有知识进行排序,选取总偏好最高的若干个知识作为当前用户的推荐列表;

其中,步骤(2)与步骤(3)的执行无先后顺序。

进一步的,步骤(1)中计算权值的方法为:

其中,repw是权值,ti和ki是从数据源t和数据源k中提取出来的知识i的特征集,n(ti∩ki)是知识i在两种特征集中出现的重复特征项数目,a是常数,n(ti)表示从数据源t中提取的知识i的特征数目,n(ki)表示从数据源k中提取的知识i的特征数目,sum为求和公式,avg为求取平均值公式。

进一步的,a取值为ti和ki数目的平均值。

进一步的,步骤(2)中计算衰减因子并将所述特征向量的权值按照衰减因子的速率进行递减的方法为:

(1)计算衰减因子:

其中,d是用户m中知识i所应的特征衰减因子,t代表当前时间节点,t′i代表知识i的发表时间,uim是用户m的项目列表,t′j代表知识j的发表时间;

(2)将特征向量的权值乘以(1-d),和原有特征值组成新的特征向量。

进一步的,步骤(3)具体为:

(1)计算影响因子:

其中,if是用户m的候选文献i的影响因子,ui是该候选文献i的被引频次,uj是文献j的被引频次,uim是用户m的项目列表;

(2)将特征向量的权值乘以(1+if),和原有特征值组成候选特征向量。

进一步的,步骤(4)中通过所述的用户特征向量确立当前用户的相似用户群体su的方法为:

(1)计算当前用户的相似度;u、v两个用户之间的相似度计算表达式:

其中,wuv是u、v两个用户之间的相似度,u_f表示用户u的用户特征向量中的特征值构成的集合,v_f表示用户v的用户特征向量中的特征值构成的集合,u_w表示用户u的用户特征向量中的权值构成的集合,v_w表示用户v的用户特征向量中的权值构成的集合,min表示获取其中的最小值;fi和fj表示所在集合中的特征值,wi和wj表示所在集合中的权值;

(2)选取与当前用户相似度最高的若干名用户构建相似用户群体su。

进一步的,步骤(4)计算su中的用户对知识的偏好的表达式为:

其中,代表用户v对知识mk的偏好,v_f表示用户v的候选特征向量中的特征值构成的集合,mk_f表示知识mk的候选特征向量中的特征值构成的集合,v_w表示用户v的候选特征向量中的权值构成的集合,mk_w表示知识mk的候选特征向量中的权值构成的集合,min表示获取其中的最小值;fi和fj表示所在集合中的特征值,wi和wj表示所在集合中的权值。

进一步的,步骤(4)中计算当前用户对知识的总偏好的表达式为:

其中,代表当前用户u对知识mk的总偏好,su代表当前对象u的相似用户群体,代表用户vp对候选项mk的偏好,代表用户u对候选项mk的偏好,α、β是两个正数,且α+β=1。

本发明所述的计算机存储介质,其上存储有计算机程序,其特征在于:所述计算机程序在被计算机处理器执行时实现上述任一项所述的方法。

有益效果:1、本发明对知识进行推荐时,会对知识特征进行提取,并通过多数据源加重特征值,这样能够更好地体现偏向性。而对知识特征的提取方法并不局限于本文所提方案。可以选取任意一种特征提取方案,针对不同实例可以进行有针对性的处理。

2、本发明对推荐对象的建模,充分考虑到用户对知识信息的关注特点,不断修改用户的偏好信息,满足用户的实际获取需求,具有较强的适应性。

3、本发明个性知识推荐算法,充分考虑不同用户之间的偏好差异,对不同用户有针对性的进行推荐选择,并从行为以及内容上综合考虑推荐结果的可靠性。

附图说明

图1是本发明实施例的整体流程图;

图2是本实施例的架构图;

图3是特征向量模型构建流程图;

图4是动态用户向量模型构建流程图。

具体实施方式

知识的载体形式有很多,本实施例以文献为例。根据图2的方案架构图,可以看到个性化知识推荐方法主要包括这几个部分:数据预处理,生成特征向量模型,生成候选向量模型,生成动态用户向量模型,产生推荐列表。刚开始得到的数据可能并不是规整的数据,需要对他进行一定的清洗、筛选整理,然后进行分类存储。清洗后的数据按照既定规则进行文本处理,建立特征向量模型。候选文献集合也有自己的既定规则,建立用于比对的候选特征向量模型。在特征向量模型建立完毕后,提取用户数据信息,了解用户喜好特点,建立用户动态偏好列表。最后依据总偏好公式,求出满足条件的文献列表,推荐给用户。实施例的具体步骤如图1所示。

步骤1:建立特征向量模型,综合多项数据源对知识进行特征提取,使得知识能够尽可能被准确地表示成所需要的向量,提取的特征词并不见得都是等价的,知识也有自己的侧重点,依据规则赋予其对应的权值,最终形成特征、权值对,由此建立特征向量模型。

由于文献本身的特殊性,尤其是学术文献在发表时会带有作者自己制定的关键词,这是一个很好的特征标签,我们可以将其作为一个重要的参考标准。但文献所给的关键词往往是比较具体的内容方法等,所以除此之外,本发明还对文献的标题进行分析,作为作者整体方向上的指导,突出用户特征,提取的流程如图3所示。本实施例采用nlp技术(基于双向最大匹配算法的中文分词技术)对知网数据集中的文献分别从标题和关键词两个数据源进行特征提取,可以使用fudannlp分词器进行提取。对于提取出的特征值,特征值相同的,可用如下公式计算其权值,其余特征值不同的,其权值设为1,最终形成特征、权值对,即为我们想要建立的特征向量模型。

权值可采用如下公式进行计算:

其中,repw是重复特征值的对应权值,ti和ki是从不同数据源中提取出来的知识i的特征集,n(ti∩ki)表示知识i在两种特征集中出现的重复特征项数目,a为一常数(取值为ti和ki数目的平均值),n(ti)表示从数据源t中提取的知识i的特征数目,n(ki)表示从数据源k中提取的知识i的特征数目,sum公式用于求出两种特征集中全部特征项的总数目,avg公式对所求和取平均值。

步骤2,建立动态用户向量模型,了解用户喜爱偏好,捕捉用户最新偏好信息,用户的喜好特征并不是一成不变的,在某一时期关注的知识点也会不一样,为了体现这种动态的特征,可以对用户的喜好信息进行动态迁移,建立衰减机制,使其兴趣点能够按照一定的周期进行衰减。为了防止其一直衰减下去,可以设置一个阈值l(这里设为0.001),小于该阈值的特征值将会被删除,以满足用户的实际获取需求。建立完毕后,将衰减机制作用于每一个特征向量模型的特征权值上,优选的是每一个特征向量的权值按照衰减因子的速率进行递减,即新的特征向量权值等于原权值乘以(1-衰减因子),然后将当前用户的所有特征向量进行累加融合,形成一个动态的用户特征向量。用户特征向量模型的建立过程如图4所示。

具体的为,对于用户集u={u1,u2,...,un}中任意一个用户u都有自己的文献列表uii={m1,m2,...,mq},而其中每一篇文献都可以生成自己的特征向量模型,这里所需要做的就是将该用户的所有文献的特征向量模型进行累加融合,生成pi={<f1,w′1>,<f2,w′2>,...,<fk,w′k>}。

衰减机制采用如下公式:

其中,d是用户m中知识i所应的特征衰减因子,t代表当前时间节点,t′i代表知识i的发表时间,uim是用户m的项目列表,t′j代表知识j的发表时间;

将衰减因子d作用于当前用户的每个特征向量模型上,从而改变每个特征权值的影响。每一个项目最终都可以表示为mi={<f1,w1>,<f2,w2>,...,<fk,wk>},对于当前用户中的所有m∈uii={m1,m2,...,mq}进行合并。对于f值相同的,则累加其权值,衰减机制按最新年份的d进行计算,而后填入集合u。其余项直接填入u集合中。

步骤3,建立候选特征向量模型,采用不同于原始特征向量模型的标准对候选项进行建模,在原有特征建模的基础上加入影响因子,将影响因子作用于候选文献的特征权值上来提升不同文献对于不同对象的影响力,体现不同知识对当前用户的重要性。

我们都知道文献在发表时,都会有自己的影响因子,而本发明在这里对于被引频次较多的文献也相应的加重其权值,代表这篇文献的重要性。

其中,if代表用户m的候选文献i的影响因子,ui代表该候选文献i的被引频次,uim是用户m的项目列表。将ci中各个候选文献的特征向量模型根据频次因子调整其对应权值后,调整的方法为新权值等于原权值乘以(1+影响因子),即cw=(1+if)·w,cw是计算后的新权值,w为原权值,就得到候选特征向量模型。

步骤4,某用户进行特征推荐时,内容往往会趋于单一化,为了避免这种问题,本发明先寻找当前用户的相似用户,而每一个用户对每一个知识的偏好都是不一样的,通过综合相似用户对于同一知识的偏好信息,即可判断出该知识是否值得向当前用户进行推荐。

首先将所有用户按照步骤2建立动态用户向量模型,并选用如下公式计算当前用户与其他用户群体的相似度,选取其中与当前用户相似度最高的若干名用户构成相似用户群集合su。

相似度计算公式为:

其中,wuv是u、v两个用户之间的相似度,u_f表示用户u的用户特征向量中的特征值构成的集合,v_f表示用户v的用户特征向量中的特征值构成的集合,u_w表示用户u的用户特征向量中的权值构成的集合,v_w表示用户v的用户特征向量中的权值构成的集合,min表示获取其中的最小值;fi和fj表示所在集合中的特征值,wi和wj表示所在集合中的权值;

接着依据相似用户群体的文献作为候选文献按照步骤3进行建模,并采用如下公式计算相似用户对候选文献的偏好;

相似用户v对候选项mk的偏好计算公式:

其中,代表用户v对知识mk的偏好,v_f表示用户v的用户特征向量中的特征值构成的集合,mk_f表示知识mk的候选特征向量中的特征值构成的集合,v_w表示用户v的用户特征向量中的权值构成的集合,mk_w表示知识mk的候选特征向量中的权值构成的集合,min表示获取其中的最小值;fi和fj表示所在集合中的特征值,wi和wj表示所在集合中的权值。

最后,采用如下公式计算出向当前对象u推荐mk的总偏好:

其中,代表当前对象u对mk的总偏好,su代表当前对象u的相似用户群集合,代表用户vp对候选项mk的偏好,代表用户u对候选项mk的偏好,α、β是两个常数(取值范围[0,1]),且α+β=1;

步骤5,根据上面求出的当前对象u对不同候选项的总偏好进行排序,选取top-n项目作为当前对象u的推荐列表。

本发明实施例如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,readonlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实例不限制于任何特定的硬件和软件结合。

相应的,本发明的实施例还提供了一种计算机存储介质,其上存储有计算机程序。当所述计算机程序由处理器执行时,可以实现前述的个性化知识推荐方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

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