CN103514255A - 一种基于项目层次类别的协同过滤推荐方法 - Google Patents

一种基于项目层次类别的协同过滤推荐方法 Download PDF

Info

Publication number
CN103514255A
CN103514255A CN201310290988.5A CN201310290988A CN103514255A CN 103514255 A CN103514255 A CN 103514255A CN 201310290988 A CN201310290988 A CN 201310290988A CN 103514255 A CN103514255 A CN 103514255A
Authority
CN
China
Prior art keywords
project
user
scoring
category
similarity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310290988.5A
Other languages
English (en)
Other versions
CN103514255B (zh
Inventor
唐震
陈立全
朱瑶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Humorous Cloud Intelligence Science And Technology Ltd
Original Assignee
Jiangsu Humorous Cloud Intelligence Science And Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Humorous Cloud Intelligence Science And Technology Ltd filed Critical Jiangsu Humorous Cloud Intelligence Science And Technology Ltd
Priority to CN201310290988.5A priority Critical patent/CN103514255B/zh
Publication of CN103514255A publication Critical patent/CN103514255A/zh
Application granted granted Critical
Publication of CN103514255B publication Critical patent/CN103514255B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • G06Q30/0629Directed, with specific intent or strategy for generating comparisons

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于项目层次类别的协同过滤推荐方法,包括偏好描述、项目类别评分、相似度计算和预测评分四个处理步骤;偏好描述完成对用户的偏好进行建模,生成用户-项目评分矩阵;项目类别评分定义用户对已购买项目类别的评分,并利用关联规则定义项目类别之间的相似度,推导出用户对未购买项目类别的评分;相似度计算通过相似度计算公式得到系统中两两项目之间的相似程度;预测评分步骤预测用户对未评过分的项目的评分。本发明通过增加项目层次类别因素,建立新的相似度公式,削弱了由于用户-项目矩阵过于稀疏对于项目相似度准确率的影响,使得两两项目之间的相似度为0的概率降低,显著提高推荐的准确度,可应用于数据挖掘及推荐系统等领域。

Description

一种基于项目层次类别的协同过滤推荐方法
技术领域
本发明提出一种基于项目层次类别的协同过滤推荐方法,属于计算机数据挖掘推荐技术领域。
背景技术
随着 Web2.0 的发展,电子商务网站更加侧重于用户参与度和用户贡献。伴随着用户频繁地访问Web站点,系统通常会生成大量的用户数据,这些数据记录着用户的行为。基于这些用户行为的推荐方法是个性化推荐系统的重要方法,学术界一般将这种类型的方法称为协同过滤推荐方法。
协同过滤方法的原理是根据用户对项目的偏好,发现用户之间的相关性,或者是发现项目之间的相关性,然后再基于这些相关性进行推荐。可见,基于协同过滤的推荐引擎的核心功能在于计算两个用户或两个项目之间的相似程度,这种相似程度将用于后续的推荐。整个方法基于这样一个假设:喜欢类似项目的用户可能有相同或者相似的口味和偏好。
协同过滤方法最大的优点在于能够挖掘出用户的潜在兴趣,给出更好的推荐效果。当输入推荐引擎的用户和项目数据比较完善时,协同过滤方法通常会表现出比较优的推荐性能,但是,随着网站内容的逐渐复杂、网站使用人数的不断增加,该方法逐渐暴露出难以克服的缺点,例如用户项目矩阵稀疏性问题。
稀疏性问题指系统的用户-项目评分矩阵稀疏,这是由于系统中用户购买项目的总数量占网站总项目量的比率极低的原因造成的。这种数据量大但极为稀疏的情况,给准确地定位最近邻居集带来了极大的困难。例如,两个同类型项目可能由于矩阵的稀疏造成用户集没有重叠,造成它们不能被正确地识别为邻居项目。
对于矩阵过于稀疏的问题,有两种基本的解决方案。一种是降低矩阵的维度,这个在当前系统大数据量的发展趋势下不适用;另一种方案就是用特定的值填充矩阵,降低矩阵的稀疏程度,但实现上效果不好。本发明通过对传统的基于项目的协同过滤方法的改进,降低稀疏的用户-项目评分矩阵对于相似度精度的影响。
本发明综合考虑项目类别因素,并将其加入到相似度计算及评分计算中,提高推荐精确度。具体的做法是根据系统中用户-项目评分情况数据集,用关联规则推导出用户对系统中每个项目类别的偏好,将这一属性纳入项目相似度公式进行计算,降低相似度为0的概率,给出更贴近用户真实需求的推荐。
详细地说,本发明的项目类别评分有两个关键步骤,首先,需要采用一定计算逻辑得到用户对已知类别的评分,下一步是对未知项目类别评分进行推导。在未知项目类别评分推导方面,由于用户此前没有对这个类别进行任何访问,那么这个评分就不能从用户的历史行为中获取到,可以考虑的途径之一是通过系统内整体数据集推测用户对这个类别的评分。推导过程基于这样一个考虑:如果两个类别的项目经常被一起购买,那么这两个类别或者是属于同一个父类类别,或者是相辅相成的两个类别。对于前一种情况,这两个类别之间的相似度很高,用户完全有可能同时喜欢这两个类别的项目,比如服饰类的两个子类别:上装和下装。对于后一种情况,目标用户可能也需要另外一种类别的项目,例如咖啡和砂糖。所以,需根据此对每两个项目类别赋予一个相似性权重,结合用户已经评分的项目类别进行加权平均,这样就可以推测出用户对这个类别的喜爱程度。
衡量经常同时出现的两个项目,需使用到关联规则中频繁模式的概念。频繁地出现在系统数据集中的模式(如项集、子序列或子结构)就是频繁模式,例如,频繁地同时出现在交易数据集中的两个项目类别就是频繁模式。通过对系统中业务数据的分析,可以得到反映项目频繁同时购买的购买模式。这些模式可以用关联规则的形式表示。关联规则的支持度( support )和置信度( confidence )是规则兴趣度的两种约束条件,这两个度量条件分别反映了所发现的规则的有用性和确定性。关联规则的支持度为2%意味着所分析的所有事务中,2%同时购买了项目1和项目2,置信度60%意味着购买项目1的用户中有60%同时购买了项目2。同时大于最小支持度阈值( min_sup )以及最小置信度阈值( min_conf )的规则称为强关联规则,关联规则反映了一个事件和其他事件之间依赖或关联的知识。
在本发明中,满足强关联规则的两个项目类别会被识别为经常一起出现的项目类别。计算过程中对不同的关联情况,为两两项目类别赋予合适的相似度系数,用于预测未购买项目类别的评分。
在已有发明方面,申请号为200910207100.0的 “用于面向排序的协同过滤的推荐方法和设备” 发明公开了一种基于用户对排序的项目对的偏好数据而建立的模型;而申请号为201210389800.8的“一种协同过滤推荐模型的优化训练方法”发明侧重保护推荐模型训练方面内容;而申请号201110382078.0的“基于评分的协同过滤推荐方法及系统”发明公开了一种基于评分的协同过滤推荐方法。上述的专利均没有涉及或公开基于项目类别的协同过滤评分推荐技术。
发明内容
本发明通过在传统的基于项目的协同过滤方法中增加用户对项目类别的评分,结合关联规则的知识,定义新的相似度计算的步骤和预测评分的步骤,从而提高寻找相似项目的准确度,进而提高推荐准确率。
所述的一种基于项目层次类别的协同过滤推荐方法,其包括偏好描述、项目类别评分、相似度计算和预测评分四个处理步骤;待处理的源数据首先输入偏好描述步骤,得到便于评分处理的用户行为向量;项目类别评分步骤计算用户对系统中各个项目类别的评分因子;相似度计算步骤对相似度系数进行修正;最后,将项目类别评分因子和相似度系数等输入到预测评分步骤,计算用户对未购买项目的评分,并按预测评分高低进行排名并输出推荐结果。
所述的基于项目层次类别的协同过滤推荐方法中,偏好描述步骤将显式或隐式的用户历史行为映射到具体的用户-项目评分矩阵上;项目类别评分步骤遍历用户历史行为数据库,用关联规则推导出用户对每个项目类别的偏好数据,其包括4个功能处理模块:已知项目类别评分模块遍历用户的历史行为,得到用户对已购买项目的评分;项目类别相似度模块根据关联规则以及用户对各个项目类别的行为,对每两个项目类别赋予相似权重;未知项目类别评分模块根据已知项目类别评分模块和项目类别相似度模块,计算用户对未知项目类别的评分;项目类别评分因子模块综合未知项目类别评分模块和已知项目类别评分模块,得到每个用户对系统中每个项目类别的喜爱程度因子。
所述的方法中,相似度计算步骤根据偏好描述步骤以及项目类别评分模块步骤的处理结果,基于相似度公式,得到对于每个用户,系统中每两个项目之间的相似程度,用于预测评分的计算。
而预测评分步骤利用相似度以及用户已经评过分的项目,对用户没有接触过的项目进行打分,根据预测评分的高低对项目进行排名。
所述的一种基于项目层次类别的协同过滤推荐方法中,项目类别评分的具体步骤如下:首先,要根据用户的历史行为得到用户对已知项目类别评分模块,假设rij代表用户i对各种项目的购买和评分情况,值为0则代表该用户对此项目没有过任何行为;定义用户对某个项目类别的评分为用户对这个项目类别下所有项目的评分的均值,假设类别Ik有n个项目i1,i2,i3…in,则用户u对Ik的评分为:
R u , I k = Σ t = 1 n r u i t n   ;
在得到用户对已购买项目的评分之后,将根据所有的用户评分数据得到项目类别之间的项目类别间相似度模块;设定每个项目都属于一个项目类别,而每个类别都属于一个父类类别,没有交叉从属关系;假设系统中有n个项目类别,所有的项目都属于n个类别中的1个,采用如下规则定义项目类别i和项目类别j之间的相似权重:
P i , j = 1 i = j 0.8 i ⇒ j , U ( i ) = U ( j ) 0.6 i ⇒ j , U ( i ) ≠ U ( j ) 0.4 U ( i ) = U ( j ) 0.2 U ( i ) ⇒ U ( j ) 0 otherwise ;
其中,U (i)和U (j)分别表示项目类别i和项目类别j的父类, 表示两个类别i和j 之间存在强关联关系,同理,U (i)=>U (j)表示i和j的父类类别之间存在强关联关系。
已知项目类别评分模块和项目类别相似度模块的结果输入未知项目类别评分模块,对用户未购买的项目类别进行评分;假设用户i已经评过分的项目类别集合为T={t1,t2,t3,t4…},对于不属于T的项目类别tk,用户i对该项目类别的评分可以用以下加权平均公式描述:
Pt i , t k = Σ t j ∈ T P t j , t k * R i , t j Σ t j ∈ T P t j , t k
其中i表示用户,tk表示待评分的项目类别;tj∈T,为用户评过分的项目类别,
Figure BDA0000349414665
表示用户i对项目类别tk的预测评分。
对已知项目类别评分模块和未知项目类别评分模块的结果输入项目类别评分因子模块,得到用户对系统中所有项目类别的偏好,用户u对类别j的最终评分权重为:
ρ u , j = R uj Σ i = 1 n R ui / n
所述的一种基于项目层次类别的协同过滤推荐方法中,通过项目类别评分步骤得出了用户对所有的项目类别的评分因子,而相似度计算步骤建立新的相似度计算公式。假设项目x的用户评分向量为X={r1x,r2x,…,rmx},项目y的用户评分向量为Y={r1y,r2y,…,rmy},其中,m为用户的个数,那么对于特定的用户d,项目x和y的相似度为:
sim d , xy = &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t x &rho; d , t y if &rho; d , t x < &rho; d , t y &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t y &rho; d , t x if &rho; d , t x > &rho; d , t y   ;
其中,
Figure BDA0000349414668
表示用户d对项目x所在的类别tx的评分权重,
Figure BDA0000349414669
表示用户d对项目y所在的类别ty的评分权重。
预测评分步骤需要使用加权数据,可以直接使用相似度作为权重,得到最终的预测评分公式:
P d , i = [ R 1 &OverBar; + &Sigma; j &Element; NB S i sim d , ij &times; ( R d , j - R j &OverBar; ) &Sigma; j &Element; NBS i sim d , ij ] &times; R d , t i   ;
其中, i和j为项目,d为用户,Pd,i表示用户d对项目i的预测评分,NBSi表示在项目i的邻居范围内查找项目j,
Figure BDA00003494146611
Figure BDA00003494146612
表示项目i和项目j在系统中的平均评分,simd,ij代表对于用户d,项目i和j的相似度,Rj,d代表用户d对项目j的评分。
最后,得出用户对没有购买过的项目的预测评分后,再按照预测评分的高低进行排序,取排名最靠前的多个项目组成对用户的推荐列表。
本发明具有以下有益效果:
提出的基于项目层次类别的协同过滤推荐方法具有准确度高、性能可靠及计算复杂度低等优点。通过增加项目层次类别因素,并对相似度公式进行修改,削弱了由于用户-项目矩阵过于稀疏对于项目相似度准确率的影响,使得两两项目之间的相似度为0的概率降低,实现了更加准确地定位邻居项目集。
同时,通过对总体数据集的分析,推导出每个用户对系统中不同项目类别的偏好,既考虑了系统中总体的购买情况,又结合了用户自己的购买行为,对每个用户区分考虑,得到的推荐值更可靠有效。最后,计算用户对项目类别的偏好只需要对系统购买数据库进行遍历,涉及到的计算逻辑简单,计算复杂度低。
附图说明
图1是基于项目层次类别的协同过滤推荐方法步骤关系框图;
图2是项目类别评分的关键步骤模块框图;
图3是系统中项目类别及项目树状关系图。
具体实施方式
下面结合参考附图和实施例来详细说明本发明。
如图1所示,本发明实现的基于项目层次类别的协同过滤推荐方法共由4个处理步骤构成,分别是偏好描述101、项目类别评分102、相似度计算103以及预测评分104处理步骤。
1)偏好描述101步骤:将显式或隐式的用户历史行为映射到具体的用户-项目评分,显式的评分有利于系统进行处理,隐式的用户偏好也可以采用合适的评分公式得到。
2)项目类别评分计算102步骤:遍历用户历史行为数据库,用关联规则推导出用户对每个项目类别的偏好。其还包括4个处理模块:已知项目类别评分模块201将遍历用户的历史行为,得到用户对已购买项目的评分;项目类别相似度模块202将根据关联规则以及用户对各个项目类别的行为,对每两个项目类别赋予相似权重;未知项目类别评分模块203将根据已知项目类别评分模块201和项目类别相似度模块202,计算用户对未知项目类别的评分;项目类别评分因子模块204根据未知项目类别评分模块203和已知项目类别评分模块201,得到每个用户对系统中每个项目类别的喜爱程度因子。
3)相似度计算103步骤:根据偏好描述101以及项目类别评分102,基于相似度公式,得到对于每个用户,系统中每两个项目之间的相似程度,用于预测评分的计算。
4)预测评分104:利用相似度以及用户已经评过分的项目,对用户没有接触过的项目进行打分,根据预测评分的高低对项目进行排名,最终得到各个用户的推荐列表。
图2细分描述了项目类别评分102步骤的组成,主要包括对已知项目评分模块201、项目类别相似度模块202、未知项目类别评分模块203和项目类别评分因子模块204。
首先,要根据用户的历史行为得到用户对已知项目类别评分模块201。为方便说明,假设2个用户对系统中几个项目的评分如下:
表1 系统中用户对项目的评分
Figure BDA00003494146613
上表中,I1、I2和I3为3种三种项目的类别,项目i1-i7分别属于这三种类别,项目i1、i2和i3属于类别I1,项目i4和i5属于类别I2,项目i6和i7属于类别I3。rij代表用户1和2对7种项目的购买和评分情况,值为0则代表该用户对此项目没有过任何行为。定义用户对某个项目类别的评分为用户对这个项目类别下所有项目的评分的均值,假设类别Ik有n个项目i1,i2,i3…in,则用户u对Ik的评分为:
R u , I k = &Sigma; t = 1 n r u i t n
根据上述公式,可以得到用户1和用户2对所有已购买类别的评分,评分情况如下表所示:
表2 用户对已知项目类别的评分
项目类别 I1 I2 I3
用户1 (r11+ r12)/2 0 (r16+ r17)/2
用户2 (r21+ r22+ r23)/3 r25 (r26+ r27)/2
在得到用户对已购买项目的评分之后,根据所有的用户评分数据得到项目类别之间的相似度,这一步需要借助关联规则。
图3系统中项目类别及项目树状关系图。在图3所示的项目类别树中,圆圈表示的是用户进行购买的项目,方框表示的是项目类别,即,项目a、b和c属于同一个项目类别A,项目d和项目e属于项目类别B,项目f、g和h属于项目类别C,同时,项目类别A、B和C又属于同一父类类别Ⅰ。整个项目系统就是由很多这样的项目类别树组成,每个项目都属于一个项目类别,而每个类别都属于一个父类类别,没有交叉从属关系。
假设系统中有n个项目类别,所有的项目都属于n个类别中的1个,采用如下规则定义项目类别i和项目类别j之间的相似权重:
P i , j = 1 i = j 0.8 i &DoubleRightArrow; j , U ( i ) = U ( j ) 0.6 i &DoubleRightArrow; j , U ( i ) &NotEqual; U ( j ) 0.4 U ( i ) = U ( j ) 0.2 U ( i ) &DoubleRightArrow; U ( j ) 0 otherwise ;
其中,U (i)和U (j)分别表示项目类别i和项目类别j的父类,i?j表示两个类别i和j 之间存在强关联关系,同理,U (i)=>U (j)表示i和j的父类类别之间存在强关联关系。
已知项目类别评分模块201和项目类别相似度模块202的结果输入未知项目类别评分模块203,对用户未购买的项目类别进行评分。
假设用户i已经评过分的项目类别集合为T={t1,t2,t3,t4…},对于不属于T的项目类别tk,用户i对该项目类别的评分可以用以下加权平均公式描述: Pt i , t k = &Sigma; t j &Element; T P t j , t k * R i , t j &Sigma; t j &Element; T P t j , t k
其中i表示用户,tk表示待评分的项目类别;tj∈T,为用户评过分的项目类别,
Figure BDA00003494146617
表示用户i对项目类别tk的预测评分。结合表2中描述的对已购买项目类别的评分,以及上述公式就可以得出用户对某未知项目类别tk的评分。
举例说明,基于上述公式,对照表2节中的评分列表,用户1对项目类别I1的评分为(r11+ r12)/2,对项目类别I3的评分为(r16+ r17)/2,为了说明方便,用R11表示用户1对项目类别1的评分,用R13代表用户1对项目类别3的评分,而用户因为没有购买过类别2的项目,所以R12暂时空缺,我们根据上面的公式计算这个评分。假设类别2与类别1的相似权重为P21,类别2与类别3的相似权重为P23,得到
Figure BDA00003494146618
,这是用户1对未购买项目类别2的预测评分。
对已知项目类别评分模块201和未知项目类别评分模块203的结果输入项目类别评分因子模块204,可得到用户对系统中所有项目类别的偏好,下表3是用户1对5类别例子中所有项目类别的评分。
表3 用户1对系统中所有项目类别的评分
类别1 类别2 类别3 类别4 类别5
用户1 R11 R12 R13 R14 R15
那么用户1对类别1的最终评分权重为:
&rho; 1 , 1 = R 11 ( R 11 + R 12 + R 13 + R 14 + R 15 ) / 5
以此类推,可以得到每个用户对系统中所有项目类别的评分权重。
基于项目类别评分102得出的用户对所有的项目类别的评分因子,在相似度计算103中建立相似度计算公式。
在一个系统中,通常需要根据具体需求以及系统要求的不同选择不同的相似度计算公式。假设项目x的用户评分向量为X={r1x,r2x,…,rmx},项目y的用户评分向量为Y={r1y,r2y,…,rmy},其中,m为用户的个数,那么对于特定的用户d,项目x和y的相似度为:
sim d , xy = &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t x &rho; d , t y if &rho; d , t x < &rho; d , t y &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t y &rho; d , t x if &rho; d , t x > &rho; d , t y 公式6
其中,
Figure BDA00003494146621
表示用户d对项目x所在的类别tx的评分权重,
Figure BDA00003494146622
表示用户d对项目y所在的类别ty的评分权重,加号左边是Tanimoto相关系数的计算公式,加号右边的项表示对于用户d,两种项目类别的相关程度。
本发明最后步骤是预测评分104处理。预测评分步骤需要使用加权数据,可以直接使用相似度作为权重,得到最终的预测评分公式:
P d , i = [ R 1 &OverBar; + &Sigma; j &Element; NB S i sim d , ij &times; ( R d , j - R j &OverBar; ) &Sigma; j &Element; NBS i sim d , ij ] &times; R d , t i
其中, i和j为项目,d为用户,Pd,i表示用户d对项目i的预测评分,NBSi表示在项目i的邻居范围内查找项目j,
Figure BDA00003494146624
Figure BDA00003494146625
表示项目i和项目j在系统中的平均评分,simd,ij代表对于用户d,项目i和j的相似度,Rj,d代表用户d对项目j的评分。
最后,得出用户对没有购买过的项目的预测评分后,再按照预测评分的高低进行排序,取排名最靠前的多个项目组成对用户的推荐列表。

