1.基于解释图神经网络的推荐解释可视分析方法,包括如下步骤:
步骤1:对数据进行清洗与预处理,保证数据的有效性,并根据观影数据计算特征相关性分数;
步骤2:将处理好的数据作为输入,用具有代表性的图神经网络模型KGAT进行训练,获得实体的高维嵌入表示和推荐结果;将嵌入空间分布转换为分类任务,使用辅助节点路径优化方法,获取优化后的用户推荐路径图,利用解释图神经网络解释模型GNNExplainer,抽取出对推荐预测重要的图模式;
步骤3:设计数据可视化视图对解释过程进行展示,对得到的图模式,设计解释探索分析视图,以方便分析人员进行多粒度的图模式挖掘;同时,通过偏好分析对比视图,结合解释评估视图,来验证解释模型的可靠性;
步骤4:通过模型计算与可视化设计为分析人员提供对推荐结果的理解,并据此获得可视见解,通过迭代式交互分析提高模型的推荐性能,以此验证分析方法的可靠性,形成模型‑可视分析系统‑模型的闭环;
步骤2具体包括:
用具有代表性的图神经网络模型KGAT进行训练,获得实体的高维嵌入表示和推荐结果,将推荐问题转换为图分类问题,并利用GNNExplainer的思想对推荐问题进行解释;其中将推荐问题转换为图分类问题分为两个步骤;第一步是将推荐得到的嵌入空间分布转换为分类任务;第二步是将用户推荐结果转换为图结构;通过这种转换方式,就将推荐问题转换为了图分类问题;
2.1将推荐得到的嵌入空间分布转换为分类任务;采用豆瓣数据作为输入,包含用户,已观看电影,电影特征这些信息;通过使用推荐模型KGAT对数据进行训练后,得到用户的嵌入表示;对用户的嵌入表示进行更新,将用户的推荐电影嵌入表示与用户原有的嵌入表示相结合,从而更新后的用户的嵌入表示;
针对该更新后的用户的嵌入表示,进行聚类,降维处理;使用基于流形理论的方法UMAP;选择DBSCAN进行聚类;随后,通过多次参数实验,获得有意义的用户群分布;用户群之间分界清晰,不混杂;聚类结果的意义在于对用户进行分类,每个簇类内的用户具有一定程度的相似推荐语义信息,相反,空间位置远离的用户群之间必然存在推荐信息差异,这构成了的分类任务;
2.2将用户的推荐结果转换为图结构;首先,根据用户群内用户的ID,获得推荐模型为其推荐的Top 20个物品ID;以用户为起始点,推荐物品为目标点,用户观影信息为中间节点,构建了用户和推荐物品之间的完整路径图;接着利用步骤2.4中的辅助节点路径优化方法,对推荐图路径进行优化,得到了优化后的推荐图路径;通过这一过程,将推荐结果转换为了图结构;
2.3推荐场景中基于GNNExplainer的可解释图神经网络模型;GNNExplainer的核心思想是识别出对预测结果最具有影响力的子图结构和节点特征;GNNExplainer的工作流程是将一个已经训练好的GNN模型和其预测结果作为输入,然后输出一个子图,该子图能够对该GNN模型的预测结果产生最大的影响;在这个过程中,使用图掩码来选择真正重要的子图,使用特征掩码来选择真正重要的子特征集;给定一个节点v,目标是识别出子图 和相关的特征Xs={Xj|Vj∈Gs},其中c为类别,这些特征对GNN的预测y^很重要;使用互信息将重要性的概念形式化,制定优化公式(3):其中由于GNNExplainer是在训练好的GNN模型上进行解释,所以H(Y)是常数,上面的式子经过转换后,使用As[j,k]代表边(Vj,Vk)存在的期望,EG用Ac⊙σ(M)来代替,M是要学习的Graph Mask;由于很多任务只关心部分类的节点及其模型如何对该类进行预测;因此针对类c,修正为公式(4);
接着使用GNNExplainer从推荐路径图中抽取真正影响推荐结果的子图,这个子图称为解释子图,作为对推荐结果的解释;然后,对解释进行可靠性评估,以用户偏好模式作为基准,将生成的图模式与其对比,进行解释的可视验证;
2.4辅助节点路径优化方法;为了解决用户已观看电影繁多导致的推荐图路径冗杂,进而不存在共有图模式的问题,借鉴了数据增广的思想,并提出了辅助节点路径优化方法;在不影响语义的情况下,对推荐图路径做数据增广,具体来说是将繁多的推荐路径图进行优化;将导演D,演员A,相似用户UL各自归为一类节点处理;通过辅助节点路径优化方法,能够保留路径中类型节点的特殊性,同时屏蔽辅助节点的特殊性,得到优化的推荐图路径。
2.如权利要求1所述的基于解释图神经网络的推荐解释可视分析方法,其特征在于,步骤3具体包括:
3.1构建特征分数概览及嵌入分布细节;从特征和特征组合出发,为了能够让分析人员得到偏好模式,并与嵌入空间分布的一致性进行对比,为此设计特征列表视图,特征关注视图,嵌入分布视图进行展示;分析人员可以在特征列表视图中选择感兴趣的特征或联合多个特征,并在特征关注视图中查看对该特征组合关注的用户群;
在选择感兴趣的用户群后,将在嵌入空间分布图中突出显示它们的空间位置,它是通过推荐的高维嵌入降维聚类得到的,并允许分析人员针对感兴趣的用户群进行扩放观察,查看用户的类型,演员,导演相关性分数,并且还可以只对某种相关性指标进行深入研究,更细粒度地探索感兴趣的用户;
3.2构建偏好分析对比;偏好分析对比由用户群偏好分析对比视图和用户偏好分析对比视图组成;用户群偏好分析对比利用条形图,雷达图,环形图实现;条形图展示不同用户群对不同特征的关注程度;雷达图用于呈现不同用户群关注特征的覆盖情况;最外圈的环形图,用于突出显示用户群关注特征的差异情况;用户偏好分析对比由气泡图,历史观影信息,电影细节信息组成;分析人员可以通过气泡图对感兴趣用户进行深入研究;通过点击气泡图中的演员实体,可以呈现用户观看的由该演员参演的电影列表,进而在电影细节信息图中可以查看电影的海报和详细信息;
3.3构建解释模式探索分析;包括推荐结果溯源图和模式对比探索图;推荐结果溯源图利用可伸缩的力导引图来展示目标用户与推荐结果间的图路径;模式对比探索图由列向圆组成,该视图可以对提取到的图模式进行整体概览,并可以调整图模式中重要节点的个数;
在列向圆的右上方,有推荐详细按钮和解释详细按钮;点击推荐详细按钮,可展示推荐电影的细节信息;点击解释详细按钮,可展示推荐结果溯源图,包含推荐详细图和解释详细图;
3.4构建解释评估概览;为了能够对解释模式进行定量评估,并验证用户群的解释模式的可靠性,设计了双向条形图来展示提取到的某种解释图模式在所有解释图模式中的定量占比,同时通过与偏好分析对比图进行联合分析,可以查看其解释图模式与历史偏好模式的一致性,从而评估解释图模式的可靠性。
3.如权利要求1所述的基于解释图神经网络的推荐解释可视分析方法,其特征在于,步骤1具体包括:
1.1获取原始数据集;使用scrapy框架从真实的电影网站爬取数据,包括用户数据,电影数据,导演数据,演员数据以及用户历史观影记录;所述电影数据涵盖了上映年份、类型、标签、导演、演员、编剧这些详细信息;
1.2对原始数据集进行数据预处理;为确保数据质量,防止出现无效数据,以用户的观影记录至少大于50、电影被有效用户观看次数大于20和电影的类型文本完整这些条件进行了数据过滤;此外,考虑到真实场景中推荐任务通常面临冷启动问题,又保留了10%的观影记录小于50部电影的用户作为冷启动数据,以便全面评估模型性能;
1.3计算特征相关性分数;使用特征相关性分数来衡量用户的观影特征;基于目标用户的历史观影记录中各电影的属性特征进行计算,包括类型,导演和演员相关性分数,其具体计算公式为:类型集合L={L1,L2,L3,…,Li,…L35},因为所有电影的类型都在35种类型范围之内;用户集合U={U1,U2,U3,…Uk,…U9622},表示9622个用户;对于用户Uk来说,假设他看过n部电影,为集合Mk={m1,m2,m3,…mj,…mn},其中电影mj对应的类型集合为Gj,使用 代表电影mj中类型Li的特征分数,如公式(1)所示;
针对用户的类型相关性分数,用户看过的电影中关于类型Li的相关性分数为 的计算如公式(2)所示;用户群的相关性分数计算是在用户的相关性分数基础上进行求和操作。
4.如权利要求1所述的基于解释图神经网络的推荐解释可视分析方法,其特征在于,步骤4具体包括:
通过模型计算与可视化设计为分析人员提供对推荐结果的理解,并据此获得可视见解,通过迭代式交互分析提高模型的推荐性能,以此验证分析方法的可靠性,形成模型‑可视分析系统‑模型的闭环;
设计对比实验;首先,利用本系统提取用户群的解释模式,并获取符合解释模式的推荐电影;然后,随机替换并调整训练集,再次训练模型;利用新的推荐结果,计算推荐模型在精确率P,召回率R,准确率AUC,排序指标NDCG这些推荐系统常用的指标上的表现。
5.基于解释图神经网络的推荐解释可视分析装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现权利要求1‑4中任一的基于解释图神经网络的推荐解释可视分析方法。
6.一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现权利要求
1‑4中任一的基于解释图神经网络的推荐解释可视分析方法。