一种基于协同过滤并结合多类别非信任关系的推荐方法

文档序号:9524729阅读:509来源:国知局
一种基于协同过滤并结合多类别非信任关系的推荐方法
【技术领域】
[0001] 本发明属于推荐系统的技术领域,具体设及一种结合社交网络的协同过滤推荐系 统,适用于有效利用社交网络中用户之间非信任关系的推荐方法。
【背景技术】
[0002] 个性化推荐服务W用户为中屯、,W理解用户喜好为基础,为用户提供量身定制的 个性化信息呈现的服务方式,也是解决从海量互联网资源中提取用户所需信息的一种有效 途径。传统推荐方法包括基于内容的推荐W及协同过滤推荐方法等。协同过滤推荐方法W 其简单易懂的特性,广泛应用于大型推荐系统中。然而,冷启动W及数据稀疏等问题影响了 协同过滤推荐方法的进一步发展。由此,信任网络中的信任关系在推荐系统中的应用已经 得到了广泛研究。目前,研究人员发现信任网络中的非信任关系在推荐系统中发挥着与信 任关屯、同等重要的作用。

【发明内容】

[0003] 本发明要解决的技术问题为:克服现有技术的不足,提供一种更有效利用用户信 任网络中非信任关系的个性化推荐方法,通过将用户对项目的偏好信息加W类别区分并加 入用户在信任网络中的影响力概念,最大化非信任用户偏好信息之间的差异;融合基于模 型的协同过滤,生成最终推荐方法提高了个性化推荐的准确度。
[0004] 本发明解决上述技术问题采用的技术方案为:一种基于协同过滤并结合多类别非 信任关系的推荐方法,该方法具体步骤如下:
[000引步骤(1)定义类别:选择项目自身类别信息作为推荐方法的类别信息;
[0006] 步骤(2)定义用户U在类别k上的偏好程度:用户U产生评分行为中属于类别k 的项目数量与用户U产生评分行为的所有项目数量的比值,具体如下:
[0007]
[0008] 其中,η。表示用户U产生评分行为的所有项目数量,η。化)表示用户U产生评分行 为中属于类别k的项目数量;
[0009] 步骤做定义用户U在信任网络中的影响力:在用户对项目评分的过程中,假如允 许用户同时对其他用户进行评价,则会产生用户间的信任网络。例如,用户Ui在评分过程 中发现用户%的评分结果与自己一致,用户U1会将用户U2加入自己的信任列表,反映在用 户间信任网络中即为一条从用户Ui指向用户U2的信任关系;反之,若用户U1在评分过程中 发现用户%的评分结果与自己不一致,用户U1会将用户U2加入自己的非信任列表,反映在 用户间新人网络中即为一条从用户Ui指向用户U2的非信任关系;统计整个信任网络中指向 用户U的信任关系,记为T(u);指向用户U的非信任关系,记为D(u)。用户U的影响力定义 为统计所得信任关系的数量与信任关系和非信任关系数量之和的比值,具体如下:
[0010]
W11] 其中h(u)为用户u的影响力,m为所有用户的数量;
[0012] 步骤(4)根据用户项目评分矩阵,通过基于模型的协同过滤方法得到获取用户偏 好信息矩阵的目标函数,具体如下:
[0013]
[0014] 其中表示用户U对项目i的评分;ε为用户项目评分矩阵中用户有过评分行 为的元素的集合;矩阵Ρ为用户偏好信息矩阵,Ρ。为用户偏好信息矩阵中用户U的偏好信 息向量;矩阵Q表示项目隐含因子矩阵,Qi为隐含因子矩阵中项目i的隐因子向量;I I·|IΡ 是矩阵的弗罗贝尼乌斯范数;λΡ和λe为防止过拟合参数,取值为0. 001 ;
[0015] 步骤(5)根据步骤(2)的结果,得到非信任用户偏好信息之间的差异,具体如下:
[0016]
[0017] 其中,Ui和U2为两个不同用户,和/,, (/()分别为两个用户在类别k的偏 地Ui 好程度;巧y为用户ui的非信任列表中用户的集合;K为项目的类别数目;沿表 示用户Ui和用户U2在类别k下的偏好相似程度;
[001引步骤(6)通过线性融合的方式结合步骤(4)所得目标函数ηgw讯步骤妨所得 非信任用户偏好信息之间的差异Tw,得到基于协同过滤并结合多类别非信任关系的推荐 方法的目标函数,具体如下:
[0019]
[0020] 其中λ。为权重参数;
[002U步骤(7)通过梯度下降法最小化步骤(6)的目标函数於,得到用户偏好信息矩阵P和项目隐含因子矩阵Q,产生最终推荐结果,具体如下:
[0022]
[0023] 本发明与现有技术相比的优点在于:
[0024] (1)引入了用户在信任网络中的影响力概念。通过影响力的概念,削弱了低质量用 户再推荐过程中产生的噪声影响,从而提高了推荐的准确性。例如,用户%在评分的过程 中,有不客观或者低质量的评分行为,则在信任网络中会有很多指向用户%的非信任关系。 假如用户Ui对用户U2有非信任关系,在对用户U1的推荐过程中,应该削弱U2造成的影响。 因此,在本发明中,定义了用户在信任网络中的影响力,具体定义为对用户产生信任关系的 用户数量与对该用户产生非信任关系和信任关系的用户数量的比值。
[0025] 似将用户间的非信任关系在推荐过程中的影响通过类别加W区分。通过将非信 任关系的影响加w类别区分,提高非信任关系影响的精度,从而提高了推荐的准确性。例 如,用户Ui发现用户U2在多个项目的评分上与自己不一致,因此将其列入自己的非信任列 表,反映在推荐过程中即为两个用户偏好信息的差异应该更大。若用户Ui做出判断的项目 集中于某个固定的类别(电影、衣服、电器等等),用户Ui和用户U2偏好的差异在该类别上 应该变大,但在其他类别上运种差异应该发生变化(变大或者变小)。因此,本发明中,我们 定义了用户之间在不同类别的偏好差异性,通过迭代学习获取最佳的值。
【附图说明】
[0026] 图1为本发明框图;
[0027] 图2为平均绝对误差随权重与类别数量的变化;
[0028] 图3为均方根误差随权重与类别数量的变化。
【具体实施方式】
[0029] 现结合【附图说明】本发明的实施例。
[0030] 1、用户对类别的偏好信息
[00川步骤①:根绝项目所属类别(例如电影、衣服、电器等)定义推荐方法的类别;
[0032] 步骤②:结合图1所示,从输入评分矩阵中获取用户U产生评分行为中属于类别 k的项目数量与用户U产生评分行为的所有项目数量,定义用户U在类别k的偏好程度为 用户对该类别下的项目产生评分行为的数量与用户产生评分行为的物品总数的比值,具体 为:
[0033]
[0034] 其中,η。表示用户U产生评分行为的所有项目数量,η。化)表示用户U产生评分行 为中属于类别k的项目数量。
[0035] 2、用户在信任网络的影响力
[0036] 步骤①:结合图1所示,从信任网络中获取统计整个信任网络中指向用户U的信任 关系,记为T(u);指向用户U的非信任关系,记为D(u);
[0037] 步骤②:用户U在信任网络的影响力定义为统计所得信任关系
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1