基于异构信息网络的内容提供方法及系统的制作方法

文档序号:6547528阅读:145来源:国知局
基于异构信息网络的内容提供方法及系统的制作方法
【专利摘要】本发明公开了一种基于异构信息网络的内容提供方法,在用户订阅了推荐服务时,使用最优预测矩阵向用户推荐内容,该最优预测矩阵利用异构信息网络,采用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵的两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵。该方法有效地提高了推荐精度,在现有数据的基础上,经过有限次的计算,可以为用户推荐更符合用户意愿的结果,并部分解决了冷启动问题,改善了推荐结果的可解释性。
【专利说明】基于异构信息网络的内容提供方法及系统

【技术领域】
[0001]本发明涉及一种内容提供方法及系统,特别是基于异构信息网络的内容提供方法及系统。

【背景技术】
[0002]随着科学技术的发展,目前已经进入了信息爆炸的时代,由于海量信息的涌现使得信息的利用率反而降低,从而出现了称之为信息超载的现象。特别是在当前的大数据时代,如何从海量的数据中准确地找到自己所需要的信息,更是一个十分紧迫的问题。推荐系统就是解决这一问题的有效手段。
[0003]协同过滤方法是推荐系统中研究得最早,也是最多的领域,并在工业界得到了广泛的应用。其基本思想是如果用户在过去有相同的偏好,那么他们在未来也会有相似的偏好。纯粹的协同过滤方法的输入数据只有用户-项目评分矩阵,因此它只应用了用户对项目的历史评分。协同过滤技术一般分为两类:基于记忆的和基于模型的。其中基于记忆的方法是将原始评分数据保存在内存中,直接生成推荐结果;而基于模型的方法会首先离线处理原始数据,学习相应模型,通常采用各种矩阵分解方法。
[0004]无论是基于用户的过滤还是基于项目的过滤其中最近邻的计算都只依赖于用户-项目评分矩阵。由于评分矩阵一般都非常稀疏,因此协同过滤的主要挑战就是要用相对较少的有效评分来得到准确的预测。


【发明内容】

