当前位置: 首页 > 专利查询>莫毓昌专利>正文

面向评分矩阵的多数据源融合方法技术

技术编号:25225322 阅读:18 留言:0更新日期:2020-08-11 23:14
本发明专利技术提供一种面向评分矩阵的多数据源融合方法,包括:获取分别来自两个数据源的评分矩阵;对两个评分矩阵进行分析,识别用户不一致的评分数据记录,并进行数据处理;对两个评分矩阵进行分析,识别商品不一致的评分数据记录,并进行数据处理;在对评分矩阵DS

【技术实现步骤摘要】
面向评分矩阵的多数据源融合方法
本专利技术属于数据融合处理
,具体涉及一种面向评分矩阵的多数据源融合方法。
技术介绍
互联网的出现和普及给用户带来了大量的信息,满足用户在信息时代对信息的需求,但随着网络的迅速发展,网上信息量大幅增长,使得用户在面对大量信息时无法从中获得对自己真正有用的信息,对信息的使用效率反而降低,这就是信息超载问题。解决信息超载问题一个非常有潜力的办法是推荐系统,推荐系统现已广泛应用于很多领域,其中最典型的应用领域是电子商务领域。在电子商务领域,现有商品推荐系统主要实现方式为:从多个电子商务平台收集购买用户对商品的评分数据;然后,对来源多个电子商务平台的评分数据进行汇总分析,得到反应用户购买特征的特征信息;最后,针对用户特征信息,实现对用户的个性化商品推荐。由此可见,来源多个电子商务平台的评分数据是实现精准推荐的基础,然后,在对来源多个电子商务平台的评分数据进行汇总时,主要存在以下问题:对于来源不同电子商务平台的评分矩阵,常常出现用户不一致或商品不一致的情况,其中,用户不一致是指:两个不同来源的评分矩阵中,用户ID相同,但实际上为不同的用户,例如,平台1中,小王的用户ID为1254874;而在平台2中,小李的用户ID同样为1254874。商品不一致是指:两个不同来源的评分矩阵中,商品ID相同,但实际上为不同的商品。因此,在对不同来源的评分矩阵进行汇总时,由于在数据汇总时已脱离平台,因此,当出现用户不一致或商品不一致的情况时,会导致数据汇总结果出现偏差,从而直接影响最终的商品推荐精准性。
技术实现思路
针对现有技术存在的缺陷,本专利技术提供一种面向评分矩阵的多数据源融合方法,可有效解决上述问题。本专利技术采用的技术方案如下:本专利技术提供一种面向评分矩阵的多数据源融合方法,包括以下步骤:步骤1,获取分别来自两个数据源的评分矩阵,分别为:评分矩阵DS1和评分矩阵DS2;其中,每个评分矩阵由多条评分数据记录组成;每条评分数据记录为某个用户标识的用户,对某个商品标识的商品进行的评分;步骤2,对两个评分矩阵进行分析,识别用户不一致的评分数据记录,并进行数据处理,方法如下:步骤2.1,遍历评分矩阵DS1中的用户标识以及评分矩阵DS2中的用户标识,判断是否存在评分矩阵DS1中的用户标识与评分矩阵DS2中的用户标识相同的情况,如果不存在,则执行步骤3;如果存在,则执行步骤2.2;步骤2.2,设评分矩阵DS1中的用户标识U1与评分矩阵DS2中的用户标识U2相同,则遍历评分矩阵DS1,查找到用户标识U1在评分矩阵DS1的所有评分数据记录,从而得到用户标识U1在评分矩阵DS1进行评分的商品集合P1;遍历评分矩阵DS2,查找到用户标识U2在评分矩阵DS2的所有评分数据记录,从而得到用户标识U2在评分矩阵DS2进行评分的商品集合P2;对商品集合P1和商品集合P2进行交集运算,得到共同商品集合P0=(p1,p2,...,pn);其中,n为共同商品集合P0中的商品数量;步骤2.3,对共同商品集合P0=(p1,p2,...,pn)中的商品种类进行分析,将属于同一商品种类的商品划分到一个子集合中,从而得到若干个子集合,对于每个子集合,均执行以下步骤:步骤2.3.1,设任意子集合为R0=(r1,r2,...,rm);m为子集合R0中的商品数量;步骤2.3.2,得到用户标识U1对子集合R0中的每个商品在评分矩阵DS1中的评分,得到评分集合Score1:Score1={score1(U1,r1),score1(U1,r2),...,score1(U1,rm)}其中:score1(U1,r1)代表用户标识U1对子集合R0中的商品r1在评分矩阵DS1中的评分;score1(U1,r2)代表用户标识U1对子集合R0中的商品r2在评分矩阵DS1中的评分;依此类推score1(U1,rm)代表用户标识U1对子集合R0中的商品rm在评分矩阵DS1中的评分;得到用户标识U2对子集合R0中的每个商品在评分矩阵DS2中的评分,得到评分集合Score2:Score2={score2(U2,r1),score2(U2,r2),...,score2(U2,rm)}其中:score2(U2,r1)代表用户标识U2对子集合R0中的商品r1在评分矩阵DS2中的评分;score2(U2,r2)代表用户标识U2对子集合R0中的商品r2在评分矩阵DS2中的评分;依此类推score2(U2,rm)代表用户标识U2对子集合R0中的商品rm在评分矩阵DS2中的评分;步骤2.3.3,分析比较评分集合Score1和评分集合Score2,得到所有满足以下条件的一致性用户评分序对,所有的一致性用户评分序对形成一致性用户评分序对集合Con;而所有的非一致性用户评分序对形成非一致性用户评分序对集合NCon:一致性用户评分序对判断条件:1)评分集合Score1中的两个不同元素,score1(U1,ra)和score1(U1,rb),其中,a≠b;评分集合Score2中的两个不同元素:score2(U2,ra)和score2(U2,rb);2)如果score1(U1,ra)≤score1(U1,rb)时,score2(U2,ra)≤score2(U2,rb);或者,如果score1(U1,ra)≥score1(U1,rb)时,score2(U2,ra)≥score2(U2,rb),即:用户标识U1对评分矩阵DS1中两个不同商品的评分高低感受,与用户标识U2对评分矩阵DS2中的同样两个商品的评分高低感受一致,则两个用户评分序对(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为一致性用户评分序对;相反,如果score1(U1,ra)≤score1(U1,rb)时,score2(U2,ra)>score2(U2,rb);或者,如果score1(U1,ra)≥score1(U1,rb)时,score2(U2,ra)<score2(U2,rb),则两个用户评分序对(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为非一致性用户评分序对;步骤2.3.4,对于一致性用户评分序对集合Con中的每一对一致性用户评分序对,采用下式计算一致性用户评分序对距离值,然后将一致性用户评分序对集合Con中每个一致性用户评分序对对应的距离值相加,得到一致性集合距离值Dcon;如果(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为一致性用户评分序对,则一致性用户评分序对距离值为:max{|score1(U1,ra)-score2(U2,ra)|,|(sc本文档来自技高网
...

【技术保护点】
1.一种面向评分矩阵的多数据源融合方法,其特征在于,包括以下步骤:/n步骤1,获取分别来自两个数据源的评分矩阵,分别为:评分矩阵DS

【技术特征摘要】
1.一种面向评分矩阵的多数据源融合方法,其特征在于,包括以下步骤:
步骤1,获取分别来自两个数据源的评分矩阵,分别为:评分矩阵DS1和评分矩阵DS2;其中,每个评分矩阵由多条评分数据记录组成;每条评分数据记录为某个用户标识的用户,对某个商品标识的商品进行的评分;
步骤2,对两个评分矩阵进行分析,识别用户不一致的评分数据记录,并进行数据处理,方法如下:
步骤2.1,遍历评分矩阵DS1中的用户标识以及评分矩阵DS2中的用户标识,判断是否存在评分矩阵DS1中的用户标识与评分矩阵DS2中的用户标识相同的情况,如果不存在,则执行步骤3;如果存在,则执行步骤2.2;
步骤2.2,设评分矩阵DS1中的用户标识U1与评分矩阵DS2中的用户标识U2相同,则遍历评分矩阵DS1,查找到用户标识U1在评分矩阵DS1的所有评分数据记录,从而得到用户标识U1在评分矩阵DS1进行评分的商品集合P1;
遍历评分矩阵DS2,查找到用户标识U2在评分矩阵DS2的所有评分数据记录,从而得到用户标识U2在评分矩阵DS2进行评分的商品集合P2;
对商品集合P1和商品集合P2进行交集运算,得到共同商品集合P0=(p1,p2,...,pn);其中,n为共同商品集合P0中的商品数量;
步骤2.3,对共同商品集合P0=(p1,p2,...,pn)中的商品种类进行分析,将属于同一商品种类的商品划分到一个子集合中,从而得到若干个子集合,对于每个子集合,均执行以下步骤:
步骤2.3.1,设任意子集合为R0=(r1,r2,...,rm);m为子集合R0中的商品数量;
步骤2.3.2,得到用户标识U1对子集合R0中的每个商品在评分矩阵DS1中的评分,得到评分集合Score1:
Score1={score1(U1,r1),score1(U1,r2),...,score1(U1,rm)}
其中:
score1(U1,r1)代表用户标识U1对子集合R0中的商品r1在评分矩阵DS1中的评分;
score1(U1,r2)代表用户标识U1对子集合R0中的商品r2在评分矩阵DS1中的评分;
依此类推
score1(U1,rm)代表用户标识U1对子集合R0中的商品rm在评分矩阵DS1中的评分;
得到用户标识U2对子集合R0中的每个商品在评分矩阵DS2中的评分,得到评分集合Score2:
Score2={score2(U2,r1),score2(U2,r2),...,score2(U2,rm)}
其中:
score2(U2,r1)代表用户标识U2对子集合R0中的商品r1在评分矩阵DS2中的评分;
score2(U2,r2)代表用户标识U2对子集合R0中的商品r2在评分矩阵DS2中的评分;
依此类推
score2(U2,rm)代表用户标识U2对子集合R0中的商品rm在评分矩阵DS2中的评分;
步骤2.3.3,分析比较评分集合Score1和评分集合Score2,得到所有满足以下条件的一致性用户评分序对,所有的一致性用户评分序对形成一致性用户评分序对集合Con;而所有的非一致性用户评分序对形成非一致性用户评分序对集合NCon:
一致性用户评分序对判断条件:
1)评分集合Score1中的两个不同元素,score1(U1,ra)和score1(U1,rb),其中,a≠b;
评分集合Score2中的两个不同元素:score2(U2,ra)和score2(U2,rb);
2)如果score1(U1,ra)≤score1(U1,rb)时,score2(U2,ra)≤score2(U2,rb);
或者,如果score1(U1,ra)≥score1(U1,rb)时,score2(U2,ra)≥score2(U2,rb),即:用户标识U1对评分矩阵DS1中两个不同商品的评分高低感受,与用户标识U2对评分矩阵DS2中的同样两个商品的评分高低感受一致,则两个用户评分序对(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为一致性用户评分序对;
相反,如果score1(U1,ra)≤score1(U1,rb)时,score2(U2,ra)>score2(U2,rb);
或者,如果score1(U1,ra)≥score1(U1,rb)时,score2(U2,ra)<score2(U2,rb),则两个用户评分序对(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为非一致性用户评分序对;
步骤2.3.4,对于一致性用户评分序对集合Con中的每一对一致性用户评分序对,采用下式计算一致性用户评分序对距离值,然后将一致性用户评分序对集合Con中每个一致性用户评分序对对应的距离值相加,得到一致性集合距离值Dcon;
如果(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为一致性用户评分序对,则一致性用户评分序对距离值为:
max{|score1(U1,ra)-score2(U2,ra)|,|(score1(U1,rb)-score2(U2,rb)|}
对于非一致性用户评分序对集合NCon中的每一对非一致性用户评分序对,采用下式计算非一致性用户评分序对距离值,然后将非一致性用户评分序对集合NCon中每个非一致性用户评分序对对应的距离值相加,得到非一致性集合距离值Dncon:
如果(score1(U1,ra),score2(U2,ra))和(score1(U1,rb),score2(U2,rb))为非一致性用户评分序对,则非一致性用户评分序对距离值为:
max{|score1(U1,ra)-score2(U2,ra)|,|(score1(U1,rb)-score2(U2,rb)|}
步骤2.3.5,采用下式计算评分矩阵DS1中用户标识U1与评分矩阵DS2中用户标识U2之间的用户相似度sim1:



其中:
|Con|代表一致性用户评分序对集合Con中的元素数量;
|NCon|代表非一致性用户评分序对集合NCon中的元素数量;

【专利技术属性】
技术研发人员:莫毓昌
申请(专利权)人:莫毓昌
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1