一种基于中文知识图谱的个性化推荐方法与系统的制作方法

文档序号:6518850阅读:1320来源:国知局
一种基于中文知识图谱的个性化推荐方法与系统的制作方法
【专利摘要】本发明属于计算机软件【技术领域】,具体为一种基于中文知识图谱的个性化推荐方法与系统。本发明利用中文知识图谱中概念实体间的超链接关系度量出任意两个词条间的语义关联,并结合一种改进的显式语义分析模型(ESA)来实现由两组标签分别刻画的用户和待推荐物品之间的精准推荐。对于两组即便没有共同标签词条的标签组,本发明提出的改进ESA模型借助中文知识图谱也能度量出两者间的语义距离,即匹配程度,从而极大地拓展了基于标签描述的个性化推荐技术的应用场合,具有广泛的商业应用价值。
【专利说明】一种基于中文知识图谱的个性化推荐方法与系统
【技术领域】
[0001]本发明属于计算机软件【技术领域】,具体涉及一种基于中文知识图谱的个性化推荐方法与系统。
【背景技术】
[0002]随着Web2.0技术的深入发展,电子商务为代表的互联网商机包含巨大的市场价值。在众多电子商务网站中,如亚马逊和淘宝,针对用户的个性化推荐一直都是提升产品品牌价值和赢得客户市场的重要技术保证。所谓个性化推荐,就是系统能及时、准确地捕捉用户的兴趣爱好等个性特征,从而为其推荐符合其特征的产品,以求提高用户体验的同时增加商品的销量。个性化推荐与精准化营销有着相似的业务过程和相同的商业目的。
[0003]鉴于个性化推荐技术在商业领域的巨大价值,很多学术界和工业界的学者、专家都投身于相关的研究,各种相关的系统、方法也层出不穷。其中最著名的方法包括协同过滤[I]和基于内容(content-based)的推荐[2,3]等等。协同过滤常常面临因数据稀疏带来的冷启动问题,例如系统中的新用户没有任何浏览或购买记录,就无法刻画其特征,进而无法进行推荐物品匹配。大多content-based的推荐技术都是将用户和推荐物品的特征用一组关键词或标签来描述,通过计算两者对应的向量距离来度量其相似度,从而产生推荐结果。这些已有的基于度量用户和物品特征向量相似度的推荐方法大都只在同一领域中适用,即,无论是描述用户还是待推荐物品特征的词(标签)都是产生自同一领域(网站)中。两个能成功匹配的向量总在某些维度上有重叠(同一个维度的值非零),表明对应的两组标签中总有某些标签是相同的。但现今,交叉领域的推荐问题已经成为一个现实问题,即,用户和物品可能来自不同网站,描述其特征的标签组也产生自不同领域,从而两组标签之间没有一个标签是相同。按照传统的向量相似度计算方法(如余弦相似度),他们之间的相似度为零,是无法匹配从而产生推荐的。
[0004]众所周知,中文词库中的同义词、近义词非常繁多,如“旅游”和“旅行”,“摄影”和“照相”。如果能准确地度量这些词条之间的语义距离而不是仅仅判断两个词条是否相同,将会大大提高基于用户/物品标签组向量相似度的推荐方法的准确性,从而推广其在交叉领域的应用。有幸地是,中文知识图谱的出现为这一问题的解决带来契机,这也是本发明专利的主要目的和手段。

【发明内容】