[0005]为解决现有技术的不足,本发明的目的在于提供一种基于异构信息网络的内容提供方法及系统。
[0006]为实现上述目标,本发明采用如下的技术方案:
[0007]—种基于异构信息网络的内容提供方法,在用户订阅了推荐服务时,使用最优预测矩阵向用户推荐内容,该最优预测矩阵利用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵任意两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵。
[0008]获得最优预测矩阵的步骤,具体包括:
[0009]步骤一:生成用户集合和项目集合;
[0010]用户集合:US= Iu1, U2, , UmI ;
[0011 ]项目集合:WS = (W1, W2, , wn};
[0012]其中Ui代表参与推荐过程的活动用户;Wi代表参与推荐过程的活动项目;
[0013]步骤二:生成属性集合;
[0014]用户属性集合:UA= (P1, p2, , pk};
[0015]项目属性集合:WA= {q1; q2,…,qt};
[0016]其中Pi代表参与推荐过程的用户某一方面的属性;qi代表参与推荐过程的项目某一方面的属性;k和t分别表示参与推荐过程的用户属性数和项目属性数;
[0017]步骤三:生成相似度矩阵;
[0018]采用基于元路径的相似度计算方法分别计算用户与项目各个属性的相似度矩阵;
[0019]用户间关于属性Pi的相似度矩阵:U(Pi) e Rl < i ≤ k);
[0020]项目间关于属性Qi的相似度矩阵=W(Qi) e Rl < i ≤ t);
[0021]其中RW代表表示i行j列的方阵;
[0022]步骤四:矩阵融合;
[0023]通过基于元路径的相似度计算后,可以得到多个用户相似度矩阵U(Pi),和多个项目相似度矩阵W (?);
[0024]通过如下三种方式之一或多个进行矩阵融合:
[0025]融合方式1:(用户-项目评分矩阵)X (项目相似度矩阵)
[0026]融合方式2:(用户相似度矩阵)X (用户-项目评分矩阵)
[0027]融合方式3:(用户相似度矩阵)X (用户-项目评分矩阵)X (项目相似度矩阵);
[0028]步骤五:协同过滤;
[0029]使用矩阵分解算法进行推荐预测;
[0030]步骤六:矩阵合并;
[0031]针对多个元路径和融合方法,以及多种矩阵分解方法运算后会得到多个结果预测矩阵,将这些预测矩阵合并获得最优预测矩阵。
[0032]进一步的,在用户输入查询内容时,从数据库获得初步的查询结果,使用最优预测矩阵对该初步的查询结果进行过滤。
[0033]本申请还提供一种基于异构信息网络的内容提供系统,该系统包括:
[0034]查询机:用户通过查询机登陆并向用户显示推荐内容;
[0035]存储机:存储各种数据;
[0036]最优预测矩阵生成器:从存储机获得数据,利用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵任意两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵;
[0037]过滤选择器:使用最优预测矩阵向用户推荐内容。
[0038]上述最优预测矩阵生成器包括:
[0039]集合生成器:用于生成用户集合和项目集合;
[0040]用户集合:US= Iu1, U2, , um};
[0041 ]项目集合:WS = (W1, W2, , wn};
[0042]其中Ui代表参与推荐过程的活动用户;Wi代表参与推荐过程的活动项目;
[0043]属性生成器:用于生成属性集合;
[0044]用户属性集合:UA= (P1, p2, , pk};
[0045]项目属性集合:WA= {q1; q2,..., qj ;
[0046]其中Pi代表在系统中参与推荐过程的用户某一方面的属性;qi代表在系统中参与推荐过程的项目某一方面的属性;k和t分别表示参与推荐过程的用户属性数和项目属性数;
[0047]相似度矩阵生成器:用于生成相似度矩阵;
[0048]采用基于元路径的相似度计算方法分别计算用户与项目各个属性的相似度矩阵;
[0049]用户间关于属性Pi的相似度矩阵:U(Pi) e Rl < i ^ k);
[0050]项目间关于属性Qi的相似度矩阵=W(Qi) e Rl < i ^ t);
[0051]其中Ri<y代表表示i行j列的方阵;
[0052]信息融合生成器:用于矩阵融合;
[0053]通过基于元路径的相似度计算后,对于用户来说可以得到多个用户相似度矩阵U (Pi),对于项目也可以得到多个项目相似度矩阵W (Qi);
[0054]通过如下三种方式之一或多个进行矩阵融合:
[0055]融合方式1:(用户-项目评分矩阵)X (项目相似度矩阵)
[0056]融合方式2:(用户相似度矩阵)X (用户-项目评分矩阵)
[0057]融合方式3:(用户相似度矩阵)X (用户-项目评分矩阵)X (项目相似度矩阵);
[0058]协同过滤器:用于协同过滤;
[0059]使用的矩阵分解算法进行推荐预测;
[0060]合并器:用于结果预测矩阵合并;
[0061]针对多个元路径和融合方法,以及多种矩阵分解方法运算后会得到多个结果预测矩阵,将这些预测矩阵合并获得最优预测矩阵。
[0062]合并器的合并方法包括以下三种:
[0063]1.平均(Average):取多个结果的平均值;
[0064]2.最高兴(Most Pleasure):取多个结果的最大值;
[0065]3.最不惨(Least Misery):取多个结果的最小值。
[0066]本申请旨在使用丰富的用户属性和项目属性信息,主要考虑充分利用用户和项目属性的潜在信息构建异构信息网络,利用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵进行融合,得到用户与项目之间的更丰富的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果预测矩阵为用户提供更加有效的内容。该方法有效地提高了推荐精度,在现有数据的基础上,经过有限次的计算,可以为用户推荐更符合用户意愿的结果,针对推荐系统中针对新用户与新项目不能很好进行推荐的冷启动问题,由于引入了用户与项目属性可以部分得到解决,同时也可以改善推荐结果的可解释性。

