地球信息科学理论与方法

融合知识图谱与协同过滤的微地图推荐

  • 牛雪磊 , 1, 2, 3 ,
  • 杨军 , 1, 2, 3, * ,
  • 闫浩文 1, 2, 3
展开
  • 1.兰州交通大学测绘与地理信息学院,兰州 730070
  • 2.地理国情监测技术应用国家地方联合工程研究中心,兰州 730070
  • 3.甘肃省地理国情监测工程实验室,兰州 730070
* 杨 军(1973— ),男,宁夏吴忠人,博士,教授,主要从事深度学习、三维模型空间分析、遥感影像分析与处理、地理信息系统等。E-mail:

牛雪磊(1994— ),男,内蒙古商都县人,博士生,主要从事深度学习、地理信息系统等研究。E-mail:

收稿日期: 2022-08-09

  修回日期: 2022-10-10

  网络出版日期: 2024-05-11

基金资助

国家自然科学基金项目(42261067)

国家自然科学基金项目(61862039)

2021年度中央引导地方科技发展资金(2021-51)

兰州市人才创新创业项目(2020-RC-22)

兰州交通大学天佑创新团队(TY202002)

WeMap Recommendation by Fusion of Knowledge Graph and Collaborative Filtering

  • NIU Xuelei , 1, 2, 3 ,
  • YANG Jun , 1, 2, 3 ,
  • YAN Haowen 1, 2, 3
Expand
  • 1. Faculty of Geomatics, Lanzhou Jiaotong University, Lanzhou 730070, China
  • 2. National-Local Joint Engineering Research Center of Technologies and Applications for National Geographic State Monitoring, Lanzhou 730070, China
  • 3. Gansu Provincial Engineering Laboratory for National Geographic State Monitoring, Lanzhou 730070, China
* YANG Jun, E-mail:

Received date: 2022-08-09

  Revised date: 2022-10-10

  Online published: 2024-05-11

Supported by

National Natural Science Foundation of China(42261067)

National Natural Science Foundation of China(61862039)

2021 Central Government Funds for Guiding Local Science and Technology Development(2021-51)

Talent Innovation and Entrepreneurship Project of Lanzhou City(2020-RC-22)

Tianyou Innovation Team of Lanzhou Jiaotong University(TY202002)

摘要

针对推荐系统中数据稀疏问题,传统的协同过滤算法无法捕捉辅助信息之间的相关性,从而降低了推荐的准确性。为此,本文提出融合知识图谱的协同过滤模型(Knowledge Graph Embedding Collaborative Filtering, KGCF),引入知识图谱作为辅助信息,利用知识图谱中多源结构性的数据来缓解数据稀疏问题。KGCF模型结合知识图谱的语义信息和协同过滤的偏好信息,能够挖掘出用户和微地图的隐语义交互信息,从而达到“千人千面”的推荐效果。① 融合知识图谱和协同过滤算法对微地图数据集进行采集训练; ② 通过皮尔逊相关系数计算出用户之间的相似矩阵,并对稀疏的评分矩阵进行隐语义矩阵分解,采用基准(Baseline)得到用户和微地图地名的偏好信息; ③ 通过知识图谱将微地图语义信息转化为低维向量,采用余弦相似度计算出微地图地名之间的相似矩阵; ④ 将用户和微地图地名结合为一个推荐结果集。通过在微地图数据集上实验,证明了本文提出的KGCF模型能有效解决数据稀疏,可准确为用户推荐感兴趣的微地图。

本文引用格式

牛雪磊 , 杨军 , 闫浩文 . 融合知识图谱与协同过滤的微地图推荐[J]. 地球信息科学学报, 2024 , 26(4) : 967 -977 . DOI: 10.12082/dqxxkx.2024.220581

Abstract

Based on sparse matrix, traditional collaborative filtering techniques usually have a low recommendation accuracy, since they cannot capture the correlations between auxiliary information from the sparse data. To fill the gap, this paper proposes a Knowledge Graph embedding Collaborative Filtering (KGCF) model to improve recommendation accuracy. In this model, the knowledge graph is introduced as auxiliary information, taking advantage of its multi-source structured data to alleviate the problem of data sparsity. By combining the semantic information of the knowledge graph and the preference information of collaborative filtering, the KGCF model can mine the interaction between users and WeMap to implement customized recommendations. Specifically, the knowledge graph and collaborative filtering algorithm are first combined to train the model on WeMap datasets. Secondly, the similarity matrix between users is calculated using the Pearson correlation coefficient, and the cryptic meaning matrix is decomposed through a sparse scoring matrix. In addition, the preference information of users and place names of WeMap is obtained using Baseline. Then, the semantic information of each object is transformed into a low dimension vector by the knowledge graph, and the similarity matrix between WeMap place names is calculated by cosine similarity. Finally, the users and place names of the WeMap are integrated into a recommendation result set. The experiments on WeMap datasets prove that the proposed KGCF model can effectively solve data sparsity and accurately recommend WeMaps of interest for users.

1 引言

