CN104182518A - 一种协同过滤推荐方法及装置 - Google Patents

一种协同过滤推荐方法及装置 Download PDF

Info

Publication number
CN104182518A
CN104182518A CN201410420928.5A CN201410420928A CN104182518A CN 104182518 A CN104182518 A CN 104182518A CN 201410420928 A CN201410420928 A CN 201410420928A CN 104182518 A CN104182518 A CN 104182518A
Authority
CN
China
Prior art keywords
msub
mrow
matrix
mover
user
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
CN201410420928.5A
Other languages
English (en)
Other versions
CN104182518B (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.)
Suzhou University
Original Assignee
Suzhou University
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 Suzhou University filed Critical Suzhou University
Priority to CN201410420928.5A priority Critical patent/CN104182518B/zh
Publication of CN104182518A publication Critical patent/CN104182518A/zh
Application granted granted Critical
Publication of CN104182518B publication Critical patent/CN104182518B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Databases & Information Systems (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种协同过滤推荐方法及装置,方法为:预先建立表征用户间近邻关系、项目间近邻关系、用户与项目间实际行为关系和用户与项目间预测行为关系的第一矩阵、第二矩阵、第三矩阵和第四矩阵,利用用户实际行为数据更新第三和第四矩阵,利用用户预测行为数据更新第四矩阵,利用第三和第四矩阵更新第一和第二矩阵,选取用户与项目的实际行为关系值为零的组合,对选取的用户与项目进行评分预测,判断评分值与上一轮预测的评分值的偏差是否小于阀值,若否,则将其作为用户预测行为数据返回更新第四矩阵步骤,直至预测评分值小于阀值,依据该评分值确定是否将项目推荐给用户。本申请考虑了用户间、项目间的关系,使得推荐结果更精确。

Description

一种协同过滤推荐方法及装置
技术领域
本申请涉及协同过滤推荐技术领域,更具体地说,涉及一种协同过滤推荐方法及装置。
背景技术
互联网技术的快速发展带动了电子商务的蓬勃发展,服务信息与商品数量呈爆炸式急剧增长。随之而来的是“信息过载(information overload)”问题。而个性化推荐技术因其能有效处理信息过滤问题而受到广泛地关注和研究。协同过滤推荐技术是个性化推荐技术中应用最成功的技术之一,其基本思想是根据兴趣相似的最近邻居的行为数据向目标用户推荐资源。随着互联网数据资源的快速增长,协同过滤推荐技术的研究面临着很多难点问题:数据稀疏性、可扩展性以及无法自适应用户兴趣迁移等。
为了解决这些问题,现有技术利用协同推荐系统中用户与项目间的关系提出基于网络结构的推荐方法,将用户和项目关系图抽象为二分网络,针对二分网络的统计特性进行社区结构和演化的研究,以及对二分网络的一些属性特征进行研究,如分析二分网络的度及其分布、最短路径等。但二分网络结构的研究仅考虑了用户与资源之间的联系,而忽略了用户间或项目间的内在关联,因此推荐结果精度不高。
发明内容
有鉴于此,本申请提供了一种协同过滤推荐方法及装置,用于解决现有推荐方法没有考虑用户或项目间的内在关联,导致推荐结果精度不高的问题。
为了实现上述目的,现提出的方案如下:
一种协同过滤推荐方法,包括:
判断是否有新增的用户实际行为数据;
若是,则利用所述用户实际行为数据更新预先建立的推荐关系矩阵R中的第三矩阵和第四矩阵,所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等;
判断是否有新增的用户预测行为数据;
若是,利用所述新增的用户预测行为数据二次更新所述第四矩阵,然后执行步骤a;
若不是,执行所述步骤a;
步骤a、利用所述第四矩阵和所述第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
预测本次循环过程用户Ua对项目Ii的评分值;
计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
判断所述偏差量是否小于预设阀值;
若是,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
若不是,将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回执行所述判断是否有新增的用户预测行为数据步骤。
优选地,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI → ( U a , I i ) = r IU → ( I i , U a ) r IU → ( I i , U a ) ≠ 0 p a , i r IU → ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值,所述利用所述用户实际行为数据更新预先建立的推荐关系矩阵中的第三矩阵和第四矩阵,包括:
将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
利用更新的所述第三矩阵对所述第四矩阵进行更新。
优选地,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i,则所述利用所述新增的用户预测行为数据二次更新所述第四矩阵,包括:
判断所述第三矩阵中的矩阵元素是否为零;
若为零,将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
若不为零,则判断是否等于
若二者不等,则将更新为
优选地,所述利用所述第四矩阵和所述第三矩阵,对所述第一矩阵和所述第二矩阵进行更新,包括:
由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI,其中,
ϵ U = | I U a U b | × | I U a U b | | I U a | × | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
ϵ I = | U I i I j | × | U I i I j | | U I i | × | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
确定所述第一矩阵为 r UU → ( U a , U b ) = sim ′ ( U a , U b ) ,
其中,sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
确定所述第二矩阵为 r II → ( I i , I j ) = sim ′ ( I i , I j ) ,
其中,sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
优选地,所述预测本次循环过程用户Ua对项目Ii的评分值,包括:
依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = λ × ( r U a ‾ + Σ U b ∈ N ( U a ) , r UI → ( U b , I i ) ≠ 0 r UU → ( U a , U b ) × ( r UI → ( U b , I i ) - r U b ‾ ) Σ U b ∈ N ( U a ) r UU → ( U a , U b ) ) + ( 1 - λ ) × ( r I i ‾ + Σ I j ∈ N ( I i ) , r UI → ( U a , I j ) ≠ 0 r II → ( I i , I j ) × ( r UI → ( U a , I j ) - r I j ‾ ) Σ I j ∈ N ( I i ) r II → ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值,N(Ua)和N(Ii)分别满足下式:
N ( U a ) = { U b | r UU → ( U a , U b ) > α , a ≠ b }
N ( I i ) = { I j | r II → ( I i , I j ) > β , i ≠ j }
其中,α和β分别为用户相似度阀值和项目相似度阀值。
一种协同过滤推荐装置,包括:
第一判断单元,用于判断是否有新增的用户实际行为数据;
第一更新单元,用于在所述第一判断单元的判断结果为是时,利用所述用户实际行为数据更新预先建立的推荐关系矩阵R中的第三矩阵和第四矩阵,所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等;
第二判断单元,用于判断是否有新增的用户预测行为数据;
第二更新单元,用于在所述第二判断单元的判断结果为是时,利用所述新增的用户预测行为数据二次更新所述第四矩阵;
第三更新单元,用于利用所述第二更新单元更新的第四矩阵或者所述第一更新单元更新的第四矩阵以及所述第一更新单元更新的第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
选取单元,用于选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
评分预测单元,用于预测本次循环过程用户Ua对项目Ii的评分值;
偏差量计算单元,用于计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
第三判断单元,用于判断所述偏差量是否小于预设阀值;
项目推荐单元,用于在所述第三判断单元的判断结果为是时,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
评分值处理单元,用于在所述第三判断单元的判断结果为否时,将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回至所述第二判断单元。
优选地,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI → ( U a , I i ) = r IU → ( I i , U a ) r IU → ( I i , U a ) ≠ 0 p a , i r IU → ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值,所述第一更新单元包括:
第一填充子单元,用于将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
第四更新子单元,利用更新的所述第三矩阵对所述第四矩阵进行更新。
优选地,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i,所述第二更新单元包括:
第四判断子单元,用于判断所述第三矩阵中的矩阵元素是否为零;
第二填充子单元,用于在所述第四判断子单元的判断结果为是时,将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
第五判断子单元,用于在所述第四判断子单元的判断结果为否时,判断是否等于
第五更新子单元,用于在所述第五判断子单元的判断结果为否时,将更新为
优选地,所述第三更新单元包括:
影响因子确定单元,用于由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI,其中,
ϵ U = | I U a U b | × | I U a U b | | I U a | × | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
ϵ I = | U I i I j | × | U I i I j | | U I i | × | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
矩阵确定单元,用于确定所述第一矩阵为所述第二矩阵为 r II → ( I i , I j ) = sim ′ ( I i , I j ) , 其中,
sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
优选地,所述评分预测单元包括:
第一评分预测子单元,用于依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = λ × ( r U a ‾ + Σ U b ∈ N ( U a ) , r UI → ( U b , I i ) ≠ 0 r UU → ( U a , U b ) × ( r UI → ( U b , I i ) - r U b ‾ ) Σ U b ∈ N ( U a ) r UU → ( U a , U b ) ) + ( 1 - λ ) × ( r I i ‾ + Σ I j ∈ N ( I i ) , r UI → ( U a , I j ) ≠ 0 r II → ( I i , I j ) × ( r UI → ( U a , I j ) - r I j ‾ ) Σ I j ∈ N ( I i ) r II → ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值,N(Ua)和N(Ii)分别满足下式:
N ( U a ) = { U b | r UU → ( U a , U b ) > α , a ≠ b }
N ( I i ) = { I j | r II → ( I i , I j ) > β , i ≠ j }
其中,α和β分别为用户相似度阀值和项目相似度阀值。
从上述的技术方案可以看出,本申请实施例提供的协同过滤推荐方法,预先建立推荐关系矩阵R,其包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,利用新增用户实际行为数据更新第三矩阵和第四矩阵,并利用新增用户预测行为数据再次更新第四矩阵,然后利用第三矩阵和第四矩阵对第一矩阵和第二矩阵进行更新,选取用户与项目的实际行为关系值为零的组合,对选取的用户与项目进行评分预测,判断该评分值与上一轮预测的评分值的偏差是否小于阀值,若否则将其作为新增用户预测行为数据返回更新第四矩阵步骤,直至预测评分值小于预设阀值时,依据该评分值确定是否将项目推荐给用户。本申请考虑了用户间、项目间、用户与项目间的关系,对建立的矩阵实时进行更新,使得最终得到的推荐结果更加精确。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种协同过滤推荐方法流程图;
图2为本申请实施例公开的利用用户预测行为数据更新第四矩阵的方法流程图;
图3为本申请实施例公开的利用第三、第四矩阵对第一和第二矩阵进行更新的方法流程图;
图4为本申请实施例公开的一种协同过滤推荐装置结构示意图;
图5为本申请实施例公开的第一更新单元的结构示意图;
图6为本申请实施例公开的第二更新单元的结构示意图;
图7为本申请实施例公开的第三更新单元的结构示意图;
图8为本申请实施例公开的评分预测单元的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请公开了一种协同过滤推荐方法,为了介绍本申请的方法,首先进行下述定义:
令U和I分别表示用户和项目数据集,其中U={U1,U2,…,Un},I={I1,I2,…,Im},用户和项目的个数分别为n和m。由用户和项目所构成的推荐网络表示为G=<V,R>,其中V(G)=U∪I,V表示推荐网络中所有的对象类型,为推荐关系矩阵,oi,oj∈U∪I,表示关系链接<oi,oj>的值,用户与项目间的链接表示行为关系,用户或项目间的同类型链接表示近邻关系。
根据不同的关系链接,推荐关系矩阵R被划分为四个矩阵块,分别为RUU、RUI、RIU、RII,如下式所示。
R = R UU R UI R IU R II
其中,表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI。在初始建立时刻,第三矩阵和第四矩阵相等,后续随着用户预测行为数据的产生,不断的对第四矩阵进行更新。
需要说明的是,我们将用户对项目的实际评分值作为用户实际行为数据,只要有用户实际行为数据,则需要对第三矩阵进行更新,同时,也需要对第四矩阵进行更新。因为,在第三矩阵和第四矩阵中,表征某一用户对某一项目行为数据的元素,如果第三矩阵中存在用户对项目的实际行为数据(即不为零),则第四矩阵中对应元素也应与之完全相同,而对于第三矩阵中用户对项目没有实际行为数据(即该元素为零),初始建立时刻第四矩阵对应元素也为零,但是后续随着用户对此类元素的预测,不断产生用户预测行为数据,则利用用户预测行为数据去更新第四矩阵中对应元素。
参照图1,图1为本申请实施例公开的一种协同过滤推荐方法流程图。如图1所示,该方法包括:
步骤100:判断是否有新增的用户实际行为数据,若是,则执行步骤101;
其中,用户实际行为数据即某一个用户对某一项目产生了实际评分值。
步骤101:利用所述用户实际行为数据更新第三矩阵和第四矩阵;
所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等。
步骤102:判断是否有新增的用户预测行为数据,若是,则执行步骤103,否则执行步骤104;
这里,用户预测行为数据即通过某种方式来预测某一用户对某一未评分的项目的评分值。
步骤103:利用所述新增的用户预测行为数据二次更新所述第四矩阵;
具体地,第四矩阵中对于用户对项目没有实际评分值,且之前没有产生过预测行为数据的元素,其值为零。而如果此类元素产生了用户预测行为数据,则需要将原来为零的元素更新为产生的用户预测行为数据。
步骤104:利用所述第四矩阵和所述第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
由于第三矩阵和第四矩阵的更新会影响用户与项目之间的链接关系,而第一矩阵和第二矩阵的元素值与用户与项目间的链接关系存在关系,因此当第三矩阵和第四矩阵更新后,需要对第一矩阵和第二矩阵进行更新。
需要说明的是,步骤104中提到的第四矩阵可能是经过步骤103二次更新的第四矩阵,也可能是直接由步骤101更新的第四矩阵。
步骤105:选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
具体地,这里选取的用户和项目需要满足上述关系,即选取的用户对选取的项目没有产生过实际评分值。这里,可以同时将推荐矩阵中所有满足上述关系的组合一次抽取出来,也可以是逐次抽取,每次只选取一组。
步骤106:预测本次循环过程用户Ua对项目Ii的评分值;
步骤107:计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
具体地,每次预测用户Ua对项目Ii的评分值后,需要判断该值与用户Ua对项目Ii的评分参考值的偏差量。这里,用户Ua对项目Ii的评分参考量是上一轮计算所得用户Ua对项目Ii的评分值。
在计算偏差量时,可以采用平均绝对偏差MAE(Mean Absolute Error)的算法来进行计算。
步骤108:判断所述偏差量是否小于预设阀值,若是,执行步骤109,否则执行步骤110;
步骤109:根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
步骤110:将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回执行步骤102。
具体地,在连续两轮的预测评分值的偏差量小于预设阀值时,我们才认为该预测评分值已经达到稳定状态,可以作为推荐的参考依据。而如果不满足上述条件,则需要将本轮预测的评分值作为下一轮的评分参考值,将其作为新增的用户预测行为数据返回更新第四矩阵。
其中,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua的过程,可以是预先设定一个评分阀值,在预测的用户Ua对项目Ii的评分值高于评分阀值时,才将项目Ii推荐给用户Ua
本申请实施例提供的协同过滤推荐方法,预先建立推荐关系矩阵R,其包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,利用新增用户实际行为数据更新第三矩阵和第四矩阵,并利用新增用户预测行为数据再次更新第四矩阵,然后利用第三矩阵和第四矩阵对第一矩阵和第二矩阵进行更新,选取用户与项目的实际行为关系值为零的组合,对选取的用户与项目进行评分预测,判断该评分值与上一轮预测的评分值的偏差是否小于阀值,若否则将其作为新增用户预测行为数据返回更新第四矩阵步骤,直至预测评分值小于预设阀值时,依据该评分值确定是否将项目推荐给用户。本申请考虑了用户间、项目间、用户与项目间的关系,对建立的矩阵实时进行更新,使得最终得到的推荐结果更加精确。
需要说明的是,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI &RightArrow; ( U a , I i ) = r IU &RightArrow; ( I i , U a ) r IU &RightArrow; ( I i , U a ) &NotEqual; 0 p a , i r IU &RightArrow; ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值。
在此基础上,上述步骤101利用所述用户实际行为数据更新预先建立的推荐关系矩阵中的第三矩阵和第四矩阵,可以通过下述方式实现:
将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
利用更新的所述第三矩阵对所述第四矩阵进行更新。
具体地,利用第四矩阵中矩阵元素的定义,利用第三矩阵对第四矩阵进行更新。
需要说明的是,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i,这个值可以看作是由上述步骤110返回的新增用户预测行为数据。
因此,参见图2,图2为本申请实施例公开的利用用户预测行为数据更新第四矩阵的方法流程图。
如图2所述,上述步骤103包括:
步骤200:判断所述第三矩阵中的矩阵元素是否为零,若是,则执行步骤201,否则执行步骤202;
步骤201:将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
步骤202:则判断是否等于若不相等,则执行步骤203:将更新为
需要解释的是,这里在利用所述新增的用户预测行为数据二次更新所述第四矩阵时,增加了步骤200:判断第三矩阵中矩阵元素是否为零的过程,主要是考虑到:如果在生成预测评分数据时,用户对项目也正好产生真实行为数据,此时更新的数据即发生冲突,因此在动态更新第四矩阵时需要先判断用户是否已有行为,并以用户实际行为数据为准。
参见图3,图3为本申请实施例公开的利用第三、第四矩阵对第一和第二矩阵进行更新的方法流程图。
如图3所示,上述步骤104包括:
步骤300:由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI;其中,
&epsiv; U = | I U a U b | &times; | I U a U b | | I U a | &times; | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
&epsiv; I = | U I i I j | &times; | U I i I j | | U I i | &times; | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
步骤301:确定第一矩阵和第二矩阵;
具体地,第一矩阵为 r UU &RightArrow; ( U a , U b ) = sim &prime; ( U a , U b ) , 第二矩阵为 r II &RightArrow; ( I i , I j ) = sim &prime; ( I i , I j ) ,
其中,sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
其中,sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
需要说明的是,上述计算用户Ua,Ub的相似度和项目Ii,Ij的相似度时,可以采用现有的一些算法来进行计算。
需要说明的是,在预测用户对目标项目的评分时,由于表征用户近邻关系的第一矩阵和表征项目近邻关系的第二矩阵不断更新,因此设定相似度阈值α和β,分别用于选择用户和项目近邻关系群。定义N(Ua)表示用户Ua的近邻用户群,N(Ii)表示项目Ii的近邻项目群。则N(Ua)和N(Ii)分别满足如下定义:
N ( U a ) = { U b | r UU &RightArrow; ( U a , U b ) > &alpha; , a &NotEqual; b }
N ( I i ) = { I j | r II &RightArrow; ( I i , I j ) > &beta; , i &NotEqual; j }
在此基础上,上述步骤106:预测本次循环过程用户Ua对项目Ii的评分值的过程,可以按照如下方式实现:
依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = &lambda; &times; ( r U a &OverBar; + &Sigma; U b &Element; N ( U a ) , r UI &RightArrow; ( U b , I i ) &NotEqual; 0 r UU &RightArrow; ( U a , U b ) &times; ( r UI &RightArrow; ( U b , I i ) - r U b &OverBar; ) &Sigma; U b &Element; N ( U a ) r UU &RightArrow; ( U a , U b ) ) + ( 1 - &lambda; ) &times; ( r I i &OverBar; + &Sigma; I j &Element; N ( I i ) , r UI &RightArrow; ( U a , I j ) &NotEqual; 0 r II &RightArrow; ( I i , I j ) &times; ( r UI &RightArrow; ( U a , I j ) - r I j &OverBar; ) &Sigma; I j &Element; N ( I i ) r II &RightArrow; ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值。
下面对本申请实施例提供的协同过滤推荐装置进行描述,下文描述的协同过滤推荐装置与上文描述的协同过滤推荐方法可相互对应参照。
参见图4,图4为本申请实施例公开的一种协同过滤推荐装置结构示意图。
如图4所示,该装置包括:
第一判断单元401,用于判断是否有新增的用户实际行为数据;
第一更新单元402,用于在所述第一判断单元401的判断结果为是时,利用所述用户实际行为数据更新预先建立的推荐关系矩阵R中的第三矩阵和第四矩阵,所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等;
第二判断单元403,用于判断是否有新增的用户预测行为数据;
第二更新单元404,用于在所述第二判断单元403的判断结果为是时,利用所述新增的用户预测行为数据二次更新所述第四矩阵;
第三更新单元405,用于利用所述第二更新单元404更新的第四矩阵或者所述第一更新单元402更新的第四矩阵以及所述第一更新单元402更新的第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
选取单元406,用于选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
评分预测单元407,用于预测本次循环过程用户Ua对项目Ii的评分值;
偏差量计算单元408,用于计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
第三判断单元409,用于判断所述偏差量是否小于预设阀值;
项目推荐单元410,用于在所述第三判断单元409的判断结果为是时,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
评分值处理单元411,用于在所述第三判断单元409的判断结果为否时,将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回至所述第二判断单元403。
可选的,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI &RightArrow; ( U a , I i ) = r IU &RightArrow; ( I i , U a ) r IU &RightArrow; ( I i , U a ) &NotEqual; 0 p a , i r IU &RightArrow; ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值。
图5示例了本申请实施例公开的第一更新单元的一种可选结构,如图5所示,第一更新单元402包括:
第一填充子单元500,用于将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
第四更新子单元501,利用更新的所述第三矩阵对所述第四矩阵进行更新。
可选的,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i
图6示例了本申请实施例公开的第二更新单元的一种可选结构,第二更新单元404包括:
第四判断子单元600,用于判断所述第三矩阵中的矩阵元素是否为零;
第二填充子单元601,用于在所述第四判断子单元600的判断结果为是时,将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
第五判断子单元602,用于在所述第四判断子单元600的判断结果为否时,判断是否等于
第五更新子单元603,用于在所述第五判断子单元602的判断结果为否时,将更新为
可选的,图7示例了本申请实施例公开的第三更新单元的一种可选结构,第三更新单元405包括:
影响因子确定单元700,用于由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI;其中,
&epsiv; U = | I U a U b | &times; | I U a U b | | I U a | &times; | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
&epsiv; I = | U I i I j | &times; | U I i I j | | U I i | &times; | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
矩阵确定单元701,用于确定所述第一矩阵为所述第二矩阵为 r II &RightArrow; ( I i , I j ) = sim &prime; ( I i , I j ) , 其中,
sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
可选的,图8示例了本申请实施例公开的评分预测单元的一种可选结构,评分预测单元407包括:
第一评分预测子单元800,用于依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = &lambda; &times; ( r U a &OverBar; + &Sigma; U b &Element; N ( U a ) , r UI &RightArrow; ( U b , I i ) &NotEqual; 0 r UU &RightArrow; ( U a , U b ) &times; ( r UI &RightArrow; ( U b , I i ) - r U b &OverBar; ) &Sigma; U b &Element; N ( U a ) r UU &RightArrow; ( U a , U b ) ) + ( 1 - &lambda; ) &times; ( r I i &OverBar; + &Sigma; I j &Element; N ( I i ) , r UI &RightArrow; ( U a , I j ) &NotEqual; 0 r II &RightArrow; ( I i , I j ) &times; ( r UI &RightArrow; ( U a , I j ) - r I j &OverBar; ) &Sigma; I j &Element; N ( I i ) r II &RightArrow; ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值,N(Ua)和N(Ii)分别满足下式:
N ( U a ) = { U b | r UU &RightArrow; ( U a , U b ) > &alpha; , a &NotEqual; b }
N ( I i ) = { I j | r II &RightArrow; ( I i , I j ) > &beta; , i &NotEqual; j }
其中,α和β分别为用户相似度阀值和项目相似度阀值。
本申请预先建立推荐关系矩阵R,其包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI。本申请实施例公开的协同过滤推荐装置,利用新增用户实际行为数据更新第三矩阵和第四矩阵,并利用新增用户预测行为数据再次更新第四矩阵,然后利用第三矩阵和第四矩阵对第一矩阵和第二矩阵进行更新,选取用户与项目的实际行为关系值为零的组合,对选取的用户与项目进行评分预测,判断该评分值与上一轮预测的评分值的偏差是否小于阀值,若否则将其作为新增用户预测行为数据返回更新第四矩阵步骤,直至预测评分值小于预设阀值时,依据该评分值确定是否将项目推荐给用户。本申请考虑了用户间、项目间、用户与项目间的关系,对建立的矩阵实时进行更新,使得最终得到的推荐结果更加精确。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种协同过滤推荐方法,其特征在于,包括:
判断是否有新增的用户实际行为数据;
若是,则利用所述用户实际行为数据更新预先建立的推荐关系矩阵R中的第三矩阵和第四矩阵,所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等;
判断是否有新增的用户预测行为数据;
若是,利用所述新增的用户预测行为数据二次更新所述第四矩阵,然后执行步骤a;
若不是,执行所述步骤a;
步骤a、利用所述第四矩阵和所述第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
预测本次循环过程用户Ua对项目Ii的评分值;
计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
判断所述偏差量是否小于预设阀值;
若是,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
若不是,将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回执行所述判断是否有新增的用户预测行为数据步骤。
2.根据权利要求1所述的协同过滤推荐方法,其特征在于,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI &RightArrow; ( U a , I i ) = r IU &RightArrow; ( I i , U a ) r IU &RightArrow; ( I i , U a ) &NotEqual; 0 p a , i r IU &RightArrow; ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值,所述利用所述用户实际行为数据更新预先建立的推荐关系矩阵中的第三矩阵和第四矩阵,包括:
将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
利用更新的所述第三矩阵对所述第四矩阵进行更新。
3.根据权利要求2所述的协同过滤推荐方法,其特征在于,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i,则所述利用所述新增的用户预测行为数据二次更新所述第四矩阵,包括:
判断所述第三矩阵中的矩阵元素是否为零;
若为零,将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
若不为零,则判断是否等于
若二者不等,则将更新为
4.根据权利要求1所述的协同过滤推荐方法,其特征在于,所述利用所述第四矩阵和所述第三矩阵,对所述第一矩阵和所述第二矩阵进行更新,包括:
由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI,其中,
&epsiv; U = | I U a U b | &times; | I U a U b | | I U a | &times; | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
&epsiv; I = | U I i I j | &times; | U I i I j | | U I i | &times; | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
确定所述第一矩阵为 r UU &RightArrow; ( U a , U b ) = sim &prime; ( U a , U b ) ,
其中,sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
确定所述第二矩阵为 r II &RightArrow; ( I i , I j ) = sim &prime; ( I i , I j ) ,
其中,sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
5.根据权利要求4所述的协同过滤推荐方法,其特征在于,所述预测本次循环过程用户Ua对项目Ii的评分值,包括:
依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = &lambda; &times; ( r U a &OverBar; + &Sigma; U b &Element; N ( U a ) , r UI &RightArrow; ( U b , I i ) &NotEqual; 0 r UU &RightArrow; ( U a , U b ) &times; ( r UI &RightArrow; ( U b , I i ) - r U b &OverBar; ) &Sigma; U b &Element; N ( U a ) r UU &RightArrow; ( U a , U b ) ) + ( 1 - &lambda; ) &times; ( r I i &OverBar; + &Sigma; I j &Element; N ( I i ) , r UI &RightArrow; ( U a , I j ) &NotEqual; 0 r II &RightArrow; ( I i , I j ) &times; ( r UI &RightArrow; ( U a , I j ) - r I j &OverBar; ) &Sigma; I j &Element; N ( I i ) r II &RightArrow; ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值,N(Ua)和N(Ii)分别满足下式:
N ( U a ) = { U b | r UU &RightArrow; ( U a , U b ) > &alpha; , a &NotEqual; b }
N ( I i ) = { I j | r II &RightArrow; ( I i , I j ) > &beta; , i &NotEqual; j }
其中,α和β分别为用户相似度阀值和项目相似度阀值。
6.一种协同过滤推荐装置,其特征在于,包括:
第一判断单元,用于判断是否有新增的用户实际行为数据;
第一更新单元,用于在所述第一判断单元的判断结果为是时,利用所述用户实际行为数据更新预先建立的推荐关系矩阵R中的第三矩阵和第四矩阵,所述推荐关系矩阵R包括表征用户间近邻关系的第一矩阵RUU、表征项目间近邻关系的第二矩阵RII、表征用户与项目间实际行为关系的所述第三矩阵RIU和表征用户与项目间预测行为关系的所述第四矩阵RUI,在初始建立时所述第三矩阵与所述第四矩阵相等;
第二判断单元,用于判断是否有新增的用户预测行为数据;
第二更新单元,用于在所述第二判断单元的判断结果为是时,利用所述新增的用户预测行为数据二次更新所述第四矩阵;
第三更新单元,用于利用所述第二更新单元更新的第四矩阵或者所述第一更新单元更新的第四矩阵以及所述第一更新单元更新的第三矩阵,对所述第一矩阵和所述第二矩阵进行更新;
选取单元,用于选取用户Ua及项目Ii,所述用户Ua及项目Ii满足Ua与Ii的实际行为关系值为零;
评分预测单元,用于预测本次循环过程用户Ua对项目Ii的评分值;
偏差量计算单元,用于计算本次循环过程用户Ua对项目Ii的评分值与用户Ua对项目Ii的评分参考值的偏差量;
第三判断单元,用于判断所述偏差量是否小于预设阀值;
项目推荐单元,用于在所述第三判断单元的判断结果为是时,根据本次循环过程用户Ua对项目Ii的评分值确定是否将项目Ii推荐给用户Ua
评分值处理单元,用于在所述第三判断单元的判断结果为否时,将本次循环过程所确定的用户Ua对项目Ii的评分值更新为所述用户Ua对项目Ii的评分参考值,并将其作为新增的用户预测行为数据,返回至所述第二判断单元。
7.根据权利要求6所述的协同过滤推荐装置,其特征在于,所述第三矩阵中的矩阵元素为表示用户Ua对项目Ii实际行为关系值,ra,i表示用户Ua对项目Ii的实际评分值,所述第四矩阵RUI中的矩阵元素为 r UI &RightArrow; ( U a , I i ) = r IU &RightArrow; ( I i , U a ) r IU &RightArrow; ( I i , U a ) &NotEqual; 0 p a , i r IU &RightArrow; ( I i , U a ) = 0 , 其中pa,i为预测的用户Ua对项目Ii的评分值,所述第一更新单元包括:
第一填充子单元,用于将新增的用户Ua对项目Ii的实际评分值ra,i填入所述第三矩阵的相应位置;
第四更新子单元,利用更新的所述第三矩阵对所述第四矩阵进行更新。
8.根据权利要求7所述的协同过滤推荐装置,其特征在于,所述新增的用户预测行为数据为用户Ua对项目Ii的预测评分值pa,i,所述第二更新单元包括:
第四判断子单元,用于判断所述第三矩阵中的矩阵元素是否为零;
第二填充子单元,用于在所述第四判断子单元的判断结果为是时,将新增的用户Ua对项目Ii的预测评分值pa,i填入所述第四矩阵的相应位置;
第五判断子单元,用于在所述第四判断子单元的判断结果为否时,判断是否等于
第五更新子单元,用于在所述第五判断子单元的判断结果为否时,将更新为
9.根据权利要求6所述的协同过滤推荐装置,其特征在于,所述第三更新单元包括:
影响因子确定单元,用于由所述第四矩阵和所述第三矩阵确定用户相似度影响因子εU和项目相似度影响因子εI,其中,
&epsiv; U = | I U a U b | &times; | I U a U b | | I U a | &times; | I U b |
分别表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub所分别链接的项目集合,表示由所述第三矩阵和所述第四矩阵确定的用户Ua,Ub共同链接的项目集合;
&epsiv; I = | U I i I j | &times; | U I i I j | | U I i | &times; | U I j |
分别表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij所分别链接的用户集合,表示由所述第三矩阵和所述第四矩阵确定的项目Ii,Ij共同链接的用户集合;
矩阵确定单元,用于确定所述第一矩阵为所述第二矩阵为 r II &RightArrow; ( I i , I j ) = sim &prime; ( I i , I j ) , 其中,
sim'(Ua,Ub)=εU×sim(Ua,Ub),sim(Ua,Ub)为用户Ua,Ub的相似度;
sim'(Ii,Ij)=εI×sim(Ii,Ij),sim(Ii,Ij)为项目Ii,Ij的相似度。
10.根据权利要求9所述的协同过滤推荐装置,其特征在于,所述评分预测单元包括:
第一评分预测子单元,用于依据下述公式预测用户Ua对项目Ii的评分值:
p ( U a , I i ) = &lambda; &times; ( r U a &OverBar; + &Sigma; U b &Element; N ( U a ) , r UI &RightArrow; ( U b , I i ) &NotEqual; 0 r UU &RightArrow; ( U a , U b ) &times; ( r UI &RightArrow; ( U b , I i ) - r U b &OverBar; ) &Sigma; U b &Element; N ( U a ) r UU &RightArrow; ( U a , U b ) ) + ( 1 - &lambda; ) &times; ( r I i &OverBar; + &Sigma; I j &Element; N ( I i ) , r UI &RightArrow; ( U a , I j ) &NotEqual; 0 r II &RightArrow; ( I i , I j ) &times; ( r UI &RightArrow; ( U a , I j ) - r I j &OverBar; ) &Sigma; I j &Element; N ( I i ) r II &RightArrow; ( I i , I j ) )
其中,λ为预设平衡参量,分别表示第一矩阵中用户Ua和用户Ub已评分项目的平均评分值,分别表示第一矩阵中项目Ii和项目Ij已被评分的平均值,N(Ua)和N(Ii)分别满足下式:
N ( U a ) = { U b | r UU &RightArrow; ( U a , U b ) > &alpha; , a &NotEqual; b }
N ( I i ) = { I j | r II &RightArrow; ( I i , I j ) > &beta; , i &NotEqual; j }
其中,α和β分别为用户相似度阀值和项目相似度阀值。
CN201410420928.5A 2014-08-25 2014-08-25 一种协同过滤推荐方法及装置 Expired - Fee Related CN104182518B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410420928.5A CN104182518B (zh) 2014-08-25 2014-08-25 一种协同过滤推荐方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410420928.5A CN104182518B (zh) 2014-08-25 2014-08-25 一种协同过滤推荐方法及装置

Publications (2)

Publication Number Publication Date
CN104182518A true CN104182518A (zh) 2014-12-03
CN104182518B CN104182518B (zh) 2017-12-26

Family

ID=51963557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410420928.5A Expired - Fee Related CN104182518B (zh) 2014-08-25 2014-08-25 一种协同过滤推荐方法及装置

Country Status (1)

Country Link
CN (1) CN104182518B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715399A (zh) * 2015-04-09 2015-06-17 苏州大学 一种评分预测方法与系统
CN106850750A (zh) * 2016-12-26 2017-06-13 北京五八信息技术有限公司 一种实时推送信息的方法和装置
CN106844557A (zh) * 2016-12-30 2017-06-13 东软集团股份有限公司 信息推荐方法及装置
CN109063137A (zh) * 2018-08-03 2018-12-21 苏州大学 一种推荐对象确定方法、装置、设备及可读存储介质
CN111291274A (zh) * 2020-03-02 2020-06-16 苏州大学 一种物品推荐方法、装置、设备及计算机可读存储介质
CN112612967A (zh) * 2020-09-11 2021-04-06 辽宁师范大学 基于链接聚类和约简的协同过滤推荐方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191311A1 (en) * 2010-02-03 2011-08-04 Gartner, Inc. Bi-model recommendation engine for recommending items and peers
US20110295762A1 (en) * 2010-05-30 2011-12-01 Scholz Martin B Predictive performance of collaborative filtering model
CN102841929A (zh) * 2012-07-19 2012-12-26 南京邮电大学 一种综合用户和项目评分及特征因素的推荐方法
CN103500228A (zh) * 2013-10-23 2014-01-08 苏州大学 一种协同过滤推荐算法中改进的相似性度量方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191311A1 (en) * 2010-02-03 2011-08-04 Gartner, Inc. Bi-model recommendation engine for recommending items and peers
US20110295762A1 (en) * 2010-05-30 2011-12-01 Scholz Martin B Predictive performance of collaborative filtering model
CN102841929A (zh) * 2012-07-19 2012-12-26 南京邮电大学 一种综合用户和项目评分及特征因素的推荐方法
CN103500228A (zh) * 2013-10-23 2014-01-08 苏州大学 一种协同过滤推荐算法中改进的相似性度量方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIUMEI MAO等: "《An improved similarity measure method on collaborative filtering recommendation algorithm》", 《2013 INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND BIG DATA》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715399A (zh) * 2015-04-09 2015-06-17 苏州大学 一种评分预测方法与系统
CN104715399B (zh) * 2015-04-09 2018-03-02 苏州大学 一种评分预测方法与系统
CN106850750A (zh) * 2016-12-26 2017-06-13 北京五八信息技术有限公司 一种实时推送信息的方法和装置
CN106844557A (zh) * 2016-12-30 2017-06-13 东软集团股份有限公司 信息推荐方法及装置
CN109063137A (zh) * 2018-08-03 2018-12-21 苏州大学 一种推荐对象确定方法、装置、设备及可读存储介质
CN111291274A (zh) * 2020-03-02 2020-06-16 苏州大学 一种物品推荐方法、装置、设备及计算机可读存储介质
CN112612967A (zh) * 2020-09-11 2021-04-06 辽宁师范大学 基于链接聚类和约简的协同过滤推荐方法
CN112612967B (zh) * 2020-09-11 2023-07-18 辽宁师范大学 基于链接聚类和约简的协同过滤推荐方法

Also Published As

Publication number Publication date
CN104182518B (zh) 2017-12-26

Similar Documents

Publication Publication Date Title
CN110955834B (zh) 一种知识图谱驱动的个性化精准推荐方法
CN104182518B (zh) 一种协同过滤推荐方法及装置
CN112115377B (zh) 一种基于社交关系的图神经网络链路预测推荐方法
CN106471491A (zh) 一种时变的协同过滤推荐方法
CN104166702B (zh) 一种面向服务供应链网络的服务推荐方法
CN103309972A (zh) 基于链路预测的推荐方法和系统
Formoso et al. Using profile expansion techniques to alleviate the new user problem
CN106055661B (zh) 基于多Markov链模型的多兴趣资源推荐方法
CN106682121A (zh) 一种基于用户兴趣变化的时效推荐方法
CN110033097B (zh) 基于多个数据域确定用户与物品的关联关系的方法及装置
Jiao et al. A novel learning rate function and its application on the SVD++ recommendation algorithm
CN104298787A (zh) 一种基于融合策略的个性化推荐方法及装置
CN105354260B (zh) 一种融合社会网络和项目特征的移动应用推荐方法
CN103327092A (zh) 一种信息网络上的社区发现方法和系统
CN106127506B (zh) 一种基于主动学习解决商品冷启动问题的推荐方法
US9147009B2 (en) Method of temporal bipartite projection
CN103500228A (zh) 一种协同过滤推荐算法中改进的相似性度量方法
CN102135999A (zh) 用户可信度和项目最近邻相结合的互联网推荐方法
CN103942298B (zh) 基于线性回归的推荐方法及系统
CN107145541A (zh) 基于超图结构的社交网络推荐模型构建方法
CN107346333A (zh) 一种基于链路预测的在线社交网络好友推荐方法与系统
CN106971053A (zh) 一种基于混合协同过滤的推荐方法
CN112256957B (zh) 一种信息排序方法、装置、电子设备及存储介质
CN109308654A (zh) 基于物品能量扩散和用户偏好的协同过滤推荐方法
Xia E-commerce product recommendation method based on collaborative filtering technology

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
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: 20171226