【专利附图】

【附图说明】
[0067]图1为本发明第一实施例的方法流程图;
[0068]图2为本发明的第二实施例的方法流程图;
[0069]图3为构建最优预测矩阵的方法流程图;
[0070]图4为本发明的系统结构图;
[0071]图5为最优预测矩阵生成器的结构图。

【具体实施方式】
[0072]以下结合附图和具体实施例对本发明作具体的介绍。
[0073]向用户提供内容服务的系统通常具有push和pull两种模式,用户可以分别采用pull模式或push模式登录查询机。在push模式中,当用户登陆查询机时,即可根据用户之前的服务订阅情况和查询历史,及时向用户推送通过推荐系统预测的可能用户最感兴趣的相关内容;pull模式为用户进行查询请求时,结合用户的查询历史,推荐系统向用户推荐更可能相关的内容。本发明可以是具有单独的push模式或pull模式的系统,也可以是具有这两种模式的系统。
[0074]首先,介绍本发明的第一实施例的方法流程图。
[0075]参照图1,本发明的第一实施例的方法流程图是push模式的基于异构信息网络的内容提供方法,包括:
[0076]步骤101:用户登陆。
[0077]用户登陆查询机,提供用户身份鉴别,通常是账号和密码或者其它验证方式,也可以采用系统默认用户的方式,以避免用户每次都需要重新登录的麻烦。通过身份鉴别,判断用户是否订阅了推荐服务。其中本领域技术人员可以知道,查询机可以是任意网络浏览器或应用。
[0078]步骤102:获得用户身份。
[0079]通过用户身份认证,一旦判断用户订阅了推荐服务,则推荐系统即时定位用户信息以及用户与项目交互历史,确定系统中活动用户与活动项目集合,触发推荐过程,计算并产生最优预测矩阵。
[0080]步骤103:使用最优预测矩阵向用户推荐内容。
[0081]针对用户的个性化信息使用最优预测矩阵向用户推荐服务内容,将服务内容呈现给当前用户,并跟踪用户反馈,将用户交互结果进行保存。
[0082]这里需要注意的是,为了提高系统响应的实时性,可以在用户退出系统前进行推荐内容计算,如果用户下次登录时系统中用户与项目变化不大的情况下就可以立即呈现计算结果,从而大大提高了系统的实时性。
[0083]参照图2,是本发明的第二实施例的方法流程图。第二实施例是pull模式的基于异构信息网络的内容提供方法,包括:
[0084]步骤201:用户查询。
[0085]用户通过查询机输入查询关键字或其组合。需要注意的是,为了提供个性化的信息服务,在用户打开查询机的时候通常需要使用用户鉴别过程以确定当前用户,虽然这一过程并不是必需的,当然也可以使用系统默认用户方式避免用户多次登录。
[0086]步骤202:获得查询数据结果。
[0087]系统通过查询本地或远端数据库获得初步的查询结果,查询结果通常很多,为了实现个性化服务,所以需要根据查询结果触发推荐过程。
[0088]步骤203:使用最优预测矩阵过滤查询结果。
[0089]推荐系统根据当前用户查询历史对查询结果进行推荐,使用最优预测矩阵对初步的查询结果进行过滤,实现结果自动分类和重新排序。
[0090]步骤204:提供给用户过滤后的查询结果。
[0091]将过滤后的查询结果通过查询机提供给用户,得到个性化的服务体验,实现针对用户的个性化服务。并跟踪和保存用户对结果的交互信息。
[0092]在上述图1和图2中所示的两个实施例中,最优预测矩阵的获得过程为:利用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵任意两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵。详细步骤如图3所示,包括:
[0093]步骤301:生成用户集合和项目集合。
[0094]用户集合:US= Iu1, U2, , um};
[0095]项目集合:WS= (W1, W2, , wn};
[0096]其中Ui代表参与推荐过程的活动用户。对于系统中存在的但不再使用的用户以及特殊用户通常不参加推荐过程,可以有效提高系统效率。
[0097]Wi代表参与推荐过程的活动项目,对于不再使用的过期项目也不参与推荐过程,系统也可以指定某些特殊项目不参与推荐过程。
[0098]项目可以是系统提供的各种信息服务,通常可以是商品、文件、活动等。
[0099]步骤302:生成属性集合。
[0100]用户属性集合:UA= (P1, p2, , pk};
[0101]项目属性集合:WA= {q1; q2,..., qj ;
[0102]其中Pi代表在系统中参与推荐过程的用户某一方面的属性。也可能存在一些属性对推荐帮助不大,所以可以不包括对推荐意义不大的属性。同时也可以根据用户当前状态自动生成新的属性或者合并组合几个属性生成新的属性。qi代表在系统中参与推荐过程的项目某一方面的属性,不必是全体属性集合都参与推荐。同时也可以根据项目当前状态自动生成新的属性或者合并组合几个属性生成新的属性。
[0103]k和t分别表示参与推荐过程的用户属性数和项目属性数。
[0104]步骤303:生成相似度矩阵。
[0105]采用基于元路径的相似度计算方法分别计算用户与项目各个属性的相似度矩阵。
[0106]用户间关于属性Pi的相似度矩阵:U(Pi) e Rl < i ^ k);
[0107]项目间关于属性Qi的相似度矩阵=W(Qi) e Rl < i ^ t);
[0108]其中Riij代表表示i行j列的方阵。
[0109]步骤304:矩阵融合。
[0110]通过基于元路径的相似度计算后,对于用户来说可以得到多个用户相似度矩阵U(Pi),对于项目也可以得到多个项目相似度矩阵W(Qi)。
[0111]注意到对于有m个用户,η个项目的推荐系统来说,用户相似度矩阵是一个m行m列的方阵,同样项目相似度矩阵是一个η行η列的方阵,同时注意到用户-项目的评分矩阵是一个m行η列的矩阵。因此可以通过在用户-项目评分矩阵左乘用户相似度矩阵或者右乘项目相似度矩阵的方法来实现融合用户与项目属性的目的,因此分别可以通过如下三种方式进行信息融合:
[0112]融合方式1:(用户-项目评分矩阵)X (项目相似度矩阵)
[0113]融合方式2:(用户相似度矩阵)X (用户-项目评分矩阵)
[0114]融合方式3:(用户相似度矩阵)X (用户-项目评分矩阵)X (项目相似度矩阵)
[0115]其中融合方式3的示例如下:
[0116]