[0005]本发明的目的在于提供一种推荐的准确性高,且能实现个性化推荐的方法与系统。
[0006]本发明提供个性化推荐系统和方法,是基于中文知识图谱的。即本发明首先依据中文百科网站上的海量数据构建中文知识图谱,进而度量任意两个词条(标签)之间的语义距离,从而提高基于用户/物品特征向量的推荐技术的准确性并推广其应用场合。
[0007]对于一个用户和一组候选的待推荐物品,他们各自都用一组标签来刻画其特征,本发明借助中文知识图谱和一种改进的显式语义分析模型,从候选物品中找出最匹配该用户的物品作为个性化推荐的结果。
[0008]本发明提出的个性化推荐的方法与系统,其整体框架如图1所示。它包括依次相连的三个模块,即三个工作步骤。第一模块为构建中文知识图谱,第二模是为每组标签构建改进的显式语义分析模型(ESA, Explicit Semantic Analysis),第三模块3是基于语义模型度量候选的待推荐物品与用户之间的语义距离,从而筛选出最匹配的物品作为推荐结果。
[0009]第一模块是构建中文知识图谱。首先,将百科网站的概念实体,即词条,映射成知识图谱(即一个由许多点和边组成的网络)中的结点,词条页面上出现的其它参考词条数的倒数作为该结点的权重;词条间的超链接关系(参考词条)则映射成网络边。图谱中的边在一定程度上代表了相连的两个结点(词条)之间的语义联系。该模块可为后续模块中标签之间语义距离的度量提供语料库。
[0010]第二模块是为刻画用户和待推荐物品特征的每组标签而构建的一种改进的显式语义分析模型(简称ESA [4]),构建的基本过程为:首先将标签组中的每个标签,即词条,映射成一个“概念向量”。向量的每一维对应图谱中的一个概念,也就是一个结点。非零的维度则对应于图谱中指向这个标签的结点,其值则是该标签在邻居结点对应的词条页面上的tf-1df值(向量中非零的维度值)乘以该邻居结点的权重。然后,将一组标签中的每个标签映射的概念向量求和,生成对应该标签组的“和概念向量”。该模块通过建立和概念向量,使得两个标签组之间语义距离实现了数量化。
[0011]该模型的具体建立过程如下:
当系统从外部获得一组标签后,首先需要对该组中的每个标签一一建立对应的“概念向量”。每个标签的概念向量维数即整个中文知识图谱中的结点总数,每一维对应一个结点。假设,一个标签t (也可看做一个词条)作为参考词条出现在某个结点V的词条页面上,则t的概念向量在V结点对应的维度值不为0,具体值按如下公式计算:
V(t) =tf-1df (t) *w (v)公式 I
其中,tf-1df为词条t在v的词条页面上的tf-1df值,w (V)为结点的权重。中文知识图谱中所有结点的词条页面当做文档全集,而参考词条在页面文字中也可以出现多次,因此,这里tf-1df值的计算和文档检索中关键词的tf-1df值完全相同。
[0012]在经典的ESA模型中,向量中非零的维度值只是tf-1df值,本发明改进ESA之处在于引入了结点的权重W(V)。w(v)取值为V词条页面中出现的所有参考词条数(即V的邻居结点数)的倒数,其基本思想类似于倒文档频率(idf)。设想,一个词条的页面如果出现太多的参考词条,意味着它能指示很多其它词条的语义,那么对于某个参考词条而言,其语义指示作用就显得很弱了。所以,对于这样的词条(概念),其权重应该削弱。
[0013]建立每个标签的概念向量后,将所有向量求和即得到了该组标签的“和概念向量”,这个向量就代表了整组标签的语义信息,作为下述第三模块的输入。
[0014]第三模块从第二模块中获得描述用户特征标签组对应的和概念向量与描述物品特征标签组对应的和概念向量,计算两个向量的余弦相似度作为物品和用户的相似度。对于输入的每个候选物品,都计算一次它和用户的相似度,然后对所有相似度的值从高到低排序。如果要求系统推荐k个物品,则挑出排序在top-k的前k个物品作为输出的推荐结果。具体的输出形式可以是物品的id或物品名。该模块通过这种排序和筛选机制实现了针对某个用户的个性化物品推荐。
[0015]上述三个模块,依次工作,实现了本发明的方法流程。
[0016]本发明的益效在于,利用构建的中文知识图谱为深入、准确地理解标签(词条)的语义以及标签之间的语义关联提供了背景知识。而改进的ESA模型不仅提高了经典的ESA模型的效果,而且将其应用于基于标签描述用户/物品特征的个性化推荐技术后,推广了个性化推荐在交叉领域的应用场景。
【专利附图】

