摘要
随着科技的飞速发展,人们在扮演着信息的消费者和生产者的同时,也使得信息超载问题越来越严峻,而推荐技术能够在大量信息中迅速找到关键内容,大大缓解该问题。目前,推荐技术已被广泛应用于电影和书籍推荐、音乐和视频服务以及广告策略等领域。然而,传统推荐技术面临着数据稀疏、冷启动以及推荐内容单一等难题,无法满足用户的多样化需求,为此,一种引入知识图谱的推荐技术被提出。因为知识图谱包含丰富的信息内容并且信息之间具有强大的关联性,所以将知识图谱中的信息应用于推荐系统,可以有效解决传统推荐技术中的难题,从而更好地满足用户需求。 知识图谱的拓扑结构有利于信息的传播,并且传播过程中经过的节点集合可以表示推荐数据的上下文信息,进而丰富用户和项目的特征。然而,目前大多数基于知识图谱的推荐模型只关注用户的上下文信息或者只关注项目的上下文信息,未能将用户和项目特征与知识图谱结合,从而无法充分利用知识图谱中的信息。此外,许多推荐模型缺乏对用户兴趣的偏好建模,未能充分考虑用户与项目在知识图谱传播过程中的协作关系。为此,本文提出了基于知识图谱和注意力机制的推荐模型(Recommendation Model of Knowledge Graph and Attention Mechanism Network, KGAMN),主要研究内容与工作可以概括为以下几点: (1)提出基于知识图谱和注意力机制的推荐模型(KGAMN)。模型将用户和项目特征与知识图谱中的实体相结合,分别提取对应的上下文信息。首先利用协作传播和交互单元提取项目特征向量。其次,为促进用户特征融合,模型采用注意力机制对知识图谱三元组的尾实体分配差异化权重,以充分挖掘知识图谱中的语义信息。再次,模型将用户交互历史和知识图谱传播过程相结合来挖掘用户在知识图谱中的层次兴趣,以对用户的隐含目的进行更加细粒度地建模。最后,将用户和项目特征向量共同输入多层感知机(Multilayer Perceptron,MLP),以计算它们的交互概率并实现推荐。 (2)本文分别对 KGAMN和其他推荐模型进行了 CTR预测实验、Top-K推荐实验和稀疏实验,实验结果表明,结合了知识图谱和注意力机制的模型能够丰富用户和项目表示,从而更准确地提取特征向量,以达到更好的推荐效果。此外,本文还对提出的模型进行了消融实验和优化实验,进一步验证了模型结构的合理性和有效性。 (3)基于知识图谱和注意力机制的电影推荐系统的设计与实现。首先,利用爬虫技术获取豆瓣电影数据,利用 Neo4j 进行存储并建立电影知识图谱。其次,基于本文提出的模型和构建的电影知识图谱,设计并实现了一个基于 Django的电影推荐系统。该系统将记录每次为用户推荐的结果以及用户的交互历史,然后更新用户画像,以提高下次推荐的准确性。这不仅缓解了信息超载问题,也提升了用户体验,具有现实意义。