上下文信息社会网络论文

时间:2022-04-20 08:55:39

上下文信息社会网络论文

1、相关工作

比如,即使一个用户和其朋友的品味极其相似,她对一部电影的评价可能还受其他因素影响(比如,她在看电影时候的情绪和陪她看电影的人)。因此近期的研究开始关注社交网络中的上下文信息。文献[8]提出了将用户和项目进行群组的方法,在协同过滤算法中利用了这些子群信息(一种上下文信息)来提高用推荐系统的质量。Liu等人[9]利用推荐对象的属性上下文信息来对它们之间的关联关系进行度量,并通过估计出的关联关系信息来改善推荐的效果。文献[10]提出了将社会网络上下文信息(个人表现和交际影响)整合到一个矩阵分解模型中。但是,这样的上下文信息仅仅与社交关系有关,大量的非社交的上下文信息却被忽视了。相反,本文提出的CS算法运用机器学习技术和矩阵分解技术,不仅包含了大量的上下文信息,而且对上下文信息没有限定信息类型:上下文信息被显式地应用到矩阵划分中;基于信任度的皮尔逊相关系数提高了计算用户相似度的准确性。

2、CS推荐系统

2.1预备知识

2.1.1相关概念传统的推荐系统通常只考虑用户-项目评分矩阵来进行推荐。然而,在许多系统中,可以通过丰富的上下文信息来为推荐系统提供了新的信息维度。本文把上下文信息分为两类:(1)静态上下文,它描述用户的特性,例如年龄、性别、会员身份,角色等;或者是一种商品、种类、价钱、物理特性等;(2)动态上下文,是一种与等级相关的即时信息(例如当一个用户评价一个产品时,他的心情和位置信息)。另一方面,在线社交网络也带来一些其他资源,通过分析这些资源一个用户的喜好可以由与他有相同品味的朋友推断出。因此,本文试图系统地融合上下文信息和社交网络信息来改善推荐性能。用{U1,U2,...,Um}u表示用户集合,{V1,V2,...,Vn}v表示项目集合。所有用户可以根据自己的喜好为项目评分。假设分值为离散变量,范围为12{,,...}mLLLL。比如,许多推荐系统(如MovieLens)使用五分制进行评分(例如[1,2,3,4,5])。用户uU对项目vV的评分表示为u,vR,所有的评分集合,{,v}uvuvR=RUuV构成一个用户-项目评分矩阵(如图1(a))。正如上面提到的,假设对用户的每一个评分级iR都存在与其相关的上下文信息集合,用12{,,...}iCcc来表示。我们对每种类型的上下文信息的值域没有限制,也就是说,离散值和连续值都是合法的。在社会网络中将用户信息及用户之间的关系可以抽象表示为有向带权值的社会网络图的形式:G(V,E,C)。其中,V表示节点集合,每个节点代表网络中的用户个体;E表示边的集合,表示两个个体之间存在的关系;{}uvCc表示边的权重值,此值越大表示信任程度越大,本文将其定义为用户间的信任度。由于信任关系不是对称的,所以图中的边是有向的,网络图为有向图。2.1.2矩阵因式分解以上的矩阵,使得将矩阵因子相乘后可以重构或者近似原始矩阵。在推荐问题中,一个矩阵因式分解模型是将用户-项目评分矩阵R,mnRR(m是用户数量,n是项目数量)分解成一个用户特征矩阵U,mlUR和一个项目特征矩阵V,lnVR。TRUV(1)其中l是一个潜在特征向量的维度,它标志着一个用户或者一个项目的特征。对于一个用户a来说,的元素(即aU)衡量了用户对项目的兴趣度;对于项目b,的元素(即bV)衡量了和相应的潜在特征的相关程度。因此,TabUV表示用户和项目之间的关联度,即考虑了所有潜在特征后用户对项目的偏好度。为了计算,考虑到用户-项目评分矩阵的稀疏性,定义了以下的目标函数,即使预测评分与用户实际评分的误差最小化:T2i,j,,11argmin()mnijijjkIUVRUV(2)其中i,jI为一个指示变量,即如果用户i对商品j进行了打分,则为1,否则为0。另外,为了避免过度拟合,在公式中加入了规范化系数,即T222i,j,,11argmin()(||||||||)mnijijFFjkIUVRUVUV(3)其中2FA(A是XY的矩阵)是Frobenius范数,是通过2xyxyXYA计算得到。参数控制规范化的范围。公式3可以通过两种方式解得:(1)随机梯度算法(SGD),通过迭代更新潜在用户特征因子和潜在项目特征因子。(2)交替最小二乘算法(ALS),通过修正矩阵(或者)以优化(或者),并且轮转迭代。