推荐系统[1](Recommendation System)是一种主动提供个性化信息的服务,其依据用户与项目的交互历史,去推荐用户的喜好,进而呈现用户感兴趣的项目,满足用户信息过滤的需求,提升用户获取信息的效率。现有的普通电子地图推荐系统可分为2类。① 通过签到数据进行分析。如利用签到数据来计算用户间的相似度,再根据目标用户是否访问过兴趣点,给目标用户推荐兴趣点[2-3]。结合监督方法与随机游走算法分析兴趣点之间的联系,再获取特征值,最后产生兴趣点签到概率进行 推荐[4]。② 通过挖掘轨迹数据进行兴趣点推荐。主要通过建立树的层次图模型推荐兴趣点或者一个区域内的旅行轨迹[5-6]。以上方法均面向现有普通电子地图的推荐系统,复杂的计算和参数设置,地图推荐系统很难架设在小型社交平台,导致信息发布困难,对每个用户难以实现精准信息分发,因此用户对推荐的内容体验效果差,亟需收到自己感兴趣的高质量相关信息。此外,更重要地,目前几乎没有应用在微地图上的相关推荐算法。
微地图[7](WeMap)是面向平民大众的“草根”地图,对精度等数学基础要求不高,制作者无需进行严格的专业培训,地图用户能够参与地图制作,地图可以如微信一样方便、快捷地交互传播和应用。为了满足微地图“千人千面”的推荐效果[8-11],有必要根据用户的历史信息,预测用户对微地图的喜好程度。在推荐系统中通常使用协同过滤算法处理历史点击率、历史评分等非结构化的数据。协同过滤模型[12]由嵌入式和交互式2种数据模式组成。嵌入式协同过滤模型是将用户信息与项目信息按向量的形式编码构成嵌入式,交互式协同过滤模型是按照历史交互数据建模。然而,仅仅单独考虑用户信息、微地图信息或仅仅使用用户与微地图交互信息的属性特征进行函数映射时,可能会导致协同过滤算法产生难以令人满意的推荐结果,且当推荐算法中的交互函数更细粒度地挖掘用户与微地图复杂的交互信息关系时,这些方法还会存在过拟合、稀疏性等更加严重的问题。
近年来,随着深度学习的发展,因其自动提取特征的能力可以缓解数据稀疏问题,在推荐系统中逐渐得到应用。Wide&deep模型[13]将线性和非线性特征通道相结合,以平衡记忆能力和泛化能力,在缓解数据稀疏的同时,提高了推荐的准确性和扩展性。然而,该方法无法自动组合特征,严重依赖于人工的特征组合,只能处理线性可分或近似线性可分的问题。DeepFM模型[14]结合因式分解机和多层感知机分别对低阶特征和对高阶特征进行精细交互建模,增强了数据的表达能力,丰富了用户与微地图间的交互信息。然而,该方法无法捕捉不同的Deep域与FM域,严重依赖域的类别特征,无法对属于同一域的元素进行同样的计算。上述传统的推荐算法普遍都存在偏向于提取低阶或高阶的组合特征,不能同时提取低阶与高阶特征,通常存在数据稀疏性问题[15-17],即在应用协同过滤(Collaborative Filtering, CF)推荐算法时因缺少用户与项目交互数据,无法分析用户与项目的特征来挖掘潜在的用户偏好。
知识图谱已经成为人工智能从机器智能到感知智能再到认知智能进程中不可或缺的基本工具[18-24]。通过知识图谱[25-30]中实体之间丰富的语义关系,能增强用户与用户、微地图与微地图以及用户与微地图之间的联系,将不同语义路径的语义实体链接起来,有效缓解数据稀疏性问题,使其具有语义关联化、知识结构化、推理智能化等特征。将知识图谱引入到推荐系统的研究工作主要分为2类:① 基于特征的推荐方法,如LibFM算法[31],其把用户属性和微地图属性结合到一个统一框架中。然而,该算法并非针对微地图领域知识而设计的知识图谱,因此无法高效地使用知识图谱的结构化信息和语义信息。② 将知识图谱视为异构信息网络的方法[32-33]。该类方法是构造物品之间的元路径(meta-path)或元图谱(meta-graph)的特征,因此将其视为一种挖掘微地图之间潜在关系的方式。这类方法的优点是充分且直观地利用了知识图谱的网络结构,缺点是需要手动设计元路径或元图谱,这在实践中难以达到最优。
综上所述,协同过滤算法最大的优势是实现预测评分矩阵中的缺省值,并利用隐类让用户与微地图之间产生关联,进而达到合理的推荐效果。知识图谱的核心是一种结构化的语义知识库,用以揭示和描述物理世界中的概念、实体及其相互关系,可形式化表述为一种有向图模型,其中图模型的节点代表各类实体或概念,连接各节点的边代表概念或实体之间的关联关系。若单独使用协同过滤,则难以解决用户与微地图交互数据的稀疏性问题。若单独使用知识图谱,则难以直观表示用户与微地图交互的偏重因子。为此,本文提出将知识图谱作为辅助信息引入到推荐系统中,并结合用户权重偏置因子和微地图权重因子来协同过滤不同用户及微地图的影响。

