基于利他主义的群组推荐效用函数研究
立即解锁
发布时间: 2025-08-22 01:02:29 阅读量: 1 订阅数: 5 


计算集体智能:多智能体系统的前沿研究
### 基于利他主义的群组推荐效用函数研究
在群组推荐系统中,如何平衡个人利益与社会福利是一个关键问题。本文将介绍一种基于利他主义的效用函数,并通过实验评估其在群组电影推荐中的性能。
#### 1. 利他主义效用函数
效用函数考虑了两个方面:个人利益和社会福利。其表达式如下:
\[U_{i,j}(x_{1,j}, x_{2,j}, ..., x_{n,j}) = (1 - \lambda_i) \cdot x_{i,j} + \lambda_i \cdot W(x_{1,j}, x_{2,j}, ..., x_{n,j})\]
其中,\(\lambda_i \in [0, 1]\) 表示用户 \(i\) 追求个人利益或社会福利的程度。当 \(\lambda_i = 0\) 时,用户只关注个人利益;当 \(\lambda_i = 1\) 时,用户表现出无私行为,关注整个群组的满意度。
在两人群组的情况下,效用函数变为:
\[U_{i,1}(x_{1,1}, x_{2,1}) =
\begin{cases}
x_{i,1} + \lambda_i(1 - \delta)x_{j,1} & \text{if } x_{i,1} < x_{j,1} \\
(1 - \lambda_i\delta)x_{i,1} + \lambda_ix_{j,1} & \text{if } x_{i,1} \geq x_{j,1}
\end{cases}
\]
#### 2. 个性测试
为了校准 \(\lambda_i\) 参数,我们采用了显式的个性测试方法。选择了 Mini - IPIP 问卷,它由 20 个问题组成,每个个性因素有 4 个问题。以下是用于评估用户宜人性的问题:
| # | 问题描述 |
| --- | --- |
| 1 | 同情他人的感受 |
| 2 | 对他人的问题不感兴趣(反向计分) |
| 3 | 感受他人的情绪 |
| 4 | 对他人不太感兴趣(反向计分) |
用户对每个问题的回答可以是 1 到 5 的数字,1 表示“非常不准确”,5 表示“非常准确”。
#### 3. 参数设置
假设每个用户完成了个性评估测试,用户 \(i\) 的个人宜人性值 \(\alpha_i \in [1, 5]\) 通过平均个人回答值获得。\(\lambda_i\) 参数的定义如下:
\[\lambda_i = \frac{\alpha_i - 1}{4}\]
当 \(\alpha_i = 5\) 时,\(\lambda_i = 1\),用户只关注群组满意度;当 \(\alpha_i = 1\) 时,\(\lambda_i = 0\),用户的效用仅取决于个人满意度。
#### 4. 收益与群组推荐
为了生成群组推荐列表,我们首先为每个用户生成一个包含 10 个项目的列表 \(L_i\),然后将所有列表合并为一个列表 \(L\):
\[L = \bigcup_{i \in G} L_i\]
其中,\(G\) 是群组的成员集合。
对于列表 \(L\) 中的每个项目,计算每个用户的评级预测,即 \(x_{1,j}, x_{2,j}, ..., x_{n,j}\)。然后计算每个用户对每个项目的效用 \(U_{i,j}\),最后计算群组对项目 \(j\) 的效用 \(x_{G,j}\):
\[x_{G,j} = \sum_{i \in G} U_{i,j}\]
系统将推荐 \(x_{G,j}\) 值最高的 10 个项目。
#### 5. 离线评估
为了评估 \(\lambda\) 和 \(\delta\) 参数在效用函数中的影响,并正确设置 \(\delta\) 值,我们进行了离线评估。
##### 5.1 电影推荐服务器
采用 Apache Mahout 库预测用户评级,选择 MovieTweetings 数据集训练系统。该数据集包含约 35000 个用户、360000 个评级和 20000 部电影。
使用基于项目的城市街区距离(曼哈顿距离)计算电影之间的距离。在 Mah
0
0
复制全文
相关推荐