【附图说明】
[0017]图1为本发明的系统框架。
[0018]图2为百度百科上关于“旅游”词条页面的示例。
[0019]图3为以“旅游”为例建立的中文知识图谱示例。
[0020]图4是改进的ESA模型构建示例。
【具体实施方式】
[0021]下面结合附图和实施例对本发明做进一步详细说明。
[0022]本发明提供的一种基于中文知识图谱的个性化推荐系统与方法,包括构建中文知识图谱、建立标签的ESA模型以及候选物品的排序与推荐三个模块。参照图1,整个系统以描述了用户和待推荐物品的标签组作为输入,以系统筛选出的最匹配用户的物品id (或名称)做出输出,即推荐结果。其中,中文百科网站的数据也是作为系统构建中文知识图谱时要抓取的内容,但是在系统做推荐之前事先完成的工作,并非实时的任务。
[0023]以下结合每个模块的具体工作原理介绍本发明。
[0024]模块一:构建中文知识图谱
首先,系统通过爬虫程序从多个中文百科网站(如百度百科、互动百科)上抓取全部词条页面的信息,这些词条,如“旅游”、“音乐”等,都可以视作一个概念实体,也对应了个性化推荐中用来描述用户和物品特征的标签。百科网站上,为了解释一个词条对应的概念,在该词条页面的说明文本中往往会出现其它参考词条,使得该页面具有指向参考词条页面的超链接。本发明构建的中文知识图谱实际上是一个由许多点和有向边组成的大型网络图。图中每个结点即为百科上的概念实体,一个结点的邻居就是在该结点的词条页面上出现的其它参考词条,因此它们之间的有向边就表示词条页面之间的超链接关系。如图2所示,百度百科上“旅游”一词的页面上,出现了“休闲”、“娱乐”和“探亲”三个参考词条,则根据这些数据构建的图谱结构如图3所示。既然引入参考词条是为了解释本词条对应的概念,因此它们对本词条具有一定的语义指示。换言之,图谱中一个结点的邻居结点在很大程度上描述了该结点的语义信息。此外,图谱中的每个结点还具有权重,值为其指向的参考词条数(邻居数)的倒数。我们用邻居数的倒数来设定一个结点的权重,是希望该权重能表示该结点在后续的ESA建模过程中具有的语义指示性功能的强弱,其原理在模块二的介绍中阐述。截止目前,本发明系统中构建的中文知识图谱已有超过2000万个结点,包含了丰富的语料信肩、O
[0025]模块二:为标签建立改进的ESA模型ESA模型,即显式语义分析分析,最早由Gabrilovich等人提出[4]。ESA模型的提出为度量两个词语之间的语义联系提供了科学且可量化的标准,它借助的是英文的背景知识库——维基百科。本模块中建立的改进ESA模型是以最初的ESA模型为基础,并结合了上一模块中构建的中文知识图谱信息为度量两个中文词条(即标签)的语义联系提供了科学依据,从而可以进一步地度量出两个标签组之间的语义联系。该模型的建立过程如下:
当系统从外部获得一组标签后,本模块首先需要对该组中的每个标签一一建立对应的“概念向量”。每个标签的概念向量维数即整个中文知识图谱中的结点总数,每一维对应一个结点。假设,一个标签t (也可看做一个词条)作为参考词条出现在某个结点V的词条页面上,则t的概念向量在V结点对应的维度值不为0,具体值按如下公式计算:
V(t) =tf-1df (t) *w (v)公式 I
其中,tf-1df为词条t在V的词条页面上的tf-1df值,w(v)为结点的权重。中文知识图谱中所有结点的词条页面当做文档全集,而参考词条在页面文字中也可以出现多次,因此,这里tf-1df值的计算和文档检索中关键词的tf-1df值完全相同。以图4中的标签组为例,假设一组标签“休闲、娱乐、…”刻画了某个用户或待推荐物品的特征,它们是基于度量物品匹配用户程度的依据。标签“休闲”因为出现在“旅游”的词条页面上(参见图2),且其tf-1df值为0.5而“旅游”结点在图谱中的权重为1/3 (参见图3),因此“休闲”的概念向量在“旅游”这一维度上的值为0.5*1/3=0.167。同理,标签“娱乐”的概念向量在“旅游”这一维度上的值为0.35*1/3=0.117。
[0026]如前所述,词条页面之间的超链接关系表明了它们之间存在的语义联系。“休闲”和“娱乐”作为“旅游”结点的邻居在一定程度上代表了其语义,反之亦然,“旅游”在很大程度上也代表了这两个标签的语义内容。因而,每个标签的概念向量中的非零维度都具有该标签的语义指示作用,这便是ESA 模型将一个词汇的语义转换成一组概念(如本例中的“旅游”)来表示的原理。在经典的ESA模型中,向量中非零的维度值只是tf-1df值,本发明改进ESA之处就是引入了结点的权重w(v)。w(v)之所以取值为v词条页面中出现的所有参考词条数(即V的邻居结点数)的倒数,其基本思想类似于倒文档频率(idf)。设想,一个词条的页面如果出现太多的参考词条,意味着它能指示很多其它词条的语义,那么对于某个参考词条而言,其语义指示作用就显得很弱了。所以,对于这样的词条(概念),其权重应该削弱。本发明的作者通过详尽的实验已经证明,引入了结点(概念)的权重因子后,概念向量对标签(词条)语义指示作用更加准确。虽然概念向量的维度非常巨大(整个知识图谱有几千万的结点),但是绝大多数标签只在少数的词条页面上作为参考词条出现,因此其概念向量是一个高度稀疏的向量,在后续的向量余弦相似度计算上代价并不大。而对于值非零的维数较多的向量,可以值保留值较大的那部分维度值,最终计算结果的精确性并不会受到太大影响。
[0027]建立每个标签的概念向量后,将所有向量求和即得到了该组标签的“和概念向量”,这个向量就代表了整组标签的语义信息,作为下述模块三的输入。
[0028]模块三:标签组的语义匹配
已有的基于标签描述的推荐算法(标签用来描述用户和待推荐物品的特征),都是通过度量用户的标签和候选物品的标签之间的相似度来筛选出要推荐给用户的物品,标签之间的相似度实际就代表了待推荐物品匹配用户的程度。同理,在本模块中,从模块二中获得描述用户特征标签组对应的和概念向量与描述物品特征标签组对应的和概念向量之后,计算两个向量的余弦相似度作为物品和用户的相似度。对于输入的每个候选物品,都计算一次它和用户的相似度,然后对所有值从高到低排序。如果要求系统推荐k个物品,则挑出排序在top-k的前k个物品作为输出的推荐结果。具体的输出形式可以是物品的id或物品名。
[0029] 经过以上三个模块的配合工作,本发明系统即完成了为一个输入用户从候选物品中推荐出最匹配物品的工作,实现了借助中文知识图谱和改进的ESA模型来达到精准的个性化推荐目的。
[0030]参考文献
[I]Xiaoyuan Su, Taghi M.Khoshgoftaar, A survey of collaborative filteringtechniques, Advances in Artificial Intelligence archive, 2009.[2 ] 1.Cantadorj A.Belloginj and D.Va11e t.Content-basedrecommendation in social tagging systems.1n Proc.0fRecowmender System,2010.[3 ] J.Hannon, M.Bennett, and B.Smyth.Recommendingtwitter users to follow using content and collaborativefiltering approaches.1n Proa of RecSys, 2010.[4]E.Gabrilovich, S.Mar ko v i t c h.Computing semanticrelatedness using wikipedia—based explicit semantic analysis.1n Proa of IJCAIj 2007。
【权利要求】
1.一种基于中文知识图谱的个性化推荐方法,其特征在于,对一个用户和一组候选的待推荐物品,他们各自都用一组标签来刻画其特征,借助中文知识图谱和一种改进的显式语义分析模型,从候选物品中找出最匹配该用户的物品作为个性化推荐的结果;具体步骤如下: 步骤一:构建中文知识图谱 首先,将百科网站的概念实体即词条,映射成知识图谱中的结点,这里所谓知识图谱是一个由许多点和边组成的网络;词条页面上出现的其它参考词条数的倒数作为该结点的权重;词条间的超链接关系即参考词条则映射成网络边;图谱中的边代表相连的两个结点即词条之间的语义联系; 步骤二:为刻画用户和待推荐物品特征的每组标签,构建改进的显式语义分析模型,构建的基本过程为:首先将标签组中的每个标签即词条,映射成一个“概念向量”,概念向量的每一维对应知识图谱中的一个概念,也就是一个结点;非零的维度对应于图谱中指向这个标签的结点,其值是该标签在邻居结点对应的词条页面上的tf-1df值乘以该邻居结点的权重;然后,将一组标签中的每个标签映射的概念向量求和,生成对应该标签组的“和概念向量”;这个和概念向量就代表了整组标签的语义信息; 步骤三:从步骤二中获得描述用户特征标签组对应的和概念向量与描述物品特征标签组对应的和概念向量后,计算两个向量的余弦相似度作为物品和用户的相似度;对于输入的每个候选物品,都计算一次它和用户的相似度,然后对所有相似度的值从高到低排序;如果要求推荐k个物品,则挑出排序在top-k的前k个物品作为输出的推荐结果。
2.根据权利要求1所述的基于中文知识图谱的个性化推荐方法,其特征在于构建改进的显式语义分析模型的具体过程如下: 当系统从外部获得一组标签后,首先对该组中的每个标签一一建立对应的“概念向量”;每个标签的概念向量维数即整个中文知识图谱中的结点总数,每一维对应一个结点;假设,一个标签即一个词条t作为参考词条出现在某个结点V的词条页面上,则t的概念向量在V结点对应的维度值不为0,具体值按如下公式计算:
V(t) =tf-1df (t) *w (v)公式 I 其中,tf-1df为词条t在v的词条页面上的tf-1df值,w (V)为结点的权重;中文知识图谱中所有结点的词条页面当做文档全集,而参考词条在页面文字中可以出现多次,因此,这里tf-1df值的计算和文档检索中关键词的tf-1df值完全相同;w(v)取值为V词条页面中出现的所有参考词条数即V的邻居结点数的倒数;建立每个标签的概念向量后,将所有向量求和即得到该组标签的“和概念向量”。
3.—种对应于权利要求1所述方法的基于中文知识图谱的个性化推荐系统,其特征在于包括依次相连的3个模块,其中: 第一模块用于构建中文知识图谱 首先,将百科网站的概念实体即词条,映射成知识图谱中的结点,这里所谓知识图谱是一个由许多点和边组成的网络;词条页面上出现的其它参考词条数的倒数作为该结点的权重;词条间的超链接关系即参考词条则映射成网络边;图谱中的边代表相连的两个结点即词条之间的语义联系; 该模块为后续模块中标签之间语义距离的度量提供语料库;第二模块是为刻画用户和待推荐物品特征的每组标签而构建的一种改进的显式语义分析模型,简称ESA,其基本过程为:首先将标签组中的每个标签即词条,映射成一个“概念向量”,概念向量的每一维对应图谱中的一个概念,也就是一个结点;非零的维度对应于图谱中指向这个标签的结点,其值是该标签在邻居结点对应的词条页面上的tf-1df值乘以该邻居结点的权重;然后,将一组标签中的每个标签映射的概念向量求和,生成对应该标签组的“和概念向量”;该和概念向量代表整组标签的语义信息,作为第三模块的输入; 第三模块从第二模块2中获得的描述用户特征标签组对应的和概念向量与描述物品特征标签组对应的和概念向量,计算两个向量的余弦相似度作为物品和用户的相似度;对于输入的每个候选物品,都计算一次它和用户的相似度,然后对所有相似度的值从高到低排序;如果要求推荐k个物品,则挑出排序在top-k的前k个物品作为输出的推荐结果;具体的输出形式是物品的id或 物品名。
【文档编号】G06Q30/02GK103593792SQ201310565133
【公开日】2014年2月19日 申请日期:2013年11月13日 优先权日:2013年11月13日
【发明者】阳德青, 肖仰华, 汪卫 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1