2 融合知识图谱与协同过滤算法

融合知识图谱与协同过滤算法的目标是学习用户分别与旅游、校园、美食、自驾4类专题候选微地图的交互概率,并分别用协同过滤低层的相似度信息预测用户对4类专题未交互微地图的点击概率,以及利用知识图谱的高层语义信息表示用户对微地图的兴趣偏好程度。融合知识图谱的协同过滤推荐算法主要分为2个分支,第一分支使用余弦相似度来计算两两用户之间的低层相似度信息,直观地找到与目标用户兴趣较相似的用户集合;第二分支使用知识图谱的高层语义信息,寻找相似用户集合中用户偏好微地图项目的语义信息。通过融合协同过滤低层的用户相似度信息与知识图谱的用户语义信息,过滤掉目标用户已喜欢的微地图项目,把没有点击过的微地图项目推荐给目标用户。

2.1 问题定义

假设用户集合为{u1, u2,…, um},微地图集合为{l1, l2,…, ln},mn分别表示用户数量和微地图数量。向量umln 分别作为用户um和候选微地图ln的潜在表示。通过协同过滤挖掘用户与微地图的相似度信息,并通过知识图谱挖掘用户对微地图偏好的语义信息,最后输出不同用户对四类专题微地图的偏好列表。在旅游微地图、校园微地图、美食微地图、自驾微地图的知识图谱中,实体和实体之间丰富的语义关系为挖掘用户兴趣提供了潜在视角。本文通过旅游微地图、校园微地图、美食微地图、自驾微地图实体嵌入、兴趣迁移、特征提取3个步骤,将用户在知识图谱中的相关实体融入推荐,以缓解数据稀疏的问题,丰富用户的表示。
实体嵌入。旅游微地图、校园微地图、美食微地图、自驾微地图和实体为现实世界中一个对象的2种表达,将用户交互历史的微地图映射为知识图谱中的实体,从而在知识图谱中构成三元组集合。
兴趣迁移。嵌入的实体和关系,通过关系矩阵,将实体从实体空间投影到对应的关系空间,从而进行兴趣迁移,利用实体的多条近邻数据来学习用户嵌入表示。
特征提取。利用多层感知机来捕获隐含用户向量与旅游微地图、校园微地图、美食微地图、自驾微地图向量特征,预测隐含用户对微地图的点击概率,形成推荐。

2.2 模型架构

本文使用多层感知机构建推荐算法,将知识图谱融入协同过滤中,提出了融合知识图谱和协同过滤的模型(Knowledge Graph Embedding Collaborative Filtering, KGCF)。如图1所示,KGCF模型由4部分组成:输入层(Input Layer)、嵌入层(Embedding Layer)、多层感知机层(MLP Layer)以及输出层(Output Layer)。
图1 KGCF算法流程

Fig. 1 Structure diagram of KGCF algorithm