Claims (4)

1.一种基于项目层次类别的协同过滤推荐方法,其特征在于,所述方法包括偏好描述(101)、项目类别评分(102)、相似度计算(103)和预测评分(104)四个处理步骤;待处理的源数据首先输入偏好描述(101)步骤,得到便于评分处理的用户行为向量;项目类别评分(102)步骤计算用户对系统中各个项目类别的评分因子;相似度计算(103)步骤对相似度系数进行修正;最后,将项目类别评分因子和相似度系数等输入到预测评分(104)步骤,计算用户对未购买项目的评分,并按预测评分高低进行排名并输出推荐结果。
2.如权利要求1所述的一种基于项目层次类别的协同过滤推荐方法,其特征在于,各步骤中,偏好描述(101)步骤将显式或隐式的用户历史行为映射到具体的用户-项目评分矩阵上;项目类别评分(102)步骤遍历用户历史行为数据库,用关联规则推导出用户对每个项目类别的偏好数据,并包括4个功能处理模块:已知项目类别评分模块(201)遍历用户的历史行为,得到用户对已购买项目的评分;项目类别相似度模块(202)根据关联规则以及用户对各个项目类别的行为,对每两个项目类别赋予相似权重;未知项目类别评分模块(203)根据已知项目类别评分模块(201)和项目类别相似度模块(202),计算用户对未知项目类别的评分;项目类别评分因子模块(204)综合未知项目类别评分模块(203)和已知项目类别评分模块(201),得到每个用户对系统中每个项目类别的喜爱程度因子;
相似度计算(103)步骤根据偏好描述(101)步骤以及项目类别评分(102)步骤的处理结果,基于相似度公式,得到对于每个用户,系统中每两个项目之间的相似程度,用于预测评分的计算;
预测评分(104)步骤利用相似度以及用户已经评过分的项目,对用户没有接触过的项目进行打分,根据预测评分的高低对项目进行排名。
3.如权利要求1所述的一种基于项目层次类别的协同过滤推荐方法,其特征在于,项目类别评分(102)的具体步骤如下:首先,要根据用户的历史行为得到用户对已知项目类别评分模块(201),假设rij代表用户i对各种项目的购买和评分情况,值为0则代表该用户对此项目没有过任何行为;定义用户对某个项目类别的评分为用户对这个项目类别下所有项目的评分的均值,假设类别Ik有n个项目i1,i2,i3…in,则用户u对Ik的评分为:
R u , I k = &Sigma; t = 1 n r ui t n  ;
在得到用户对已购买项目的评分之后,将根据所有的用户评分数据得到项目类别之间的项目类别间相似度模块(202);设定每个项目都属于一个项目类别,而每个类别都属于一个父类类别,没有交叉从属关系;假设系统中有n个项目类别,所有的项目都属于n个类别中的1个,采用如下规则定义项目类别i和项目类别j之间的相似权重:
P i , j = 1 i = j 0.8 i &DoubleRightArrow; j , U ( i ) = U ( j ) 0.6 i &DoubleRightArrow; j , U ( i ) &NotEqual; U ( l ) 0.4 U ( i ) = U ( j ) 0.2 U ( i ) &DoubleRightArrow; U ( j ) 0 otherwise ;
其中,U (i)和U (j)分别表示项目类别i和项目类别j的父类,ij表示两个类别i和j 之间存在强关联关系,同理,U (i)=>U (j)表示i和j的父类类别之间存在强关联关系;
已知项目类别评分模块(201)和项目类别相似度模块(202)的结果输入未知项目类别评分模块(203),对用户未购买的项目类别进行评分;假设用户i已经评过分的项目类别集合为T={t1,t2,t3,t4…},对于不属于T的项目类别tk,用户i对该项目类别的评分可以用以下加权平均公式描述:
Pt i , t k = &Sigma; t j &Element; T P t j , t k * R i , t j &Sigma; t j &Element; T P t j , t k
其中i表示用户,tk表示待评分的项目类别;tj∈T,为用户评过分的项目类别,
Figure FDA0000349414654
表示用户i对项目类别tk的预测评分;
对已知项目类别评分模块(201)和未知项目类别评分模块(203)的结果输入项目类别评分因子模块(204),得到用户对系统中所有项目类别的偏好,用户u对类别j的最终评分权重为:
&rho; u , j = R uj &Sigma; i = 1 n R ui / n   。
4.如权利要求1所述的一种基于项目层次类别的协同过滤推荐方法,其特征在于,项目类别评分(102)步骤得出了用户对所有的项目类别的评分因子,相似度计算(103)步骤建立新的相似度计算公式;假设项目x的用户评分向量为X={r1x,r2x,…,rmx},项目y的用户评分向量为Y={r1y,r2y,…,rmy},其中,m为用户的个数,那么对于特定的用户d,项目x和y的相似度为:
sim d , xy = &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t x &rho; d , t y if &rho; d , t x < &rho; d , t y &Sigma; i = 1 m r ix r iy &Sigma; i = 1 m r ix 2 + &Sigma; i = 1 m r iy 2 - &Sigma; i = 1 m r ix r iy + &rho; d , t y &rho; d , t x if &rho; d , t x > &rho; d , t y    ;
其中,
Figure FDA0000349414657
表示用户d对项目x所在的类别tx的评分权重,
Figure FDA0000349414658
表示用户d对项目y所在的类别ty的评分权重;
预测评分步骤直接使用相似度作为权重,得到最终的预测评分公式:
P d , i = [ R 1 &OverBar; + &Sigma; j &Element; NB S i sim d , ij &times; ( R d , j - R j &OverBar; ) &Sigma; j &Element; NB S i si m d , ij ] &times; &rho; d , t i   ;
其中, i和j为项目,d为用户,Pd,i表示用户d对项目i的预测评分,NBSi表示在项目i的邻居范围内查找项目j,
Figure FDA00003494146510
Figure FDA00003494146511
表示项目i和项目j在系统中的平均评分,simd,ij代表对于用户d,项目i和j的相似度,Rj,d代表用户d对项目j的评分;得出用户对没有购买过的项目的预测评分后,再按照预测评分的高低进行排序,取排名最靠前的多个项目组成对用户的推荐列表。
CN201310290988.5A 2013-07-11 2013-07-11 一种基于项目层次类别的协同过滤推荐方法 Expired - Fee Related CN103514255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310290988.5A CN103514255B (zh) 2013-07-11 2013-07-11 一种基于项目层次类别的协同过滤推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310290988.5A CN103514255B (zh) 2013-07-11 2013-07-11 一种基于项目层次类别的协同过滤推荐方法

