利用T指数增强可信度,实现社交信任感知推荐器的机械化
1 引言
社交网络在网络的发展和普及中占据了前所未有的主导地位,这使得信任问题成为社交网络参与者关注的焦点。协同过滤推荐器等众多系统开始充分利用社交信任现象,以生成更准确的预测。
推荐系统是一种软件系统,它可以根据用户兴趣的相似性(基于社交或协同)、物品的相似性(基于内容)或两者兼顾(混合)为用户检索数据项。融入信任现象的社交推荐系统已被证明能为用户提供更可靠的推荐。
为了增强社交推荐系统,我们提出了受H指数启发的T指数。T指数用于维护一个已对某物品进行评分的最值得信赖用户的列表,我们称之为TopTrustee列表。当用户对某物品进行评分时,即使在遍历路径长度的上限内无法访问某些用户,也能找到这些可能值得信赖且对该物品有相似兴趣的用户。我们将展示在电影推荐的背景下,利用T指数如何改善生成的信任网络结构。
2 背景
随着社交网络日益流行,人们越来越需要在语义网上对其结构进行建模。FOAF(朋友的朋友)词汇表通过语义网技术以本体的形式描述用户信息及其社交关系。Golbeck提出了一个用于扩展FOAF词汇表的本体,以建模用户之间的信任关系,但该本体每个关系仅描述一个主题。Dokoohaki等人引入了一个更高效的本体,用于建模用户之间的信任关系结构。我们扩展了这个本体,增加了一个用于衡量用户基于T指数的可信度的元素。
Massa和Avesani提出了一个信任感知推荐器的架构,其中“信任网络”由用户明确表达。也有一些工作致力于在用户无法明确表达信任时对其进行形式化。O’Donovan和Smyth提出了基于用户档案过去行为的两种信任计算模型,Lathia等人引入了一个基于用户与其推荐者评分差异的“值”,用于更新用户与其推荐者之间的信任。他们的方法与O’Donovan和Smyth的模型类似,但基于信任的协同过滤算法需要一个集中的用户 - 物品矩阵,随着用户数量的增加可能会导致可扩展性问题。Weng等人假设每个用户是一个连接到其他用户的对等体,形成一个分布式的信任网络。我们采用Lathia等人提出的信任形式化方法来推导用户之间的信任值,并提出一种代理设置,其中每个用户被视为一个连接到其他用户的代理,形成一个信任网络,这种设置支持信任相关数据的分布式分配,具有更好的可扩展性。
3 语义信任推荐框架
我们的目标是在异构网络和环境中,通过唯一的URI为所有类型的用户和不同类型的物品建立信任关系。为此,我们开发了一个本体框架,由三个主要模块组成:语义档案管理器、信任引擎和推荐系统。
3.1 TopTrustee和T指数
为了建立用户之间的信任关系,我们在协同过滤中引入了两个新概念:T指数和TopTrustee。
-
T指数
:H指数由物理学家Jorge E. Hirsch定义,用于表征研究人员的科学产出。我们提出的T指数类似于H指数,用于估计用户的可信度,即用户与信任者之间信任值大于或等于T的信任关系的数量。T指数可以看作是信任网络中节点的入度,它不仅考虑了入边的数量,还考虑了入边信任关系的权重。以下是计算T指数的算法:
1: procedure ComputeT-index ⟨user, T rusterList⟩
2: T rusterV alueList ←T rusterList.sort(trustV alue, descending)
3: for all trustV alue in T rusterV alueList do
4: trustV alue ←multiply(trustV alue, MaxT −index).rounded
5: end for
6: Counter ←1
7: for all trustV alue in T rusterV alueList do
8: if Counter < trustV alue then
9: Counter ←Counter + 1
10: else
11: break
12: end if
13: end for
14: T -index ←Counter - 1
15: return T -index
16: end procedure
在这个算法中,首先将信任值列表按降序排序,然后将每个信任值乘以最大T指数并取整。接着从1开始计数,直到计数器的值大于信任值,最终T指数为计数器减1。
在我们的工作中,将一群信任同一个用户(称为中心用户)的用户定义为一个集群。
-
物品的TopTrustee
:物品的TopTrustee是指已经对该物品进行评分且T指数值高于某个阈值的用户。TopTrustee列表为刚对物品进行评分的用户介绍值得信赖的用户,这些用户可能在最大路径长度L内无法到达,但可能是物品评分者有用信息的来源。我们通过利用T指数来形成TopTrustee列表。例如,当用户ub对物品ia进行评分时,会计算其与两组用户的相互信任值并更新。第一组是其前n个邻居,这些用户不仅与ub直接相连,而且与ub的相互信任值最高;第二组是物品ia的TopTrustee列表。经过计算,ub可能会发现uf比其当前的某个前n个邻居更值得信赖,即使uf在路径长度L内无法访问,最终ub会将uf添加到其前n个邻居中,从而获得更可靠的推荐。
3.2 语义档案管理器
语义档案管理器模块负责为用户和物品创建和更新基于本体的档案。
-
本体用户档案
:我们利用Dokoohaki等人提出的信任模型来定义用户之间的信任关系。该信任本体有三个概念:关系是表达FOAF用户档案社交网络上信任关系的主要元素;MainProperties和AuxiliaryProperties分别定义了网络中用户之间关系的基本和可选属性。两个关联将MainProperties和AuxiliaryProperties连接到关系概念。关系总是有一个信任者和一个被信任者。在我们的模型中,信任值基于用户对不同物品的评分计算,我们采用Lathia等人提出的方法,根据用户与其推荐者对共同物品的评分差异来计算信任值,评分差异越大,信任值线性下降。我们为计算出信任值的两个用户创建一个关系概念的实例,将用户指定为信任者和被信任者,并将信任值和主题分配给该实例的MainProperties,同时将T指数也作为关系实例的MainProperty。我们还定义了RankRelation概念,用于将用户与物品通过排名值关联起来,以跟踪用户的评分物品,即用户档案。
-
本体物品档案
:我们开发了一个用于物品知识领域的本体,该本体可以被同一领域的其他本体扩展。我们引入了一个新的概念TopTrustee,它源自物品的TopTrustee概念,并将其分配给单个物品,以创建一个对该物品进行评分的用户列表,列表按用户的T指数排序。在实际场景中,这些TopTrustee列表可以通过分布式哈希表(DHT)实现,以唯一的URI作为键。
3.3 信任引擎
我们采用Lathia等人提出的信任形式化方法,基于用户与其推荐者对共同物品的评分差异来计算信任值。假设我们有两个用户ua和ub,他们之间的信任公式如下:
[T (ua, ub) = 1 - \frac{\sum_{i=1}^{n}(r_{ua,i} - r_{ub,i})}{r_{max} * n}]
这个公式计算了用户ua和其推荐者ub在n次历史评分中的评分差异总和,再乘以每个评分尺度的最大值(如5),该信任值用于更新用户与其推荐者之间的信任。
3.4 信任网络
我们根据用户档案和物品档案的评分信息逐步建立用户之间的信任关系,生成一个所谓的用户信任网络。我们将用户的前n个邻居及其相互信任值保存在本体结构中,该列表在“对新物品进行评分”事件时更新。如果该事件导致用户的前n个邻居发生变化,则会重新计算并更新包含该用户的所有TopTrustee列表中的T指数值。具体场景如下:当用户对新物品进行评分时,我们计算其与物品所有TopTrustee(不在其当前前n个邻居中但可能值得信赖)的信任值,同时更新其与前n个邻居的信任值。最后,从其先前的邻居和潜在被信任者的并集中选择最值得信赖的用户,形成新的前n个邻居。
3.5 推荐系统
在分布式推荐系统中,没有关于相似用户评分的全局视图。为了生成推荐,我们需要找到一种收集邻居意见的方法。通过邻居进行遍历是收集物品评分的合适解决方案,同时需要将信任网络中用户之间连接边的长度限制在一个上限(L)内。然而,确定合适的L值是一个挑战,因为它会导致准确性和性能之间的权衡。随着并行遍历次数和L的增加,我们可以提高推荐的预测准确性和覆盖率,但需要更多的带宽和计算资源。另一方面,只要用户与其邻居的相互信任值不低于预定义的最小阈值(v),用户就可以遍历其直接或间接邻居。
收集完用户邻居的所有信息后,我们的目标是最小化向用户推荐不相关物品的风险。预测评分值可以反映用户是否对某物品感兴趣,预测值是用户a的邻居评分的加权平均值。
4 评估
4.1 实验设置
我们基于MovieLens1数据集对上述方法进行评估,该数据集包含943个用户档案,评分采用五分制。我们将档案分为训练集和测试集,分别占评分的80%和20%。使用Protégé设计用户和物品的本体档案,并利用Java中的Protégé API实现推荐系统。首先,根据训练数据构建信任感知社交网络,并使用Welkin可视化网络,以研究T指数对网络结构的影响。然后,通过信任网络的遍历机制收集推荐。我们的重点是研究T指数对推荐系统性能的影响,而不是评估信任计算本身。
我们旨在展示社交环境中基于信任关系的网络结构如何受T指数影响。为此,我们首先比较不同T指数值下前10个最值得信赖用户的入度分布,然后构建有和没有T指数的信任网络,观察差异,包括使用T指数时产生的推断边和修剪边。我们研究T指数变化对基于邻居评分收集的推荐的预测覆盖率和准确性的影响,邻居的相互信任值需高于最小阈值(v = 0.1),且在遍历路径长度上限(L = 3)内可达。
我们在不同设置下进行实验,改变每个用户的前n个邻居和每个物品的TopTrustee列表的大小m。在之前的工作中,当m = 5和n = 5时取得了最显著的改进,因此我们选择这两个值来有效研究入度分布和信任网络结构。我们考虑T指数的不同值,从0(不使用T指数)到25、50、100、200、500、1000。为了研究覆盖率和准确性,将n的值调整为2、3、5、10、20、50,而m保持为5。
4.2 结果与讨论
- 入度分布 :当n和m都等于5时,研究不同T指数值下前10个最值得信赖用户的入度分布。入度表示作为被其他用户信任的节点的传入边数量。如图4所示,当使用T指数(T指数≠0)时,前10个最值得信赖用户在传入信任关系方面的权重更加平衡,这意味着用户平均有更多机会找到最相似的中心节点作为其主要集群。因此,最值得信赖用户所承受的传入信任关系负载分布到其他值得信赖的用户上,使我们的推荐系统对信任网络中的节点故障或瓶颈更具抵抗力。无论T指数的非零值是多少(25、50、100、200、500、1000),使用T指数都会显著改变结果。
- 信任网络结构 :生成有和没有T指数的两个信任网络(n = 5,m = 5)。图4显示,不使用T指数时,前5个最值得信赖用户的入度分布急剧下降;使用T指数时,前10个最值得信赖用户的入度分布也有明显下降,但在第10个之后,入度分布持续稳定下降。为了简化,我们仅研究直接连接到至少一个前10个最值得信赖用户的用户的信任网络结构。图5(a)和图5(b)分别展示了没有和使用T指数(T指数 = 100)的信任网络结构。可以看出,使用T指数时,集群之间的共同用户数量增加,不同集群的用户更容易找到彼此,更多形成用户兴趣不同区域的用户可以被访问。通过比较有和没有T指数的信任网络,我们发现推断边主要位于中心节点之间,而修剪边大多位于一个集群内。
- 覆盖率和MAE :研究不同T指数值下,对于多个n值生成的推荐的覆盖率和平均绝对误差(MAE),m值保持为5。如图7(a)所示,不使用T指数时,n = 2的最小覆盖率超过85%,优于类似工作在相同路径长度(L = 3)下的结果(覆盖率 < 60%),使用T指数时,所有n值的覆盖率都有所提高,且对于所有非零T指数值,覆盖率的改善程度几乎相同。随着邻居列表大小(n)的减小,覆盖率结果更好。如图7(b)所示,不使用T指数时,n = 2的最大MAE值小于0.91,优于类似工作在相同遍历路径长度阈值(L = 3)下的结果(MAE > 0.96),这表明将物品的TopTrusteeList包含在“前n个邻居”中可以改善结果,使用T指数也能取得更好的结果。T指数可以改善所有n值的MAE,但MAE的改善程度会随着T指数的恒定值和不同的n值而变化。例如,T指数 = 100且n = 5时,MAE效果最佳;而同样的T指数下,n = 10时MAE效果最差。与覆盖率不同,T指数并不总是随着邻居列表大小的减小而使MAE更好。总体而言,使用T指数可以提高推荐的预测准确性和覆盖率,但准确性更受T指数的不同值和邻居列表大小(n)的影响。
下面是一个简单的mermaid流程图,展示信任网络的构建过程:
graph LR
A[用户对物品评分] --> B[计算与TopTrustee信任值]
A --> C[更新与前n个邻居信任值]
B --> D[选择最值得信赖用户]
C --> D
D --> E[形成新的前n个邻居]
E --> F[更新T指数]
| 实验参数 | 说明 |
|---|---|
| n | 每个用户的前n个邻居 |
| m | 每个物品的TopTrustee列表大小 |
| T指数 | 用于评估用户可信度的值 |
| v | 邻居相互信任的最小阈值 |
| L | 遍历路径长度上限 |
综上所述,我们的研究表明,T指数在改善信任网络结构、提高推荐系统的预测准确性和覆盖率方面具有显著作用,但在实际应用中需要根据具体情况选择合适的T指数值和邻居列表大小。
4.2 结果与讨论(续)
为了更清晰地理解T指数对推荐系统各方面性能的影响,我们进一步深入分析上述实验结果。
入度分布的深入分析
入度分布的变化反映了信任网络中节点的受信任程度分布情况。当不使用T指数时,前几个最值得信赖的用户承担了过多的信任关系,这可能导致这些节点成为网络的瓶颈,一旦这些节点出现故障,整个网络的信任传递可能会受到严重影响。而使用T指数后,信任关系更加均匀地分布在多个节点上,使得网络更加健壮。
我们可以将这种变化类比为一个城市的交通网络。如果所有的交通流量都集中在少数几条主干道上,那么这些主干道一旦发生拥堵或事故,整个城市的交通就会陷入混乱。而如果通过合理的规划,将交通流量分散到更多的道路上,即使某条道路出现问题,也不会对整个交通系统造成太大的影响。
信任网络结构变化的意义
信任网络结构的变化对于推荐系统至关重要。集群之间共同用户数量的增加,意味着不同兴趣群体之间的交流和信息共享更加容易。在推荐系统中,这可以帮助用户发现更多不同类型的物品,拓宽用户的兴趣范围。
例如,在电影推荐场景中,原本喜欢动作电影的用户可能通过信任网络的结构变化,发现了一些之前从未关注过的文艺电影。这不仅提高了用户的满意度,也增加了推荐系统的多样性。
覆盖率和MAE的综合考量
覆盖率和MAE是衡量推荐系统性能的两个重要指标。覆盖率反映了推荐系统能够为用户提供推荐的物品范围,而MAE则反映了推荐系统预测评分与实际评分之间的误差。
从实验结果来看,使用T指数可以同时提高覆盖率和降低MAE,但不同的T指数值和邻居列表大小(n)会对这两个指标产生不同的影响。在实际应用中,我们需要根据具体的业务需求来平衡这两个指标。
如果我们更注重推荐系统的全面性,希望为用户提供更多的选择,那么可以适当增大覆盖率。此时,可以选择较小的n值和合适的T指数值,以确保能够覆盖更多的物品。
如果我们更注重推荐系统的准确性,希望为用户提供更精准的推荐,那么可以适当降低MAE。此时,需要根据不同的T指数值和n值进行多次实验,找到最优的组合。
5 总结与展望
总结
本文提出了一种基于T指数的社交信任感知推荐系统。通过引入T指数和TopTrustee概念,我们增强了协同过滤算法,改善了信任网络的结构,提高了推荐系统的预测准确性和覆盖率。
在背景部分,我们回顾了相关的研究工作,包括社交网络建模、信任形式化等方面的内容。在语义信任推荐框架中,我们详细介绍了各个模块的功能和实现方法,包括语义档案管理器、信任引擎、推荐系统等。在评估部分,我们通过实验验证了T指数在推荐系统中的有效性。
展望
尽管我们的研究取得了一定的成果,但仍然存在一些可以进一步改进的地方。
- T指数的优化 :目前的T指数计算方法虽然简单有效,但可能还存在一些局限性。未来可以考虑引入更多的因素,如用户的活跃度、评分的时间间隔等,来进一步优化T指数的计算。
- 信任网络的动态更新 :在实际应用中,用户的兴趣和信任关系是不断变化的。因此,我们需要研究如何实现信任网络的动态更新,以适应这种变化。
- 多源数据的融合 :除了用户的评分数据,还可以考虑融合其他类型的数据,如用户的社交关系、物品的属性信息等,以提高推荐系统的性能。
下面是一个mermaid流程图,展示未来研究的方向:
graph LR
A[当前研究成果] --> B[T指数优化]
A --> C[信任网络动态更新]
A --> D[多源数据融合]
B --> E[更精准的T指数]
C --> F[适应变化的信任网络]
D --> G[多维度的推荐系统]
| 未来研究方向 | 具体内容 |
|---|---|
| T指数优化 | 引入更多因素,如用户活跃度、评分时间间隔等 |
| 信任网络动态更新 | 研究如何实现信任网络的实时更新 |
| 多源数据融合 | 融合社交关系、物品属性等数据 |
总之,社交信任感知推荐系统是一个充满挑战和机遇的研究领域。通过不断地探索和创新,我们有望开发出更加智能、高效的推荐系统,为用户提供更好的服务。
超级会员免费看
615

被折叠的 条评论
为什么被折叠?