(1)输入层(input layer)
输入侧包括2部分:旅游、校园、美食及自驾4类专题微地图的历史数据、用户与各类微地图历史交互数据。通过用户对微地图的隐式反馈(点击、观看等),从侧面反映用户对微地图的兴趣,如式(1)所示:
$\boldsymbol{R}_{u l}=\left\{\begin{array}{ll} 1 & \text { 用户 } \boldsymbol{u} \text { 与项目 } \boldsymbol{l} \text { 存在交互 } \\ 0 & \text { 其他 } \end{array}\right.$
式中:Rul为用户u对微地图l的评分;m为用户的数量;n为微地图的数量。
(2)嵌入层(Embedding layer)
输入层编码后的输出作为嵌入层的输入,将用户点击历史微地图数据映射为知识图谱中的头实体hdd为嵌入维度,将其作为知识图谱中的种子实体。将用户对微地图历史评分等级作为知识图谱的关系rd,在关系矩阵Rdxd中发现相关尾实体微地图td,则其构成兴趣迁移的三元组Fu,具体定义如式(2)所示:
$\boldsymbol{F}_{u}=\left\{\left(\boldsymbol{h}^{d}, \boldsymbol{r}^{d}, \boldsymbol{t}^{d}\right)\left(\boldsymbol{h}^{d}, \boldsymbol{r}^{d}, \boldsymbol{t}^{d}\right) \in \boldsymbol{G} \cap \boldsymbol{h}^{d} \in \boldsymbol{R}_{u l}\right\}$
式中:G表示知识图谱;Rul为用户u对微地图l的评分;m为用户的数量;n为微地图的数量。
通过兴趣迁移,由交互历史得到兴趣发现的相关实体集合,如式(3)所示:
$\boldsymbol{T}=\left\{\boldsymbol{t}^{d} \mid\left(\boldsymbol{h}^{d}, \boldsymbol{r}^{d}, \boldsymbol{t}^{d}\right) \in \boldsymbol{F}_{u} \cap \boldsymbol{h}^{d} \in \boldsymbol{R}_{u l}\right\}$
由头实体hd对应尾实体td的过程中,每一对关系实体之间都存在一个概率值。将用户对微地图历史评分等级作为知识图谱的关系rdRul为用户u对微地图l的评分,m为用户的数量,n为微地图的数量。在兴趣迁移三元组Fu中,该概率表示用户点击的历史微地图li映射hd后在所对应的关系矩阵Rdxd中与候选微地图lj的相似度。通过以上计算,得到用户的兴趣迁移向量。
(3)多层感知机(MLP layer)
将嵌入层输出的语义信息Ssemg与协同过滤输出的推荐信息Scf作为多层感知机层的输入,通过感知机学习用户与微地图之间的语义及协同过滤的非线性高阶特征,并采用ReLu作为激活函数来避免梯度消失。
(4)输出层(output layer)
输出层主要输出用户感兴趣的推荐结果。如图1所示,通过融合知识图谱与协同过滤算法,最终输出被推荐微地图集合:旅游微地图、校园微地图、美食微地图及自驾微地图。

2.3 相似度融合

分别在美食、自驾、校园和旅游微地图数据集中,将知识图谱表示学习算法得到的地图语义相似度Ssemg与协同过滤算法得到的推荐信息相似度Scf以线性加权的方式进行融合,融合方法如式(4)所示。
$\boldsymbol{S}(i, j)=\alpha \cdot \boldsymbol{S}_{\text {semg }}\left(\boldsymbol{l}_{i}, \boldsymbol{l}_{j}\right)+(1-\alpha) \boldsymbol{S}_{c f}\left(\boldsymbol{l}_{i}, \boldsymbol{l}_{j}\right)$
式中: li表示idi的微地图; lj表示idj的微地图;为融合系数,且。分别取值为0、0.3、0.4、0.5、0.6、0.7、0.8、1.0。用户对微地图评分概率值与微地图数量关系图的实验结果如图2所示,每个图的横坐标表示用户已评分的微地图数量,纵坐标表示用户对微地图评分的概率值。
图2 用户对微地图评分概率值与微地图数量关系

Fig. 2 Relationship between user rating probability value and number of WeMaps

2.4 推荐列表生成

Cul表示用户u对微地图l的预测评分,其计算公式如式(5)所示。
$C_{u l}=\frac{\sum_{l_{i} \in A(u) \cap X\left(l_{i}, l_{k}\right)} S\left(l_{i}, l_{j}\right) \times R_{u l_{j}}}{\sum_{l_{j} \in A(u) \cap X\left(l_{i}, l_{k}\right)} S\left(l_{i}, l_{j}\right)}$
式中:X(li, lk)表示与微地图li集合中最为相似的lk微地图地名集合;A(u)为用户u已经评分的微地图; A(u)∩X(li, lk)表示2个微地图集合中地名的交集;S(li, lj)为微地图lilj的融合相似度;Rul为用户u对微地图l的评分。通过对计算出的Cul进行排序,选取前lk个微地图形成推荐列表。

3 实验及结果分析

融合知识图谱的协同过滤推荐系统主要由4个部分构成,包括输入层获取与处理数据、嵌入层构建微地图图谱、多层感知机融合协同过滤与知识图谱以及最终输出层的推荐结果。在数据获取与处理部分,使用实验室制作的WeMap数据集,通过对数据进行处理,获得地图的属性信息以及评分信息。在嵌入层知识图谱构建部分,使用图数据库Neo4j来构建旅游、校园、美食与自驾4类专题微地图,其中每类专题微地图包含微地图标题(ID)、微地图的主题、评分等不同的属性。使用多层感知机对协同过滤与知识图谱进行融合训练,最后输出各类微地图的推荐结果。

3.1 实验环境及数据集

本实验的硬件环境为Intel Core i9-9900k + GTX3090,软件环境为Windows10 + CUDA 11.1 + cuDNN8.5.0 + PyTorch1.7 + Python3.8。实验主要使用的Python库有4种:Pandas、json、re、neo4j-driver。其中pandas用于进行数据解析,旨在完成实验中的数据处理;json是一种轻量化的数据交换格式,旨在快速高效传送数据;re用于进行正则匹配,旨在完成实验中的数据处理;neo4j-driver用于调用Neo4j图数据库,旨在实现融合知识图谱的推荐系统。
使用爬虫技术对百度图片进行爬取,并增加手绘地图,经过数据清洗、语义对齐等操作构建了WeMap数据集,其记录了506张微地图数据相关的地图信息,包括旅游微地图数据TourMap、校园微地图数据SchoolMap、美食微地图数据FoodMap、自驾微地图数据DrivingMap等信息。使用Python对WeMap数据集进行处理并获取的字段信息如表1所示。
表1 WeMap数据集中获取的字段信息

Tab. 1 Field information obtained from the WeMap data set

字段id 注释 含义
Genes 地图类型 TourMap、SchoolMap、FoodMap、
DrivingMap
Original_title 地图名 仙居、云门山、张家界、五台山、惠山古镇
Event 事件 对应的每个事件
文中构建的微地图评分数据集WeMapRating包括旅游微地图数据评分数据集TourMapRating、校园微地图评分数据集SchoolMapRating、美食微地图评分数据集FoodMapRating、自驾微地图评分数据集DrivingMapRating,由不同用户对不同的微地图历史评分构成。使用Python对上述4类评分数据集进行处理并获取的字段信息如表2所示。
表2 从WeMapRating数据集中获取的字段信息

Tab. 2 The field information obtained from the WeMapRating dataset

字段id 注释 含义
User_id 评分用户id 每条评分对应的评分用户id
Map_id 地图id 每条评分对应的地图id
Title 地图名称 每条评分对应的地图名称
Ratings 评分数 每条评分对应的评级分数

3.2 微地图知识图谱构建与分析

(1)微地图图谱可视化构建
首先分别从WeMap数据集和WeMapRating中获取地图信息以及用户的历史交互数据记录,然后以地图的标题作为知识图谱的主体,并使用从上述2种地图数据集中获取到与微地图相关的信息来构建事实三元组,完成地图知识图谱的初步构建。为了使所构建的地图知识图谱更加完整,使用皮尔逊相似度(Pearson Similarity)的协同过滤算法计算用户间的相似度并加入到用户间的相似关系。关于地图主体的所有关系的构建,以某用户id对微地图id(mid)的评分信息为例,其关系形式为多对多,构建的知识图谱中的所有主体关系如表3所示。在表3中cn_title代表rd,User_id代表hd,Rating代表td。Event表示事件,其中事件包括“经过”、“过渡带”、“草原”、“沙漠”、“红色革命文化”、“流域水系”及“线路”。从WeMapRating数据集中提取出用户对微地图的评分矩阵,将用户id(User_id)作为知识图谱的头实体,以微地图名称(cn_title)作为知识图谱的尾实体,以用户对该微地图的评分值(Rating)或者事件作为边(关系)。评分分为5个等级,即1、2、3、4、5,所构建的知识图谱为(hdtdrd),即(用户id,用户对该微地图的评分值(Rating)或事件,微地图名称)。所构建的旅游、校园、美食与自驾的微地图有17 377个实体,114 029对关系。在构建的4类专题微地图-评分力引导知识图谱中,如图3中蓝色圈所示,由用户、评分关系或事件及旅游微地图地名组成的三元组为(用户,评分关系或事件,旅游微地图地名),用户92(用户id)分别与微地图名称仙居评分关系值为5、五台山之间的评分关系值为4,其含义为:用户92分别对微地图仙居的喜好程度为等级5、五台山的喜好程度为等级4。用户97(用户id)分别与微地图惠山古镇评分关系值为5、无锡的评分关系值为1、伊春评分关系值为3,其含义为用户97分别对微地图惠山古镇的喜好程度为5、无锡的喜好程度为1、伊春的喜好程度为3。90(用户id)分别与微地图贵州的评分值为5、伊春的评分关系为3,其含义为:用户90分别对微地图贵州的喜好程度为等级5、伊春的喜好程度为等级3。用户97与用户90都与事件川北甘南金秋线有双向偏好。
图3 4类专题微地图-评分力引导知识图谱

Fig. 3 Knowledge graphs of force-directed relationship between four categories of thematic WeMaps and scores

表3 所有地图主体关系

Tab. 3 All map principal relationships

实体名称 三元组内容 作用
用户id(User_id) 头实体 作为构建知识图谱的头实体
评分值(Rating)或事件(Event) 关系 作为构建知识图谱的关系
微地图名称(cn_title) 尾实体 作为知识图谱的尾实体
在构建的旅游微地图-评分关系知识图谱中,不同的用户对同一旅游微地图评分圆环知识图谱如图4的所示。圆环上所有的用户节点(414、 429、434、 454、 440、 449、 416、 463、 469、 488、 478、412、 481、 496、 480、 416、 492、 476、 415、 499)平均分别在圆环上,易于观察不同用户对同一旅游微地图,如赞皇县偏好的相似度关系,可有效分析不同的用户对同一微地图的喜好程度。
图4 用户对同一旅游微地图评分圆环知识图谱

Fig. 4 A circular knowledge graph of user ratings on the same TourMaps

(2)用户-旅游微地图推荐列表分析
以用户-旅游微地图为例,由145个用户节点与155个旅游微地图地名节点构成了6 545条评分关系,根据式(5)可得出1 576个微地图推荐列表。如图3中所示, id为97的用户已经对惠山古镇、无锡、伊春、五台山等评分, id为90的用户对贵州、伊春、银川等评分, id为92的用户对仙居、张家界、云门山、银川、五台山等进行评分。因此,银川用户97与用户90评分相似的微地图是伊春,用户97与用户92评分相似的微地图是五台山,用户90与用户92评分相似的微地图是银川。通过式(5)计算Cul并进行排序,即获得top-k的微地图推荐结果,当k取值为25时,如图5所示(仅展示部分数据)。用户92可能偏好从化区、无锡、伊春、凤凰镇与贵州等,用户97可能偏好仙居、嘉兴、上海、张家界、云门山与银川等,用户90可能偏好五台山、仙都、安阳、濮阳、广州与云门山等。用户90与97同时对川北甘南金秋线感兴趣。
图5 KGCF算法对用户-旅游微地图的top-k推荐结果

Fig. 5 Top-k recommendation results of KGCF algorithm for users-TourMaps

(3)西北最小众-甘南川北金秋线分析
“微地图”推荐的本质就是给用户推荐包括当地的风土人情、地质地貌、气候、宗教、乡间小路及河流等信息的小众地图。以下用一个具体的实例进行说明:当两广、海南还在夏季之时,西北地区已经做好迎接金秋的准备,若是想完成领略今年的第一抹秋色,不妨来看看这条川甘南川北微地图旅游知识图谱,如图6所示。
图6 甘南川北微地图旅游知识图谱

Fig. 6 knowledge graph of TourMaps of southern Gansu and northern Sichuan

这条线路最有亮点的地方在于横断山脉,与成都平原、川巴商区的过渡带,在黄河长江水系之间,岷江流域、嘉陵江流域穿越。不管是多变的地质地貌,还是风土人情的变化,都非常的精彩。特别是在秋季走,更能体验秦岭与青藏高原的秋色变迁。沿次线而行,将会见到乐容天下的成都,黄龙溪、元通古镇、安仁古镇都是街子古镇。从成都出发往广元方向,实际上就是从岷江流域进入嘉陵江流域,这期间经过的绵阳、德阳,都是位于成都平原与西南青藏高原的过渡带上,因此,在这一段上,既能见到地势的变化,也可以见到许多历史文化遗址,如李白故居、白马关等等。过德阳、绵阳,就进入广元所在的川东北。这片区域东至巴山秦岭,西到岷山,因与陕南、阿坝邻近,从而具备一些北方的气质与川北高原的特征。广元这座被视为四川北大门的城市,曾是古蜀道上的节点城市,最著名的武则天故里与三国文化聚焦于此,由此往北翻越米仓山,可去到汉中平原,进入陕西地界,也可以往西翻越龙门山脉,可到得陇望蜀的陇南,进入甘肃地界,如“世外桃源”的扎尕那、黄教六大寺院之一的拉卜楞寺、美丽的桑科草原、以黄河为名的玛曲、黄河第一湾的唐克、羌族文化聚集的茂县等。
通过上述实验,证明了融合知识图谱的协同过滤能为微地图推荐系统提供了额外之间的语义联系,对于微地图推荐系统的性能有一定的提升效果。利用知识图谱中多种关系的边向外扩展用户的兴趣集合,可以有效地提升微地图推荐结果的多样性。此外,知识图谱连接了用户的历史兴趣与推荐结果,这提供了一种的额外解释性。由于把知识图谱具有的语义性、多样性嵌入到协同过滤算法中,使得融合知识图谱与协同过滤的微地图在推荐时,不需要上下文特征,因为系统只需用户对微地图具有相似的喜好反馈矩阵,通过对喜好反馈矩阵来训练矩阵分解模型,该模型可以产生多个候选生成器,即可实现预测评分矩阵中的缺省值,并利用隐类让用户与微地图之间产生关联,进而达到合理的推荐效果。

4 结论与讨论

4.1 结论

为解决微地图推荐过程中数据稀疏性问题,本算法融合知识图谱与协同过滤算法建模,细粒度挖掘用户与微地图之间的交互信息。在用户使用微地图推荐系统的过程中,由协同过滤挖掘用户的偏好信息以及知识图谱挖掘用户与微地图之间交互的语义信息。① 由协同过滤算法实现预测评分矩阵中的缺省值,并利用隐类让用户与微地图之间产生关联,进而达到合理的推荐效果;② 利用知识图谱结构化数据实现用户对“微地图”的语义信息细粒度挖掘,并把语义信息融合到协同过滤算法中,进而计算出微地图之间语义相似度及用户偏好相似度;③ 通过多层感知机对语义相似度与用户偏好相似度进行合理融合,最终给用户推荐合理的微地图路线。本算法不仅考虑到用户使用微地图的偏好习惯,也考虑到微地图地名之间的内部联系,所给出的个性化推荐结果合理且符合个人生活偏好。此外,微地图推荐致力于个性化服务,由用户使用微地图的偏好不同,想达到多维传播的效果,需要更具有个性化的地图服务。

4.2 讨论

本文构建的融合知识图谱与协同过滤的微地图推荐算法与现有的百度地图、高德地图相比,本文的方法考虑了推荐路线的风土人情、地质地貌、气候变化、宗教、乡间小路及河流等因素,更适用于个性化旅游、快速抢险救灾、外卖快递等小众化的服务。由于目前数据只构建了旅游微地图、美食微地图、自驾微地图及校园微地图这4类专题微地图,正在研发的融合知识图谱与协同过滤的微地图推荐系统手机应用端系统还需构建更多种类的专题微地图,并结合大数据进行更细致的人物画像,利用深度学习等智能化处理方法分析用户行为,以满足各种不同场景及不同使用人群的需求。此外,目前微地图的推荐算法尚未定义评价指标,未来的研究工作还会针对微地图推荐系统的各种业务需求,对不同的使用人群进行调查问卷,数学建模,综合考虑用户满意度、流行度-机会偏差(Popularity-Opportunity Bias)等各方面因素,制定合理全面的微地图推荐系统的评价指标,以满足不同需求的用户,进一步提高推荐效率,完善当前的微地图推荐系统。
本文图文责任编辑: 蒋树芳 黄光玉
[1]
Bobadilla J, Ortega F, Hernando A, et al. Recommender systems survey[J]. Knowledge-Based Systems, 2013, 46:109-132. DOI:10.1016/j.knosys.2013.03.012

[2]
Ye M, Yin P F, Lee W C, et al. Exploiting geographical influence for collaborative point-of-interest recommendation[C]// Proceedings of the 34th international ACM SIGIR conference on Research and development in Information Retrieval. Beijing, China. New York: ACM, 2011:325-334. DOI:10.1145/2009916.2009962

[3]
Yuan Q, Cong G, Ma Z Y, et al. Time-aware point-of-interest recommendation[C]// Proceedings of the 36th international ACM SIGIR conference on Research and development in information retrieval. Dublin, Ireland. New York: ACM, 2013:363-372. DOI:10.1145/2484028.2484030

[4]
Lian D F, Xie X, Zheng V W, et al. Cepr[J]. ACM Transactions on Intelligent Systems and Technology, 2015, 6(1):1-27. DOI:10.1145/2629557.

[5]
Zheng Y, Xie X. Learning travel recommendations from user-generated GPS traces[J]. ACM Transactions on Intelligent Systems and Technology, 2011, 2(1):2. DOI:10.1145/1889681.1889683

[6]
贾冲, 冯慧芳, 杨振娟. 基于出租车GPS轨迹和POI数据的商业选址推荐[J]. 计算机与现代化, 2020(2):21-25,30.

[ Jia C, Feng H F, Yang Z J. A commercial site recommendation algorithm based on taxi GPS trajectory and POI data[J]. Computer and Modernization, 2020(2):21-25,30. ] DOI:10.3969/j.issn.1006-2475.2020.02.005

[7]
闫浩文, 张黎明, 杜萍, 等. 自媒体时代的地图:微地图[J]. 测绘科学技术学报, 2016, 33(5):520-523.

[ Yan H W, Zhang L M, Du P, et al. We-map: A new type of map in the era of we media[J]. Journal of Geomatics Science and Technology, 2016, 33(5):520-523. ] DOI:1673-6338(2016)05-0520-04

[8]
Zhang H, Sheng F, Liu W, et al. Discrete collaborative filtering[C]// The 39th International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM Press, 2016:325-334. DOI:10.1145/2911451.2911502.

[9]
Martínez L, Pérez L G, Barranco M. A multigranular linguistic content-based recommendation model[J]. International Journal of Intelligent Systems, 2007, 22(5):419-434. DOI:10.1002/int.20207

[10]
Su X Y, Khoshgoftaar T M. A survey of collaborative filtering techniques[J]. Advances in Artificial Intelligence, 2009, 2009:4. DOI:10.1155/2009/421425

[11]
Nilashi M, Ibrahim O B, Ithnin N. Hybrid recommendation approaches for multi-criteria collaborative filtering[J]. Expert Systems With Applications, 2014, 41(8):3879-3900. DOI:10.1016/j.eswa.2013.12.023

[12]
Zhang F Z, Yuan N J, Lian D F, et al. Collaborative knowledge base embedding for recommender systems[C]// Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco, California, USA. New York: ACM, 2016:353-362. DOI:10.1145/2939672.2939673

[13]
Cheng H T, Koc L, Harmsen J, et al. Wide & deep learning for recommender systems[EB/OL]. 2016: arXiv: 1606.07792.

[14]
Guo H F, Tang R M, Ye Y M, et al. DeepFM: A factorization-machine based neural network for CTR prediction[EB/OL]. 2017: arXiv: 1703.04247.

[15]
He X N, Liao L Z, Zhang H W, et al. Neural collaborative filtering[C]// Proceedings of the 26th International Conference on World Wide Web. New York: ACM, 2017:173-182. DOI:10.1145/3038912.3052569

[16]
He X N, Chua T S. Neural factorization machines for sparse predictive analytics[C]// Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval. Shinjuku, Tokyo, Japan. New York: ACM, 2017:355-364. DOI:10.1145/3077136.3080777

[17]
Devooght R, Bersini H. Long and short-term recommendations with recurrent neural networks[C]// Proceedings of the 25th Conference on User Modeling, Adaptation and Personalization. Bratislava, Slovakia. New York: ACM, 2017:13-21. DOI:10.1145/3079628.3079670

[18]
徐增林, 盛泳潘, 贺丽荣, 等. 知识图谱技术综述[J]. 电子科技大学学报, 2016, 45(4):589-606.

[ Xu Z L, Sheng Y P, He L R, et al. Review on knowledge graph techniques[J]. Journal of University of Electronic Science and Technology of China, 2016, 45(4):589-606. ] DOI:10.3969/j.issn.1001-0548.2016.04.012

[19]
蒋秉川, 万刚, 许剑, 等. 多源异构数据的大规模地理知识图谱构建[J]. 测绘学报, 2018, 47(8):1051-1061.

DOI

[ Jiang B C, Wan G, Xu J, et al. Geographic knowledge graph building extracted from multi-sourced heterogeneous data[J]. Acta Geodaetica et Cartographica Sinica, 2018, 47(8):1051-1061. ] DOI: 10.11947/jAGCS.2018.20180113

[20]
Wang X, He X N, Wang M, et al. Neural graph collaborative filtering[C]// Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval. Paris, France. New York: ACM, 2019:165-174. DOI:10.1145/3331184.3331267

[21]
刘琼昕, 覃明帅. 基于知识表示学习的协同矩阵分解方法[J]. 北京理工大学学报, 2021, 41(7):752-757.

[ Liu Q X, Qin M S. Collective matrix factorization based on knowledge representation learning[J]. Transactions of Beijing Institute of Technology, 2021, 41(7):752-757. ] DOI:10.15918/j.tbit1001-0645.2018.055

[22]
刘峭, 李杨, 段宏, 等, 知识图谱构建技术综述[J]. 计算机研究与发展, 2016, 53(3):582-600.

[ Liu Q, Li Y, Duan H, et al. Knowledge graph construction techniques[J]. Journal of Computer Research and Development, 2016, 53(3):582-600. ] DOI:10.7544/issn1000-1239.2016.20148228

[23]
朱庆, 王所智, 丁雨淋, 等, 铁路隧道钻爆施工法智能管理的安全质量进度知识图谱构建方法[J]. 武汉大学学报·信息科学版, 2022, 47(8):1151-1164.

[ Zhu Q, Wang S Z, Ding Y L, et al. A method of Safety-Quality-Schedule knowledge for intelligent management of drilling and blasting construction of railway tunnels[J]. Geomatics and Information Science of Wuhan University, 2022, 47(8): 1155-1164. ] DOI:1671-8860(2022)08-1155-10

[24]
张雪英, 张春菊, 吴明光, 等. 顾及时空特征的地理知识图谱构建方法[J]. 中国科学:信息科学, 2020, 50(7):1019-1032.

[ Zhang X Y, Zhang C J, Wu M G, et al. Spatiotemporal features based geographical knowledge graph construction[J]. Scientia Sinica (Informationis), 2020, 50(7):1019-1032. ] DOI:10.1360/SSI-2019-0269

[25]
Herlocker J L, Konstan J A, Borchers A, et al. An algorithmic framework for performing collaborative filtering[J]. ACM SIGIR Forum, 2017, 51(2):227-234. DOI:10.1145/3130348.3130372

[26]
饶子昀, 张毅, 刘俊涛, 等. 应用知识图谱的推荐方法与系统[J]. 自动化学报, 2021, 47(9):2061-2077.

[ Rao Z Y, Zhang Y, Liu J T, et al. Recommendation methods and systems using knowledge graph[J]. Acta Automatica Sinica, 2021, 47(9):2061-2077. ] DOI:10.16383/j.aas.c200128

[27]
Wang H W, Zhang F Z, Wang J L, et al. RippleNet: Propagating user preferences on the knowledge graph for recommender systems[C]// Proceedings of the 27th ACM International Conference on Information and Knowledge Management. Torino, Italy. New York: ACM, 2018:417-426. DOI:10.1145/3269206.3271739

[28]
Wang H W, Zhang F Z, Xie X, et al. DKN: Deep knowledge-aware network for news recommendation[C]// Proceedings of the 2018 World Wide Web Conference. New York: ACM, 2018:1835-1844. DOI:10.1145/3178876.3186175

[29]
Sarwar B, Karypis G, Konstan J, et al. Item-based collaborative filtering recommendation algorithms[C]// Proceedings of the 10th international conference on World Wide Web. Hong Kong. New York: ACM, 2001:285-295. DOI:10.1145/371920.372071

[30]
Sedhain S, Menon A K, Sanner S, et al. AutoRec: Autoencoders meet collaborative filtering[C]// Proceedings of the 24th International Conference on World Wide Web. Florence, Italy. New York: ACM, 2015:111-112. DOI:10.114 5/2740908.2742726

[31]
Rendle S. Factorization machines with libFM[J]. ACM Transactions on Intelligent Systems and Technology, 2012, 3(3):1-22. DOI:10.1145/2168752.2168771

[32]
Davidson J, Liebald B, Liu J N, et al. The YouTube video recommendation system[C]// Proceedings of the fourth ACM conference on Recommender systems. Barcelona, Spain. New York: ACM, 2010:293-296. DOI:10.1145/1864708.1864770

[33]
Bordes A, Usunier N, Garcia-Durán A, et al. Translating embeddings for modeling multi-relational data[C]// Proceedings of the 26th International Conference on Neural Information Processing Systems - Volume 2. New York:ACM, 2013:2787-2795.

文章导航

/