Publications (2)

Publication Number Publication Date
CN103514255A true CN103514255A (zh) 2014-01-15
CN103514255B CN103514255B (zh) 2017-04-05

Family

ID=49896979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310290988.5A Expired - Fee Related CN103514255B (zh) 2013-07-11 2013-07-11 一种基于项目层次类别的协同过滤推荐方法

Country Status (1)

Country Link
CN (1) CN103514255B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104035982A (zh) * 2014-05-28 2014-09-10 小米科技有限责任公司 多媒体资源推荐方法及装置
CN104504059A (zh) * 2014-12-22 2015-04-08 合一网络技术(北京)有限公司 多媒体资源推荐方法
CN104700152A (zh) * 2014-10-22 2015-06-10 浙江中烟工业有限责任公司 一种融合季节销售信息与搜索行为信息的烟草销量预测方法
CN105096149A (zh) * 2014-05-09 2015-11-25 华为软件技术有限公司 业务内容产品关联分析方法及装置
CN105260458A (zh) * 2015-10-15 2016-01-20 海信集团有限公司 一种用于显示装置的视频推荐方法及显示装置
CN106095761A (zh) * 2015-12-16 2016-11-09 段云涛 一种多准则目标决策方法及装置
CN106407403A (zh) * 2016-09-22 2017-02-15 湖北文理学院 基于学习的受约束服务聚合排名预测方法及装置
CN106934648A (zh) * 2015-12-31 2017-07-07 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN107133292A (zh) * 2017-04-25 2017-09-05 深圳市茁壮网络股份有限公司 对象推荐方法及系统
CN108171568A (zh) * 2017-12-11 2018-06-15 武汉纺织大学 一种基于知识库的服装推荐方法和系统
CN108810640A (zh) * 2018-06-15 2018-11-13 重庆知遨科技有限公司 一种电视节目的推荐方法
CN108846479A (zh) * 2018-07-13 2018-11-20 河海大学 基于rbm模型的推荐方法、rbm模型的训练方法及装置
CN108960897A (zh) * 2018-06-08 2018-12-07 成都信息工程大学 一种结合关联规则的多维度用户协同过滤推荐方法
CN109217094A (zh) * 2018-09-29 2019-01-15 深圳市大德激光技术有限公司 用于光纤激光器的高功率隔离器
CN109217083A (zh) * 2018-09-29 2019-01-15 深圳市大德激光技术有限公司 用于超快光纤激光器的热控制方法及系统
CN109241405A (zh) * 2018-08-13 2019-01-18 华中师范大学 一种基于知识关联的学习资源协同过滤推荐方法及系统
CN112308173A (zh) * 2020-12-28 2021-02-02 平安科技(深圳)有限公司 基于多评价因子融合的多目标对象评价方法及其相关设备
CN112950304A (zh) * 2019-12-11 2021-06-11 北京沃东天骏信息技术有限公司 信息推送方法、装置、设备及存储介质
CN113221014A (zh) * 2021-06-09 2021-08-06 中国银行股份有限公司 应用功能的个性化推荐方法及系统
CN117974330A (zh) * 2024-03-28 2024-05-03 华侨大学 基于混合模型的互联网保险评分预测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101814068A (zh) * 2009-02-24 2010-08-25 日电(中国)有限公司 时序控制的基于评分预测的项目推荐方法和系统
CN102495864A (zh) * 2011-11-25 2012-06-13 清华大学 基于评分的协同过滤推荐方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101814068A (zh) * 2009-02-24 2010-08-25 日电(中国)有限公司 时序控制的基于评分预测的项目推荐方法和系统
CN102495864A (zh) * 2011-11-25 2012-06-13 清华大学 基于评分的协同过滤推荐方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
李聪: "基于项目类别相似性的协同过滤推荐算法", 《合肥工业大学学报》, 31 March 2008 (2008-03-31) *
温会平: "基于项目类别相似性与用户多兴趣的个性化推荐算法的研究", 《中国优秀硕士学位论文全文数据库》, 30 October 2008 (2008-10-30) *
韦素云: "基于项目类别和兴趣度的协同过滤推荐算法", 《南京大学学报》, 31 March 2013 (2013-03-31) *

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105096149A (zh) * 2014-05-09 2015-11-25 华为软件技术有限公司 业务内容产品关联分析方法及装置
CN105096149B (zh) * 2014-05-09 2019-02-01 华为软件技术有限公司 业务内容产品关联分析方法及装置
CN104035982A (zh) * 2014-05-28 2014-09-10 小米科技有限责任公司 多媒体资源推荐方法及装置
US10289621B2 (en) 2014-05-28 2019-05-14 Xiaomi Inc. Method and apparatus for recommending multimedia resource
CN104700152B (zh) * 2014-10-22 2018-08-10 浙江中烟工业有限责任公司 一种融合季节销售信息与搜索行为信息的烟草销量预测方法
CN104700152A (zh) * 2014-10-22 2015-06-10 浙江中烟工业有限责任公司 一种融合季节销售信息与搜索行为信息的烟草销量预测方法
CN104504059A (zh) * 2014-12-22 2015-04-08 合一网络技术(北京)有限公司 多媒体资源推荐方法
CN104504059B (zh) * 2014-12-22 2018-03-27 合一网络技术(北京)有限公司 多媒体资源推荐方法
CN105260458A (zh) * 2015-10-15 2016-01-20 海信集团有限公司 一种用于显示装置的视频推荐方法及显示装置
CN106095761A (zh) * 2015-12-16 2016-11-09 段云涛 一种多准则目标决策方法及装置
CN106934648A (zh) * 2015-12-31 2017-07-07 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN106407403A (zh) * 2016-09-22 2017-02-15 湖北文理学院 基于学习的受约束服务聚合排名预测方法及装置
CN107133292A (zh) * 2017-04-25 2017-09-05 深圳市茁壮网络股份有限公司 对象推荐方法及系统
CN108171568A (zh) * 2017-12-11 2018-06-15 武汉纺织大学 一种基于知识库的服装推荐方法和系统
CN108960897A (zh) * 2018-06-08 2018-12-07 成都信息工程大学 一种结合关联规则的多维度用户协同过滤推荐方法
CN108810640A (zh) * 2018-06-15 2018-11-13 重庆知遨科技有限公司 一种电视节目的推荐方法
CN108810640B (zh) * 2018-06-15 2020-12-18 浙江广业软件科技有限公司 一种电视节目的推荐方法
CN108846479A (zh) * 2018-07-13 2018-11-20 河海大学 基于rbm模型的推荐方法、rbm模型的训练方法及装置
CN109241405A (zh) * 2018-08-13 2019-01-18 华中师范大学 一种基于知识关联的学习资源协同过滤推荐方法及系统
CN109217094A (zh) * 2018-09-29 2019-01-15 深圳市大德激光技术有限公司 用于光纤激光器的高功率隔离器
CN109217083A (zh) * 2018-09-29 2019-01-15 深圳市大德激光技术有限公司 用于超快光纤激光器的热控制方法及系统
CN112950304A (zh) * 2019-12-11 2021-06-11 北京沃东天骏信息技术有限公司 信息推送方法、装置、设备及存储介质
CN112308173A (zh) * 2020-12-28 2021-02-02 平安科技(深圳)有限公司 基于多评价因子融合的多目标对象评价方法及其相关设备
CN112308173B (zh) * 2020-12-28 2021-04-09 平安科技(深圳)有限公司 基于多评价因子融合的多目标对象评价方法及其相关设备
CN113221014A (zh) * 2021-06-09 2021-08-06 中国银行股份有限公司 应用功能的个性化推荐方法及系统
CN117974330A (zh) * 2024-03-28 2024-05-03 华侨大学 基于混合模型的互联网保险评分预测方法及装置
CN117974330B (zh) * 2024-03-28 2024-06-25 华侨大学 基于混合模型的互联网保险评分预测方法及装置

