基于多样化电影推荐的破茧方法

时间:2021-07-17 17:02:43 浏览量:

李颖杰

摘 要:传统的协同过滤电影推荐模型由于在计算相似度时考虑因素过于单一,导致推荐方案与用户之前喜欢的电影类型相似,从而造成信息茧房效应。文章从用户基本属性出发,综合考虑专家评分、热点推荐两方面,并结合模拟退火的思想,提出了一种解决信息茧房问题的方法。

关键词:信息茧房;模拟退火;多样化推荐

传统的协同过滤电影推荐模型推荐的方案往往會与用户之前看过的电影类型相似,造成信息茧房,导致茧房效应的根本原因是在计算相似度时考虑途径过于单一,为了使推荐模型具有多样性和新颖性,解决信息茧房的问题。具体从以下3个方面进行改进:(1)综合考虑各用户的基本属性以及用户过往的电影评分记录去计算余弦相似度。(2)将专家评分与热点推荐考虑进去。(3)给用户找邻居时采用模拟退火思想,从而使得多样性增加。

1    特征向量的建立

建立新用户的特征向量,特征向量由四部分组成:用户的基本属性、用户对过往电影的评分、专家推荐对某些电影的评分以及热点推荐对某些电影的评分。

设新用户特征向量为:Ai=(x1, x2, ..., xm)老用户:Bi=(y1,y2,...,ym)

其中,x1, x2,x3, x4分别表示用户的性别、年龄、职业、邮政编码。

x5, ..., xm表示对电影的评分。它的数值以如下方式定义。

对所有的(m-5)部电影,用户评分过的a部电影,专家群评分过的b部电影,热点推荐评分过的c部电影,这些被评过的电影对应的向量数值即为它得分的数值,其他未被评过的电影对应的向量数值为0。

2    专家评分与热点推荐

相关指标确立:设用户U的偏好项目集为Uu,该集包括用户U所有已评分的项目,用户U偏好类别C的概率为Cu,c,Cu为用户U对项目类别的偏好概率集,Cu,c∈Cu,Ii为类别C所属的所有类别的集合。

对于项目域中的每一个类别都要计算用户U的偏好概率,最后创建Cu。当某项目只属于一个类别时,它对该类别贡献的比例是1,如果项目属于N个类别,对每一个类别的贡献度为是。则,我们有:

接下来定义用户对电影的偏好多样性程度。我们知道,若用户对多种类型的电影都进行了评分,则用户偏好更加多样化,计算结果越大。若用户仅对一种或几种类型的电影评分,则用户的偏好趋于单调,计算结果越小。于是我们定义用户偏好多样化程度:

创建专家群:对每种电影类型,都为它创建一个专家群。我们认为偏好多样化,评分电影类别比较多的用户是不可能成为某类别专家的,即Du较大的用户不能成为专家。我们认为偏好趋于单调,所有的评分都只是对一种或几种电影类型的用户对其喜欢的电影类型颇有经验,能被认定为其评分最多的电影类型的专家,即Du较小的用户能被认定为专家。专家群的具体创建过程如下:

首先,选择多样性值Du低于给定阈值T的用户,从中为每个电影类型选择偏好概率Cu最高的用户作为该类别的专家,(同一用户可作为多个类型的专家)从而创建出每种类型的专家群。

定义专家评分:电影j的专家评分要考虑过去为电影j评过分的所有专家组成的专家集ESj,从而我们定义专家评分为:

并将所得到的分最高的A项中用户未评分的电影的得分作为对应向量的值。

专家推荐系统的优势在于它对用户没有评过分的电影进行评价,它产生的推荐方案中,既包括跟用户的偏好相似的电影,又包括专家推荐的新电影,从而能使推荐方案更加多样化。而且专家推荐能很大程度上解决信息茧房问题,因为即使用户没有评价任何与推荐电影类型相似的电影,如果专家群对其评价很好,它仍然会被推荐给用户。并且专家群是在某类电影非常有经验的用户,他们对某类电影的评分客观且专业,因此他们在做到个性化、多样化推荐的同时,能够保证高质量的专业推荐。

热点推荐:从3个方面评价热门电影:在最近M天内的搜索次数p,播放量q以及影评数r。(这里的p,q,r均以通过数据归一化处理)

定义:某电影的热度S=s1p+s2q+s3r,并认为权重s1=s2=s3=,并将所得到的分最高的B项中用户和专家均未评分的电影的得分作为对应向量的值。

热点推荐产生的推荐方案同样能对用户没有评过分的电影进行评分,这其中既包括跟用户以往常看的电影类型,又包括热点推荐的新电影,从而能够做到多样化推荐,很好地破除信息茧房。因为只要一部电影热度很高,无论用户有没有评分这种类型的电影,都会被推荐给用户。同时热点推荐系统主要推荐的电影是当下最火的,或是刚上映的,很符合现在年轻人追求新电影的潮流。

而未被用户评分,专家推荐和热点推荐的电影所对应特征向量分量我们均认为是0,这样,就建立了每个用户唯一对应的特征向量。

3    基于模拟退火思想的邻居筛选

通过前文我们确定了每个用户唯一对应的特征向量,对于给定新用户1的特征向量A1=X1,X2,...,Xm,我们计算它与每个老用户特征向量的余弦相似度t1,t2,...tk,其中:

对余弦相似度数据作归一化处理,使t1,t2,...tk均为0到1之间的数,运用模拟退火的思想,我们认为:

老用户i与该新用户1为邻居的概率:P1=ti,

老用户i与该新用户1不为邻居的概率为:P2=1-ti

按上述规则,可以得到新用户1的所有邻居集,我们对每个邻居对电影的所有评分数据归一化处理,使每个指标处于相同的数量级。我们采用标准差标准化法,即:

并将归一化后的所有邻居评分过的电影中评分最高的X部电影作为推荐方案(X的大小可根据情况确定),由上文可知,这样的推荐方案能够很好地解决信息茧房问题,从而实现个性化、多样化电影推荐。

4    结语

本文产生的电影推荐方案综合考虑了用户基本属性、专家推荐、热点推荐3个方面,很好地解决了传统的协同过滤算法带来的信息茧房问题,实现了电影的个性化推荐。这种思路能推广到更多的领域中,对解决信息茧房问题有重要的意义。

[参考文献]

[1]姜书浩,张立毅,张志鑫.基于个性化的多样性优化推荐算法[J].天津大学学报(自然科学与工程技术版),2018(10):50-57.

[2]翁海瑞.融合时间函数和用户属性的推荐算法研究[D].广州:广东工业大学,2019.

[3]吴成超.协同过滤推荐算法的动态性研究[D].合肥:中国科学技术大学,2015.

推荐访问:多样化 方法 推荐

《基于多样化电影推荐的破茧方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:

文档为doc格式

一键复制全文 下载 投诉