【权利要求】
1.一种基于异构信息网络的内容提供方法,在用户订阅了推荐服务时,使用最优预测矩阵向用户推荐内容,其特征在于:该最优预测矩阵利用异构信息网络,采用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵的两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵。
2.根据权利要求1所述的一种基于异构信息网络的内容提供方法,其特征在于,通过如下三种方式之一或多个进行矩阵融合: 融合方式1:(用户-项目评分矩阵)X (项目相似度矩阵) 融合方式2:(用户相似度矩阵)X (用户-项目评分矩阵) 融合方式3:(用户相似度矩阵)X (用户-项目评分矩阵)X (项目相似度矩阵)。
3.根据权利要求1所述的一种基于异构信息网络的内容提供方法,其特征在于, 获得最优预测矩阵的步骤,具体包括: 步骤一:生成用户集合和项目集合; 用户 集合:us = Iu1, U2,, UmI ; 项目集合:WS = (W1, w2,, wn}; 其中Ui代表参与推荐过程的活动用户;Wi代表参与推荐过程的活动项目; 步骤二:生成属性集合; 用户属性集合:UA = (P1, p2,, pj ;
项目属性集合:WA = {q” q2,..., qj ; 其中Pi代表在系统中参与推荐过程的用户某一方面的属性Wi代表在系统中参与推荐过程的项目某一方面的属性; 步骤三:生成相似度矩阵; 采用基于元路径的相似度计算方法分别计算用户与项目各个属性的相似度矩阵; 用户间关于属性Pi的相似度矩阵:U(Pi) e R-(O < i ^ k); 项目间关于属性Qi的相似度矩阵:W(qi) e Rn*n(0 < i ^ t); 其中Rw代表表示i行j列的方阵; 步骤四:矩阵融合; 通过基于元路径的相似度计算后,可以得到多个用户相似度矩阵U(Pi),和多个项目相似度矩阵W(Qi),将这些矩阵进行融合; 步骤五:协同过滤; 使用矩阵分解算法进行推荐预测; 步骤六:矩阵合并; 针对多个元路径和融合方法,以及多种矩阵分解方法运算后会得到多个结果预测矩阵,将这些预测矩阵合并获得最优预测矩阵。
4.根据权利要求1所述的一种基于异构信息网络的内容提供方法,其特征在于,在用户输入查询内容时,从数据库获得初步的查询结果,使用最优预测矩阵对该初步的查询结果进行过滤。
5.一种基于异构信息网络的内容提供系统,该系统包括:查询机:用户通过查询机登陆并向用户显示推荐内容; 存储机:存储各种数据; 最优预测矩阵生成器:从存储机获得数据,利用基于元路径的相似度计算方法分别得出用户和项目的相似度矩阵,利用矩阵相乘原理将用户相似度矩阵、用户-项目评分矩阵、项目相似度矩阵两个或三个进行融合,得到用户与项目之间的内在关系,之后再利用基于协同过滤的矩阵分解预测方法进行预测,最后合并结果,获得最优预测矩阵; 过滤选择器:使用最优预测矩阵向用户推荐内容。
6.根据权利要求5所述的一种基于异构信息网络的内容提供系统,其特征在于,信息融合生成器:通过如下三种方式之一或多个进行矩阵融合: 融合方式1:(用户-项目评分矩阵)X (项目相似度矩阵) 融合方式2:(用户相似度矩阵)X (用户-项目评分矩阵) 融合方式3:(用户相似度矩阵)X (用户-项目评分矩阵)X (项目相似度矩阵)。
7.根据权利要求5所述的一种基于异构信息网络的内容提供系统,其特征在于, 上述最优预测矩阵生成器包括: 集合生成器:用于生成用户集合和项目集合; 用户集合:US = Iu1, u2,, um}; 项目集合:WS = (W1, w2,, wn}; 其中Ui代表参与推荐过程的活动用户;Wi代表参与推荐过程的活动项目; 属性生成器:用于生成属性集合; 用户属性集合:UA = (P1, p2,, pj ;
项目属性集合:WA = {q” q2,..., qj ; 其中Pi代表在系统中参与推荐过程的用户某一方面的属性Wi代表在系统中参与推荐过程的项目某一方面的属性;k和t分别表示参与推荐过程的用户属性数和项目属性数;相似度矩阵生成器:用于生成相似度矩阵; 采用基于元路径的相似度计算方法分别计算用户与项目各个属性的相似度矩阵; 用户间关于属性Pi的相似度矩阵:U(Pi) e R-(O < i ≤k); 项目间关于属性Qi的相似度矩阵:W(qi) e Rn*n(0 < i ≤ t); 其中Rw代表表示i行j列的方阵; 信息融合生成器:用于矩阵融合; 通过基于元路径的相似度计算后,对于用户来说可以得到多个用户相似度矩阵U(Pi),对于项目也可以得到多个项目相似度矩阵W (?); 协同过滤器:用于协同过滤; 使用矩阵分解算法进行推荐预测; 合并器:用于结果预测矩阵合并; 针对多个元路径和融合方法,以及多种矩阵分解方法运算后会得到多个结果预测矩阵,将这些预测矩阵合并获得最优预测矩阵。
【文档编号】G06F17/30GK104077351SQ201410222787
【公开日】2014年10月1日 申请日期:2014年5月26日 优先权日:2014年5月26日
【发明者】张邦佐, 桂欣, 何涛, 杨晟雨, 孙焕垚, 韩宇茹 申请人:东北师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1