Also Published As

Publication number Publication date
CN103514255B (zh) 2017-04-05

Similar Documents

Publication Publication Date Title
CN103514255A (zh) 一种基于项目层次类别的协同过滤推荐方法
CN106844787B (zh) 一种为汽车行业寻找目标用户并匹配目标产品的推荐方法
CN104636447B (zh) 一种面向医疗器械b2b网站用户的智能评价方法和系统
CN102841946B (zh) 商品数据检索排序及商品推荐方法和系统
CN107909433A (zh) 一种基于大数据移动电子商务的商品推荐方法
CN106489166A (zh) 服装尺码推荐与合身分析系统以及方法
CN106600372A (zh) 一种基于用户行为的商品推荐方法及系统
CN106127546A (zh) 一种基于智慧社区大数据的商品推荐方法
CN104572797A (zh) 基于主题模型的个性化服务推荐系统和方法
Cheong Methods for ex ante economic evaluation of free trade agreements
CN103353880B (zh) 一种利用相异度聚类和关联的数据挖掘方法
CN111488385B (zh) 基于人工智能的数据处理方法、装置和计算机设备
CN104731866B (zh) 一种基于位置的个性化美食推荐方法
CN103226554A (zh) 基于新闻数据的股票自动匹配分类方法和系统
CN103150667B (zh) 一种基于本体结构的个性化推荐方法
CN108572988A (zh) 一种房产评估数据生成方法和装置
CN104239496A (zh) 一种结合模糊权重相似性度量和聚类协同过滤的方法
Kawasaki et al. A recommendation system by collaborative filtering including information and characteristics on users and items
CN105630946A (zh) 一种基于大数据的领域交叉推荐方法及装置
CN103729365A (zh) 一种搜索方法和系统
CN105023178A (zh) 一种基于本体的电子商务推荐方法
CN104166732A (zh) 一种基于全局评分信息的项目协同过滤推荐方法
CN108108477B (zh) 一种联动的kpi系统及权限管理系统
CN110109902A (zh) 一种基于集成学习方法的电商平台推荐系统
CN104239335A (zh) 特定用户信息获取方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170405