2.2上下文感知的推荐模型

本节首先介绍一下如何结合上下文信息来提高推荐系统的推荐准确度,在此先暂不考虑社会关系。为了有效结合不同的上下文信息,我们使用一种具有较高学习精度的随机决策树算法。该算法的目标是对原始即用户-项目评分矩阵使用随机划分策略将相似用户或相似项目的评分划分到树的同一结点中,即将具有相似上下文的评分划分在一个组内。由于是在相似的上下文中产生,因此在相同组里的评分将会比在原始评分矩阵中的评分具有更高的相关性,有助于提高推测缺失值的准确性。对每个决策树中的每一个结点,利用公式(2)对评分矩阵进行基本的矩阵因式分解。经过分解之后,分别得到用户潜在特征向量与项目潜在特征向量(如图1(b))。用户特征因子表明了用户在一些潜在主题上的兴趣分布,而项目特征因子代表了与这些主题相关的项目成员。为了划分评分矩阵,我们选择了一个潜在特征(如图1(b)的第二列)和随机选取了一个分割值(本例中假设选择的分割值为0.4)。设定之后,则当前的评分矩阵被划分为两部分,如图1(c)所示。在本例中,根据中第二个潜在特征向量和随机选定的分割值,评分矩阵被从第二行和第三行之间分割成了两部分。由于第一个和第二个用户的潜在特征值比较相似,因此他们给出的评分被决策树划分到同一个结点中。在为每个上下文信息构建决策树时,在树的每一层,算法都会从上下文信息集合C中随机选择一个上下文信息rc来划分评分矩阵(见图2)。具体来说,评分矩阵是根据的值进行划分的。例如,如果我们假设上下文信息是一周时间,则评分矩阵可以根据每一天(即从周日到周六,工作日或者周末)来进行有意义的划分。另一方面,如果的值没有任何语义信息,则我们首先要对每一个评分进行标准化到某一特定区间(如[0,1]),然后选择一个随机的阈值(如∈[0,1])来划分评分。一旦在树中的某一层上完成了评分划分,则随机选取的上下文信息rc就会从上下文信息集合中被删除:rCC/c,从而保证了一个上下文信息在一条路径上只作一次。尽管朋友能够提供有用的信息来帮助推荐系统为用户做出高质量的推荐,但现有的研究大部分都是在利用社会网络中所有的可用信息进行推荐,没有对这些信息进行细致的过滤;或者并没有深入的调查怎样精确计算用户之间的品味相似性。为了解决这些问题,本文引进一个新的社会规范化系数来对用户和他朋友之间的品味差异进行约束。在真实生活中,一个用户可能会有成百上千个朋友,因此同等对待朋友(或者朋友所给出的推荐信息)是没有意义的,因为其中的一些朋友可能与用户具有非常相似的品味,而与另一些朋友可能拥有完全不同的品味。在社会网络中,每一个用户u都会有邻居集合uN,用uvt表示节点对节点v的社会信任度,其取值范围在[0,1]之间。值为0表示完成不信任,值为1表示完成信任。在社会网络中,的值可以解释为用户u对用户的了解与信任程度。但由于该权值包含一些噪音数据,不能体现社会网络中的整体结构信息,这就类似于在网页分析中的忽略了网页的链接结构信息。但其实在一个信任网络中,如果某个用户信任大部分的用户,则其信任度应当被降低;反之,如果某个用户被大部分用户所信任,则其信任度应该被增强。

3、实验评估

3.1实验方法

3.1.1数据集豆瓣网()是中国最大的社交平台之一,许多人在这里分享对书、电影、音乐的评价。每个用户可以对书、电影、音乐进行评级(从一星到五星),表达他们对这些产品的喜好。在社交网络中如果某用户的评论被认为是有趣且有用的,则他就可能被其他用户所跟随。表1列出了数据集的统计数据。我们选择豆瓣的数据因为它不仅包含了相关的时间/数据和其它可推断的上下文信息,而且还包含了社会网络信息,因此非常适合用于评估应用了多种类型信息的CS算法的性能。从豆瓣数据集中,随机选择80%的评价来训练推荐模型,使用剩下的20%比较它们的性能。3.1.2比较对象本文将CS推荐系统和目前主流的几种推荐方法进行了对比实验:传统的基于上下文感知推荐系统RPMF[14],基于社会网络的推荐系统SoReg[11];应用基本的矩阵分解模型构建的推荐系统BMF[12]。与所有的上下文推荐系统相似,我们从数据集中可获得的上下文化信息中选取了五种类型的上下文信息:(1)小时信息,即用户给出评分的时刻;(2)日期信息,即用户给出评分的日期;(3)当一个评价被给出的时候,对目标商品产生“期待”的数量;(4)当目标用户评价一个特定商品时,其所给出评分的平均值;(5)目标商品所属的类别。3.1.3度量标准实验选取在推荐系统评价中经常使用的两个度量标准来比较不同推荐模型的性能:平均绝对误差(MAE)和均方根误差(RMSE)。公式14和15分别给出两者的定义:

3.2实验结论

首先使用豆瓣网数据集来说明CS算法中不同参数值的选取对推荐性能的影响。经过交叉验证之后得到规则化常量=0.1。图3给出了当数据集的不同子集(如书数据,电影数据,音乐数据)被应用时,CS推荐模型的性能如何随着参数值的变化而变化,参数决定了有多少社会网络信息量被整合进CS推荐模型中(见公式11)。实验中设置在求解矩阵因式分解模型中潜在特征向量的维数为10,迭代求解次数为20。后续实验会给出这些变量的变化如何影响基于矩阵因式分解的推荐模型的性能。从图3可以看出随着值的增大,MAE和RMSE的值首先减少,接下来当到达一定阈值时(大约在=0.1处)其值变得相对稳定(只是轻微下降)。因此可能得出社交网络信息可以有效改善推荐质量的结论,并且=0.001是一个合适的阈值来很好地平衡用户-项目评分矩阵和社交网络信息。接下来,验证上下文信息数量对推荐性能的影响。这一点可以通过控制决策树的高度来实现。也就是说,如果设树的高度为1,则只有一种类型的上下文信息在树的划分时被使用;如果设树的高度为4,表示所有的上下文信息都被应用到推荐系统中来。图4给出了不同数量上下文信息的实验结果。从图4中可以看出在所有情况下,上下文信息越多则会产生越高的推荐精度,即MAE和RMSE的值越小。实验结果表明上下文信息很大程度上改善了推荐系统的性能,另一方面,从实验结果中可以看出本文所选取的上下文信息是非常有用的。最后,将CS推荐系统和其他推荐系统的性能在豆瓣网数据集上做对比实验。在做对比实验之前,需要决定两个重要的参数的取值,即潜在特征向量的维度和基于矩阵因式分解模型的迭代次数。首先固定迭代次数为10,观察潜在特征向量在不同维度下的MAE取值,如表1所示。发现随着维度的增加MAE的值在减少,这意味着随着维度的增加将会产生更高的推荐。但是当维度增加到大约10时,推荐质量的改进甚小。因此在实验中,为推荐算法的潜在特征向量维度设置为10。同理,本文为所有基于矩阵因式分解模型的迭代次数设置为20,因为更多的迭代次数并没有降低MAE的值,反而会产生更高的开销。参数一量确定,下面就分别使用书数据、电影数据、音乐数据和整个豆瓣网数据来比较不同推荐模型的推荐性能。表2给出了对比结果。从图5可以看出,本文提出的CS推荐模型所有的实验数据中都比其他推荐模型更加精确。所有基于矩阵因式分解的推荐模型都明显优于传统的基于项目和基于用户的协同过滤算法,这表明了矩阵因式分解技术在推荐领域的优势。实验结果也表明综合考虑上下文信息和社会网络信息比只考虑某一种信息类型的推荐模型(如SoReg和RPMF)具有更高的推荐质量。

4、结论

本文提出的CS算法是一个将上下文信息和社交网络信息相结合推荐算法,大大提高了推荐质量。该算法首先使用随机决策树算法基于不同的上下文信息对原始用户评分矩阵进行划分。划分后生成的子矩阵中包含相似上下文的评分,因此彼此间具有更大的影响。矩阵因式分解技术被应用到子矩阵中用来预测缺失评分。为了有效联合社会网络信息,CS算法引进额外的社会规则术语通过学习他朋友的品味来推断用户对一个项目的喜好。为了识别有相似品味的朋友,提出了一个基于上下文信息的皮尔逊系数来衡量用户与朋友的相似性。在两个真实数据集上进行的验证,实验结果表明CS推荐算法明显优于传统的基于上下文信息和基于社交网络的推荐模型。

作者:李慧 马小平 胡云 施珺 单位:中国矿业大学信电学院 淮海工学院计算机工程学院

上一篇:企业创新能力社会网络论文 下一篇:创业者创业绩效社会网络论文