Processing math: 1%
  • 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
高级检索

OpenPlanner:一个开源的时间敏感网络流量规划器

姜旭艳, 全巍, 付文文, 张小亮, 孙志刚

姜旭艳, 全巍, 付文文, 张小亮, 孙志刚. OpenPlanner:一个开源的时间敏感网络流量规划器[J]. 计算机研究与发展, 2025, 62(5): 1307-1329. DOI: 10.7544/issn1000-1239.202330776
引用本文: 姜旭艳, 全巍, 付文文, 张小亮, 孙志刚. OpenPlanner:一个开源的时间敏感网络流量规划器[J]. 计算机研究与发展, 2025, 62(5): 1307-1329. DOI: 10.7544/issn1000-1239.202330776
Jiang Xuyan, Quan Wei, Fu Wenwen, Zhang Xiaoliang, Sun Zhigang. OpenPlanner: An Open-Source Traffic Planning for Time-Sensitive Networking[J]. Journal of Computer Research and Development, 2025, 62(5): 1307-1329. DOI: 10.7544/issn1000-1239.202330776
Citation: Jiang Xuyan, Quan Wei, Fu Wenwen, Zhang Xiaoliang, Sun Zhigang. OpenPlanner: An Open-Source Traffic Planning for Time-Sensitive Networking[J]. Journal of Computer Research and Development, 2025, 62(5): 1307-1329. DOI: 10.7544/issn1000-1239.202330776
姜旭艳, 全巍, 付文文, 张小亮, 孙志刚. OpenPlanner:一个开源的时间敏感网络流量规划器[J]. 计算机研究与发展, 2025, 62(5): 1307-1329. CSTR: 32373.14.issn1000-1239.202330776
引用本文: 姜旭艳, 全巍, 付文文, 张小亮, 孙志刚. OpenPlanner:一个开源的时间敏感网络流量规划器[J]. 计算机研究与发展, 2025, 62(5): 1307-1329. CSTR: 32373.14.issn1000-1239.202330776
Jiang Xuyan, Quan Wei, Fu Wenwen, Zhang Xiaoliang, Sun Zhigang. OpenPlanner: An Open-Source Traffic Planning for Time-Sensitive Networking[J]. Journal of Computer Research and Development, 2025, 62(5): 1307-1329. CSTR: 32373.14.issn1000-1239.202330776
Citation: Jiang Xuyan, Quan Wei, Fu Wenwen, Zhang Xiaoliang, Sun Zhigang. OpenPlanner: An Open-Source Traffic Planning for Time-Sensitive Networking[J]. Journal of Computer Research and Development, 2025, 62(5): 1307-1329. CSTR: 32373.14.issn1000-1239.202330776

OpenPlanner:一个开源的时间敏感网络流量规划器

基金项目: 全国重点实验室基金项目(2023-KJWPDL-14);湖南省研究生科研创新项目(CX20220013)
详细信息
    作者简介:

    姜旭艳: 1998年生. 博士研究生. 主要研究方向为时间敏感网络、FPGA设计

    全巍: 1987年生. 博士,副研究员. 主要研究方向为时间敏感网络、软件定义网络、FPGA设计

    付文文: 1994年生. 博士,助理研究员. 主要研究方向为可编程网络、时间敏感网络

    张小亮: 1991年生. 硕士,讲师. 主要研究方向为软件定义网络、时间敏感网络

    孙志刚: 1974年生. 博士,研究员. 主要研究方向为软件定义网络、时间敏感网络、网络体系结构、FPGA设计以及网络安全

    通讯作者:

    全巍(w.quan@nudt.edu.cn

  • 中图分类号: TP391

OpenPlanner: An Open-Source Traffic Planning for Time-Sensitive Networking

Funds: This work was supported by the Foundation of National Key Laboratory (2023-KJWPDL-14) and Postgraduate Scientific Research Innovation Project of Hunan Province (CX20220013).
More Information
    Author Bio:

    Jiang Xuyan: born in 1998. PhD candidate. Her main research interests include time-sensitive networking and FPGA design

    Quan Wei: born in 1987. PhD, associate professor. His main research interests include time-sensitive networking, software-defined networking and FPGA design

    Fu Wenwen: born in 1994. PhD, assistant professor. His main research interests include programmable network and time-sensitive networking

    Zhang Xiaoliang: born in 1991. Master, lecturer. His main research interests include software-defined networking and time-sensitive networking

    Sun Zhigang: born in 1974. PhD, professor. His main research interests include software-defined networking, time-sensitive networking, network architecture, and FPGA design and network security

  • 摘要:

    时间敏感网络(time-sensitive networking, TSN)在工业控制、航空电子和车载网络中具有广泛的应用前景.TSN流量规划是在拓扑结构、网络资源、设备能力和业务需求等多维约束下,为TSN交换机计算关键帧的无冲突发送时刻的过程,规划问题是一个NP完全问题. 目前不论是学术界的TSN规划算法研究,还是工业界的TSN部署应用都急需一个开源的规划器软件. 提出一种构件化、松耦合的TSN规划器软件架构LOCAP(loose-coupled component-based architecture of planner),通过规划参数最小集和规划结果通用表等接口规范设计,实现规划算法与规划工具、规划器软件与交换硬件实现的松耦合. OpenPlanner是基于LOCAP架构使用Python语言编写的开源TSN规划器,其内嵌自研和第三方贡献的多个可满足性模理论规划算法和启发式规划算法. 基于OpenPlanner对不同算法的运行时间开销以及解的质量进行了评估,指出多样化的TSN应用场景需要不同的规划算法. 据调研,OpenPlanner是目前唯一的开源TSN规划器,规划结果已部署到OpenTSN开源网络、银河衡芯TSN芯片以及芯准TTE等多个硬件平台,在卫星、无人车和火炮等多个系统中得到应用.

    Abstract:

    Time-sensitive networking (TSN) has emerged as a primary choice for communication in distributed real-time systems such as industrial automation, avionics, and automotive applications. TSN traffic planning aims to allocate conflict-free transmission times for time-sensitive frames while managing constraints related to network topology, resources, device capabilities, and stream requirements. The traffic planning problem is NP-complete. There is a need of quick development of open-source traffic planning software for both academia and industry. We introduce LOCAP, an architecture for TSN planning with interfaces named minimum collection of planning and general table of planning. LOCAP separates planning algorithms and tools, as well as planning software and hardware details. Based on LOCAP, we implement an open-source TSN planner called OpenPlanner. OpenPlanner integrates multiple algorithms that leverage satisfiability modulo theories and heuristics to solve planning problems. We evaluate the runtime and solution quality of various algorithms using OpenPlanner, highlighting the need for diverse planning algorithms in different TSN applications. To the best of our knowledge, OpenPlanner is the first open-source TSN planner. Its planning results have been deployed on multiple hardware platforms, including OpenTSN, Yinhe Hengxin TSN chip, and XZ-TTE. It has been applied in various systems such as satellites, unmanned vehicles, and artillery.

  • 个性化推荐是解决信息过载问题最有效的技术之一,在各种信息系统中得到了广泛应用. 由于其简单性和有效性,协同过滤(collaborative filtering,CF)[1]已成为当前推荐系统的主流方法. 在过去几十年中,研究并提出了许多基于CF的方法,从早期的基于矩阵分解(matrix factorization,MF)[2-3]的方法,到基于深度神经网络(deep neural network,DNN)[4-5]的方法,再到最近出现的基于图神经网络(graph neural network,GNN)[6-8]的方法. 推荐技术的快速发展极大地提升了方法的推荐性能. 然而,由于基于协同过滤的方法主要依赖用户与物品之间的交互来学习用户偏好并进行推荐,所以这些方法在可用交互数据稀疏时性能会急剧下降,这是其固有的限制.

    大多数现有的基于协同过滤的方法仅考虑用单一行为进行建模,通常是平台上的目标行为,例如电子商务平台上的购买行为. 然而,在现实世界的系统中,这种行为数据往往非常稀疏,导致这些方法存在严重的稀疏性问题. 实际上,在用户做出最终决策(即进行目标行为)之前,往往会发生多种类型的行为(例如浏览和收藏),通过与物品的互动生成相关信息. 这些行为也包含有价值的用户偏好信息,并且它们的交互信息通常比目标行为更丰富. 因此,可以利用这些辅助行为来帮助挖掘用户偏好,从而缓解数据稀疏性问题.

    利用辅助行为来促进目标行为推荐的方法被称为多行为推荐(multi-behavior recommendation,MBR)[9-10]. 多行为推荐方法近年来受到了极大关注,其核心在于如何利用辅助行为的信息来帮助学习用户和物品的表征. 早期的方法尝试将矩阵分解方法从单个矩阵扩展到多矩阵场景,或者使用不同的采样策略,用辅助行为数据丰富训练数据. 随着越来越多的研究证明了MBR的有效性,它吸引了更多的关注,并且最近引入了更先进的技术来处理这一任务. 例如,文献[11]将深度神经网络DNN用于建模行为序列,而文献[12]采用多头注意力机制来建模多个行为. 此外,基于图卷积网络(graph convolutional network,GCN)的方法采用各种策略在由所有行为构建的统一图上学习用户偏好. 文献[13]构建了一个异构图,用不同的边区分不同类型的行为,分别对每种行为进行建模,然后根据其对预测的重要性聚合用户表征.

    MBR方法的基本假设是用户各种行为的交互数据从不同角度或程度上反映了用户的偏好信息. 现有基于深度神经网络或图神经网络的MBR方法中,常见的范式是使用特定策略(例如,包含或不包含注意力机制)将从各种行为数据构建的网络中学习到的表征进行整合,以用与预测目标行为. 不同方法的区别在于如何设计网络结构以从不同行为中学习更优的表征,以及如何从每种行为中提取有价值的信息. 现有的MBR方法并未考虑对初始化表征的预处理,而是直接将初始化表征共享于多个行为中,这可能面临因行为间信息不一致而导致次优表现. 此外,现有的方法将用户表征于物品表征同等对待,并未考虑到用户在不同行为中表现出不同的偏好,而物品的特征不应随行为的变化而变化这一事实.

    为了应对上述挑战,本文设计了一种基于分层图卷积网络(hierarchical graph convolutional network for multi-behavior recommendation,MB-HGCN)的新型多行为推荐方法(MBR),以利用辅助行为进行用户和物品表征的学习. 与现有的直接从统一的异构图中学习用户和物品表征的基于GCN的方法不同[14],MB-HGCN方法采用了一种创新的分层网络结构进行表征学习,与传统方法不同,该方法提出了一种新的范式. 具体而言,MB-HGCN首先通过合并所有行为的交互记录,构建了一个统一的同构图,用于学习全局用户和物品的表征. 这一设计的核心目的是通过学习一种统一的粗粒度的用户偏好表征,捕捉用户的基本偏好信息,而不依赖于特定行为类型的细粒度差异. 尽管这种全局表征的粒度较粗,可能无法精确区分各行为类型的偏好特征,但它能够为后续每个行为特定图提供有效的初始化输入,确保后续的学习过程的全局一致性,从而有助于加速模型的训练并提高收敛速度. 在全局表征学习阶段,MB-HGCN通过在包含所有行为交互信息的统一同构图上执行图卷积操作,全面整合所有行为数据,进而学习到用户和物品的全局表征. 虽然该全局表征所表示的用户偏好相对宽泛且模糊,但其重要优势在于,作为初始化输入,它为每个行为特定图中的表征学习提供了强有力的支持,从而不仅加速了模型训练过程,还有效缓解了每个行为图中的数据稀疏问题. 随着训练的深入,通过专门优化每个行为图,逐步捕捉与该行为相关的细粒度特征. 这一层次化的学习机制,不仅能提升推荐的准确性,还能更好地捕捉用户在不同情境下的偏好,从而最终提升推荐系统的整体效果.

    在2层表征学习之后,采用了2种不同的策略分别对用户和物品的行为特定表征进行聚合. 具体地,对于用户表征,为了从不同行为中提取有效的信息用于目标行为预测,依据行为特定表征与目标行为特定表征的相似度为行为特定表征分配权重. 直观上,2个表征越相似,它们对目标行为的贡献越大. 对于物品表征,采用了基于不同行为的交互数量的加权方案[13]. 这一设计背后的原理是物品特征在不同行为之间应该是一致的,而从不同行为中学习到的物品表征的差异是由不同用户的交互引起的. 最后,将全局表征和聚合的行为特定表征结合起来,以得到更全面的表示. 通过采用多任务学习方法,将每个行为视为一个独立的任务进行优化. 在3个真实数据集上对MB-HGCN进行了全面评估,以验证其有效性. 实验结果表明,本文所提出的方法在HR@10和NDCG@10 这2个指标上相对于最佳基线有显著改进. 在Tmall数据集上,MB-HGCN分别相对于最优基线取得了73.93%和74.21%的相对性能提升. 此外,本文还进行了全面的消融研究,详细验证了每个组件的有效性.

    综上所述,本研究的主要贡献包括:

    1) 本文提出了一种用于多行为推荐的分层卷积图网络. 该网络首先在统一图的全局层面以粗粒度方式学习用户和物品表征,然后在每个行为图中以细粒度方式进行行为特定表征学习. 这种学习模式可以更有效地利用多行为信息,并生成高质量的用户和物品表征.

    2) 本文强调了用户和物品行为特定表征的独特性,为此设计了2种简单而有效的聚合策略,分别用于聚合用户和物品的行为特定表征. 这与使用相同聚合机制的主流聚合方法有很大不同.

    3) 在3个真实数据集上进行了大量实验来评估MB-HGCN方法的有效性. 结果表明,与最先进的方法相比,MB-HGCN在推荐精度方面取得了显著提高. 此外,代码和所涉及参数也已发布在GitHub中(https://github.com/MingshiYan/MB-HGCN),以供其他研究人员使用和参考.

    多行为推荐涉及利用多种类型的用户-物品交互数据进行推荐[11,13,15],其优势在于缓解了单一行为推荐方法中存在的数据稀疏性问题. 近年来,这种方法取得了显著的成绩,并引起了广泛关注.

    早期的多行为推荐方法扩展了传统的基于协同过滤的方法[1619]. 最直接的方式是将单行为数据中的矩阵分解方法应用到多行为数据中. 例如,Zhao等人[16]扩展了集体矩阵分解方法,对不同行为分别进行矩阵分解,并在它们之间共享物品表征. 此外,一些研究者设计了不同的采样策略以利用多行为数据. 例如:Ding等人[17]提出了一种改进的负采样策略,以达到更好的数据利用率,并进一步扩展了该思想;Guo等人[18]提出了一种采样策略,根据相似性从多个辅助行为中生成正样本和负样本;Qiu等人[19]提出了一种新颖的采样策略,基于不同行为之间样本的不相关平衡特性实现自适应采样. 这些方法通过利用辅助行为的交互数据来补充对目标行为的训练,从而增强了多行为推荐的性能.

    随着深度学习的发展,基于DNN的多行为推荐算法逐渐被提出[11-12,20]. 这类方法的主要思想是设计深度神经网络,分别从每个行为中学习用户和物品的表征,然后对它们进行聚合以用于推荐. 这些方法的区别主要体现在DNN的设计和聚合策略上. 例如:Gao等人[11]采用了顺序建模方法,通过将当前行为的预测分数向前传递来探索不同行为之间的依赖关系;Xia等人[12]设计了一个由Transformer和多头注意力机制组成的网络,以学习每个行为中的表征,然后通过采用全连接网络进行聚合;Guo等人[20]提出了一种层次化注意力机制,用于聚合从不同行为中学习到的用户偏好. 与其他将从不同行为中学习到的信息进行聚合的方法不同,深度网络在表示学习方面的优势使得基于DNN的多行为推荐方法在提升推荐性能上取得了巨大进展.

    由于GCN建模非结构化数据方面的出色性能,涌现出了许多基于GCN的多行为推荐方法[9,2124]. 这类方法的一般范式是使用GCN单独对每个行为进行建模,以学习用户和物品的表征,然后采用不同的策略对其进行聚合. 例如:Xia等人[21]提出了一种图元网络,将多行为与元学习范式相结合,以对多个行为之间的异构性和多样性进行建模;Gu等人[22]设计了不同的策略来单独聚合多行为用户和物品的表征,并采用星形对比学习来捕捉目标行为和辅助行为之间的共性;Cheng等人[9]设计了不同行为图网络的级联结构,通过在消息传递过程中引入可学习权重,不断细化用户的偏好. 另外一些方法将GCN作为挖掘协同信息的骨干网络,在此基础上进行更加精细化的偏好学习. 例如:Yan等人[23]设计了一个3层过滤网络,从GCN输出中提取更加细化的用户偏好;Xu等人[24]引入对比学习框架对GCN提取的协同信息进行去噪.

    与上述研究不同,本文提出了一种新的分层图卷积网络结构,通过采用不同的范式来挖掘多行为数据中用户和物品表征. 该方法首先从包含所有行为数据的统一同构图中学习全局表征,然后将其作为后续行为特定表征学习的初始表征. 这一学习策略能够充分利用多行为信息,并确保在每个行为图中进行良好的表征初始化. 此外,该方法采用了2种不同的策略来聚合用户和物品的行为特定表征. 通过与现有先进MBR方法的实验比较,验证了该方法的有效性.

    近年来,基于GCN的推荐方法因其在处理非欧几里德结构数据方面的强大能力而受到广泛关注[2528]. GCN的基本原理是利用用户-物品交互矩阵构建图结构,并通过在图上执行卷积操作来更新节点. 研究人员已将基于GCN的推荐方法与各种技术相结合,应用于不同的场景中.

    一些研究对GCN模型进行了简化. 例如:He等人[29]通过消除非线性和冗余的特征转换结构,简化了GCN操作中的消息传递机制,极大降低了模型的复杂性,同时提高了推荐性能;Mao等人[30]提出了一种更简洁的GCN操作,消除了显式消息传递,并通过约束损失函数和灵活的权重分配来近似无限层GCN的有限结果. 此外,为了区分节点的重要性或聚合不同的属性信息,一些方法将注意机制整合到GCN中. 例如:Wang等人[31]通过引入知识图谱进一步扩展了这一概念,结合用户行为数据和知识图谱信息以增强对用户兴趣的理解;Yue等人[28]考虑了不同属性的影响,提出了一种基于注意力的属性融合策略,缓解了数据稀疏性的问题;Qiao等人[32]通过设计3层注意力图,分别利用了用户之间的社交关系、用户-物品兴趣关系和物品之间的相关性. 另外,一些研究引入了知识图谱,以更好地捕捉用户和物品之间的语义和上下文信息,从而提高模型的可解释性. Ma等人[33]增强了GCN中的知识感知能力,提高了推荐性能,同时确保了解释多样性. Wang等人[34]聚合了具有显式和隐式关系的所有实体对,并区分了不同关系中上下文信息的重要性. 最近,一些研究还从其他角度探索了GCN的应用. 例如:Liu等人[35]将GCN应用于汉明空间,通过用户-物品二分图显式建模汉明空间中的1阶和高阶相似性;Hu等人[36]将联邦学习与GCN结合,利用分布式用户-物品交互图中的高阶连接信息,同时保护用户隐私.

    毫无疑问,基于GCN的方法在这些探索中取得了显著进展. 本文着重强调GCN在表示学习中高效捕获邻居信息的能力. 因此,在表征学习阶段,直接采用GCN作为骨干网络来实现表征的学习. 此外,为了应对GCN中存在的数据稀疏性问题,本文设计了一个层次化的图卷积结构,以更准确地捕获信息.

    多行为推荐通过利用用户在平台上的辅助行为(如浏览和加入购物车)来帮助学习用户偏好. 这些行为反映了用户对物品的兴趣,包含了丰富的用户偏好信息,从而有效缓解数据稀疏性问题. 这项工作旨在通过利用辅助行为更好地学习用户和物品的表征,以提高推荐性能.

    UI分别为用户和物品的集合,总用户数和总物品数分别为MN. 设K表示行为类型的数量,k(1表示第k种行为,其中K表示目标行为. 令{\mathcal{R}_k}为行为k的交互矩阵,该矩阵是一个二进制矩阵,对于{r_{ui}} \in {\mathcal{R}_k},如果 观察到用户u和物品i之间发生交互,则{r_{ui}} = 1;否则{r_{ui}} = 0.

    本文研究问题的正式定义如下.

    输入:用户集合\mathcal{U}和物品集合\mathcal{I}以及用户-物品在不同行为下的交互矩阵集合 \{{\cal R}_{1},{\cal R}_{2},… ,{\cal R}_{K}\} .

    输出:估计用户u在目标行为中与物品i交互的概率.

    在详细介绍MB-HGCN方法之前,先定义2个概念:

    行为特定图. 行为特定图定义为{\mathcal{G}_k} = ({V_k},{E_k}),其中{\mathcal{G}_k}是由第k个行为下用户-物品的交互矩阵{\mathcal{R}_k}构造的二分图. {V_k}由用户节点u \in \mathcal{U}和物品节点i \in \mathcal{I}构成,{E_k}定义为图{\mathcal{G}_k}中用户-物品的交互边. 假如用户与物品交互矩阵{\mathcal{R}_k}{r_{ui}} = 1则该用户和物品之间有边相连.

    统一图. 统一图定义为\mathcal{G} = (V,E),该图是基于所有类型行为的交互构建的. 它是一个同构图,这意味着无需区分这个图中不同类型的交互. 对于用户u和物品i之间不同类型的交互,他们的边是相同的,即E = {E_1} \cup {E_2} \cup … \cup {E_K}.

    用户与物品的交互反映了用户的兴趣. 在多行为推荐中,人们普遍认为不同类型的行为从不同角度或不同程度揭示了用户的偏好[14-15]. 基于这一共同假设,许多多行为方法被提出,它们从多种行为中提取有价值的信息来学习用户偏好. 以往大多数多行为方法首先分别从不同的行为中学习用户与物品的表征,然后采用不同的策略进行聚合. 最终目的是利用辅助行为来学习更好的用户和物品的表征,从而提高对目标行为的推荐性能.

    本文提出了一个层次图卷积网络,以利用多行为数据学习用户和物品的表征. 具体来说,MB-HGCN 首先采用由所有行为交互信息构造的统一图来学习全局表征. 然后将全局表征用作初始化的向量,并将其输入到行为特定图中,以学习每种行为类型的行为特定向量. 直观地说,用户在不同的行为中包含一个共享的宽泛的兴趣,而且每个行为都包含一些特定的用户偏好特征. 从统一图中学习到的全局表征表示一般兴趣或粗粒度偏好,从每个行为特定的图中学习到的用户表征表示对行为特定的细化或细粒度用户偏好. 接下来,MB-HGCN分别采用2种不同的策略获得最终的用户和物品的表征用于预测,并采用多任务学习进行优化.

    图1展示了 MB-HGCN方法的总体结构,主要包括3个模块:1) 表征学习,通过分层图网络结构学习用户和物品的表征;2) 表征聚合,采用2种不同的策略对用户和物品的表征进行聚合. 具体而言,设计了一种新的权重方案,从不同的行为中自适应提取有价值的信息,用于用户表征的聚合;采用线性聚合方法进行物品表征的聚合;3) 多任务学习,将每个行为的交互信息作为用户和物品表征学习的监督信号. 接下来将依次详细描述这3个模块.

    图  1  MB-HGCN方法概述
    Figure  1.  Overview of MB-HGCN method

    在具体介绍各个模块之前,首先了解一下如何对表征进行初始化. 当前主流方法是将用户u \in \mathcal{U}和物品i \in \mathcal{I}的编号分别初始化为d维向量{\boldsymbol{e}}_u^0{\boldsymbol{e}}_i^0. 令{\boldsymbol{P}} \in {\mathbb{R}^{M \times d}}{\boldsymbol{Q}} \in {\mathbb{R}^{N \times d}}分别为用户和物品的初始化向量矩阵,其中MN分别表示用户和物品的数量. 每个用户和物品的编号均对应一个唯一的向量. 给定所有用户和物品的one-hot编码矩阵{{\boldsymbol{ID}}^\mathcal{U}}{{\boldsymbol{ID}}^\mathcal{I}},用户u和物品i的向量表征初始化为

    {\boldsymbol{e}}_u^0 = {\boldsymbol{P}} \cdot {\boldsymbol{ID}}_u^\mathcal{U}, {\boldsymbol{e}}_i^0 = {\boldsymbol{Q}} \cdot {\boldsymbol{ID}}_i^\mathcal{I}, (1)

    其中 {\boldsymbol{ID}}_u^\mathcal{U} {\boldsymbol{ID}}_i^\mathcal{I} 分别代表用户u和物品i所对应的one-hot编码.

    MB-HGCN采用了一个分层的GCN结构来利用多行为进行表征学习. 为了简单起见,对于每个图中的表征学习均采用LightGCN[29]来实现,该方法是一个轻量级的基于CF的单行为推荐方法(也可以采用其他GCN方法来代替,如UltraGCN[30]和SVD-GCN[37]等). LightGCN的核心思想是采用邻域聚合进行信息传递以更新自身节点:

    \begin{split} &{\boldsymbol{e}}_u^{(l + 1)} = \sum\limits_{i \in {N_u}} {\frac{1}{{\sqrt {\left| {{N_u}} \right|} \sqrt {\left| {{N_i}} \right|} }}} {\boldsymbol{e}}_i^{(l)}, \\ &{\boldsymbol{e}}_i^{(l + 1)} = \sum\limits_{i \in {N_i}} {\frac{1}{{\sqrt {\left| {{N_i}} \right|} \sqrt {\left| {{N_u}} \right|} }}} {\boldsymbol{e}}_u^{(l)}, \end{split} (2)

    其中 {1 \mathord{\left/ {\vphantom {1 {\sqrt {\left| {{N_u}} \right|} \sqrt {\left| {{N_i}} \right|} }}} \right. } {\sqrt {\left| {{N_u}} \right|} \sqrt {\left| {{N_i}} \right|} }} 表示正则化系数,{N_u}({N_i})表示与用户u(物品i)交互过的物品(用户)的集合. 经过l层递归后,将每层表征聚合起来作为最终用户和物品的表征:

    {{\boldsymbol{e}}'_u} = \sum\limits_{l = 0}^L {{\alpha _l}{\boldsymbol{e}}_u^{(l)}} , {{\boldsymbol{e}}'_i} = \sum\limits_{l = 0}^L {{\alpha _l}{\boldsymbol{e}}_i^{(l)}} , (3)

    其中{\alpha _l}是超参数,用来表示第l层向量表征的重要性.

    图1所示,在统一图\mathcal{{\boldsymbol{G}}}和行为特定图{\mathcal{{\boldsymbol{G}}}_k}中均采用LightGCN来学习用户和物品的表征.

    全局向量表征:在统一图\mathcal{G}中,遵循式(2)经过L层传播后,分别得到用户和物品的向量表征集合\{ {\boldsymbol{e}}_u^{(1)}, {\boldsymbol{e}}_u^{(2)}, … , {\boldsymbol{e}}_u^{(L)}\} \{ {\boldsymbol{e}}_i^{(1)}, {\boldsymbol{e}}_i^{(2)}, … , {\boldsymbol{e}}_i^{(L)}\} . 随后对这些表征进行聚合作为最终的用户和物品的表征:

    \begin{split} &{\boldsymbol{e}}_u^g = {\boldsymbol{e}}_u^{(0)} + \sum\limits_{l = 1}^L {{\alpha _l}\frac{{{\boldsymbol{e}}_u^{(l)}}}{{{{\left\| {{\boldsymbol{e}}_u^{(l)}} \right\|}_2}}}} , \\ &{\boldsymbol{e}}_i^g = {\boldsymbol{e}}_i^{(0)} + \sum\limits_{l = 1}^L {{\alpha _l}\frac{{{\boldsymbol{e}}_i^{(l)}}}{{{{\left\| {{\boldsymbol{e}}_i^{(l)}} \right\|}_2}}}} , \end{split} (4)

    其中{\boldsymbol e}_u^g {\boldsymbol e}_i^g 分别为从统一图\mathcal{G}中学习到的全局表征. 同时,它们也是行为特定图{\mathcal{G}_k}的共享输入. {\boldsymbol e}_u^{(0)}{\boldsymbol e}_i^{(0)}是图\mathcal{G}的输入(即初始化向量表征{\boldsymbol e}_u^0{\boldsymbol e}_i^0). 通常来讲,越远的邻居重要性越低. 因此,式(4)中的{\alpha _l}设置为1/(l +1). 对图网络中每层学习到的表征({\boldsymbol e}_u^{(l)}{\boldsymbol e}_i^{(l)})进行归一化是为了减轻不同数量级特征叠加所带来的影响.

    行为特定向量表征:类似地,将{\boldsymbol e}_u^g{\boldsymbol e}_i^g作为初始向量表征输入行为特定图{\mathcal{G}_k}中,能够分别得到特定行为下的用户u与物品i的表征集合\{ {\boldsymbol e}_u^1, {\boldsymbol e}_u^2, … , {\boldsymbol e}_u^K\} \{ {\boldsymbol e}_i^1, {\boldsymbol e}_i^2, … , {\boldsymbol e}_i^K\} .

    通过表征学习过程,已经分别学习到了用户u与物品i的全局表征{\boldsymbol e}_u^g{\boldsymbol e}_i^g以及行为特定表征的集合\{ {\boldsymbol e}_u^1, {\boldsymbol e}_u^2, … , {\boldsymbol e}_u^K\} \{ {\boldsymbol e}_i^1, {\boldsymbol e}_i^2, … , {\boldsymbol e}_i^K\} . 接下来,MB-HGCN通过采用不同的策略,分别对上述用户表征和物品表征进行聚合,以获得最终的向量表征用于推荐任务.

    用户表征聚合:考虑到不同的行为可能传达一些关于用户偏好的独特信息,所以为了从不同行为特定的表征中提取有价值的信息以进行目标行为预测,我们设计了一种新颖的用户表征聚合加权方案. 以用户u为例,聚合方式如下:

    {\boldsymbol{U}} = {\boldsymbol{e}}_u^1||{\boldsymbol{e}}_u^2|| … ||{\boldsymbol{e}}_u^K, (5)
    \tilde {\boldsymbol{e}}_u^k = {\boldsymbol{U}}{{\boldsymbol{\delta}} ^{\rm T}}, (6)

    其中||表示堆叠操作, {\boldsymbol{U}} \in {\mathbb{R}^{d \times K}} 是堆叠从每个行为中学习到的用户向量表征而得到的矩阵,其中d代表向量的维度,K为行为数量;{\boldsymbol{\delta }}是根据不同行为与目标行为的相关性计算得到的权重向量,其计算过程为

    {\boldsymbol{\delta}} = softmax\left(\frac{{{{({\boldsymbol{e}}_u^k)}^{\rm T}}{\boldsymbol{U}}}}{{\sqrt d }}\right), (7)

    其中 {({\boldsymbol{e}}_u^k)^{\rm T}}{\boldsymbol{U}} 计算了第k个行为和其他行为之间向量表征的相似性;\sqrt d 用来防止梯度消失;softmax( \cdot )用来进行归一化.

    式(7)通过注意力机制计算第k个行为和其他行为之间的相关性来为用户分配权重. 直觉上,与行为k之间具有更多相关性的行为应该分配更大的权重,采用这种策略进行权重分配,模型能够自适应地从其他行为中提取有价值的信息用于目标行为的预测. 此外,结合多任务学习,这种方法还能避免在学习过程中将行为特定的表征过度优化为目标行为.

    重复上述操作,模型可以获得一个综合的表征集合\{ \tilde {\boldsymbol{e}}_u^1,\tilde {\boldsymbol{e}}_u^2, … ,\tilde {\boldsymbol{e}}_u^K\} .

    物品表征聚合:物品特征在不同行为中的一致性使得我们可以通过简单的线性组合来聚合学习到的表征. 在不同类型的行为中,与物品交互的用户数量和总的交互数量存在差异. 直观地说,在具有更多交互的行为中学习到的物品特征更全面. 因此,行为k中分配给物品i的行为特定表征的权重为

    {\gamma _{ik}} = \dfrac{{{w_k}{n_{ik}}}}{{\displaystyle\sum\limits_{m = 1}^K {{w_m}{n_{im}}} }}, (8)

    其中{w_k}是第k个行为下的可学习参数,{n_{ik}}表示在第k个行为中与物品i交互的用户数量. 聚合后的物品i的特定行为表征为

    {\tilde{{\boldsymbol{e}}}}_{i}={\displaystyle \sum _{k=1}^{K}{\gamma }_{ik}{{\boldsymbol{e}}}_{i}^{k}}. (9)

    值得注意的是,用户表征\tilde {\boldsymbol{e}}_u^k和物品表征 {\tilde {\boldsymbol{e}}_i} 都是从特定行为的信息中获得的. 为了获得更全面而丰富的表征,将它们与全局表征相结合,最终的表征为

    \hat {\boldsymbol{e}}_u^k = \tilde {\boldsymbol{e}}_u^k \oplus {\boldsymbol{e}}_u^g, {\hat {\boldsymbol{e}}_i} = {\tilde {\boldsymbol{e}}_i} \oplus {\boldsymbol{e}}_i^g, (10)

    其中 \oplus 表示对应位置元素相加.

    多任务学习是一种联合优化不同但相关的任务的学习策略. 为了更好地利用表征学习中的多行为信息,MB-HGCN将每个行为视为独立的训练任务. 采用计算内积的方式来估计预测得分. 以第k个行为为例:

    y_{ui}^k = {(\hat {\boldsymbol{e}}_u^k)^{\rm T}}{\hat {\boldsymbol{e}}_i} . (11)

    对每个任务的优化采用贝叶斯个性化排序 (bayesian personalized ranking,BPR)损失:

    {\mathcal{L}_k} = \sum\limits_{(u,i,j) \in \mathcal{O}} { - {\mathrm{ln}}} \sigma (y_{ui}^k - y_{uj}^k), (12)

    其中\mathcal{O} = \{ (u,i,j)|(u,i) \in {O^ + },(u,j) \in {O^ - }\} 定义为正负样本对;{O^ + }({O^ - })表示在当前行为中已观察到 (未观察到)的样本;\sigma ( \cdot )代表sigmoid函数. 根据式(12),能够得到所有K个任务的损失函数,即\{ {\mathcal{L}_1},{\mathcal{L}_2}, … ,{\mathcal{L}_K}\} ,然后对K个损失函数求和,进行联合优化. 通常来讲,不同任务的贡献应该是不同的. 为不同的损失分配不同的权重可能会提高最终的性能,然而这不是本章研究的重点. 在这里,将它们视为同等重要进行简单相加,本文专注于研究表征学习与聚合策略的有效性,将对损失函数中不同权重的研究作为未来的工作重点. 最终的损失函数表示为

    \mathcal{L} = \sum\limits_{k = 1}^K {{\mathcal{L}_k} + \beta {{\left\| \varTheta \right\|}_2}} , (13)

    其中\varTheta 表示模型中所有可训练的参数,\beta 为正则化系数,用于防止过拟合. 为了提高泛化能力,在训练中还采用了广泛使用的node dropout和message dropout策略,分别用来随机丢弃图中的节点和向量中的信息.

    本节在3个公开的基准数据集上进行了全面的实验,以评估MB-HGCN模型的有效性. 具体而言,本节旨在回答以下研究问题:

    1)与最先进的推荐方法相比,MB-HGCN模型的性能如何.

    2)MB-HGCN模型的各组成部分对推荐性能有何影响.

    3)MB-HGCN能否缓解冷启动问题.

    4)增加GCN层数对模型性能有何影响.

    1)数据集:实验中使用了Tmall,Beibei,Jdata这3个真实数据集. Tmall和Jdata数据集包含4种行为类别,分别为浏览(view)、收藏(collect)、加购物车(cart)和购买(buy),而Beibei数据集包含3种行为类别,严格按照浏览、加入购物车然后购买的顺序发生. 在这3个数据集中,购买行为被设定为目标行为,其他所有行为都视为辅助行为. 为了确保数据的质量和一致性,对上述数据集进行了预处理,去除了重复记录并保留了最早发生的记录. 预处理方法遵循了之前研究中使用的标准,这为实验提供了可靠的数据基础. 详细信息见表1所示.

    表  1  实验数据集统计信息
    Table  1.  Statistics of the Experimental Datasets
    统计明细数据集
    TmallBeibeiJdata
    用户41 73821 71693 334
    物品11 9537 99724 624
    购买255 586304 576333 383
    加购物车1 996642 62249 891
    收藏221 51445 613
    浏览1 813 4982 412 5861 681 430
    下载: 导出CSV 
    | 显示表格

    2)评估协议:为了评估模型的性能,采用了常用的留一法方法. 在训练阶段,选择每个用户的最后一个交互物品构建验证集,以进行超参数调优. 在评估阶段,计算测试集中所有物品的预测分数,并对它们进行排名,从而生成用户的推荐列表. 为全面评估模型性能,实验采用了2个广泛使用的评估指标:命中率(hit ratio,HR@K)和归一化折损累计增益(normalized discounted cumulative gain,NDCG@K).

    3)基准模型:为了展示MB-HGCN模型的有效性,对其与几种基准推荐方法进行了性能比较.

    1)单行为方法:

    MFBPR[2]. 该方法将矩阵分解与BPR优化框架相结合,用于个性化推荐.

    LightGCN[29]. 该方法仅保留邻居聚合操作,同时去除冗余的非线性变换,相比标准GCN大大简化了模型架构,从而实现更优秀的推荐性能.

    2)多行为方法:

    RGCN[38]. 该模型是一种关系图卷积网络,通过聚合图中节点邻域的信息来学习节点表征,可以区分不同类型的边,从而在异构图上进行表示学习.

    NMTR[11]. 该模型是级联建模用户的多个行为的深度模型,用于捕捉其顺序偏好并提供个性化推荐.

    MBGCN[13]. 该模型利用多行为的用户-物品交互数据来学习表征并预测个性化推荐. 此外,还利用物品-物品传播来处理冷启动问题.

    GNMR[10]. 该模型通过融合交叉交互协作关系建模,捕捉多个行为之间的复杂用户-物品交互,并提升推荐性能.

    SMBRec[22]. 该模型采用对比学习策略进行星型结构的表征学习,从而利用辅助行为的信息来提高目标行为的推荐准确性.

    CRGCN[14]. 这项工作对行为序列进行建模,并在信息传播中建立不同行为之间的连接,实现了行为之间的依赖性探索.

    MBRec[39]. 该方法提出了一个相互关系编码器,以自适应地发现复杂的关系结构并跨特定于层的行为表示进行聚合.

    4)参数设置:该模型由PyTorch实现. 所有方法每个batch大小统一设置为1 024,向量表征维度统一设置为64. 优化方面,本文选择了Adam优化器. 此外,通过网格搜索技术优化模型的超参数,具体来说,对学习率和正则化权重(\beta )分别在以下值范围内进行调优:[1{{\mathrm{e}}^{ - 2}},5{{\mathrm{e}}^{ - 3}},3{{\mathrm{e}}^{ - 3}},1{{\mathrm{e}}^{ - 3}}][1{{\mathrm{e}}^{ - 2}},1{{\mathrm{e}}^{ - 3}},5{{\mathrm{e}}^{ - 4}},3{{\mathrm{e}}^{ - 4}}].

    本节介绍了MB-HGCN模型和所有基线方法性能的详细比较分析. 实验结果如表2所示.

    表  2  与基准模型性能比较
    Table  2.  Compared with the Performance of Baselines
    数据集指标单行为方法多行为方法相对提升/%
    MFBPRLightGCNRGCNNMTRMBGCNGNMRSMBRecMBRecCRGCNMB-HGCN
    TmallHR@100.02300.03930.03160.05170.05490.03930.06940.07710.08400.1461*73.93
    NDCG@100.01240.02090.01570.02500.02850.01930.03620.04160.04420.0770*74.21
    BeibeiHR@100.02680.03090.03270.03150.03730.03960.04890.05090.05390.0619*14.84
    NDCG@100.01390.01610.01610.01460.01930.02190.02530.02310.02590.0297*14.67
    JdataHR@100.18500.22520.24060.31420.28030.30680.41250.47630.50010.5338*6.74
    NDCG@100.12380.14360.14440.17170.15720.15810.27790.28860.29140.3238*11.12
    注:符号 * 表示通过双边成对t检验确定的具有统计显著性的改进,其中p< 0.05. 最优和次优分别用黑体和下划线表示.
    下载: 导出CSV 
    | 显示表格

    总体而言,多行为方法在整体上优于单行为方法,凸显了建模多个行为的有效性. 在多行为方法中,MB-HGCN显著优于其他多行为方法. 与最佳基准模型相比,该模型在推荐准确性方面取得了显著改进. 这些结果展示了该模型的出色性能.

    在单行为方法中,LightGCN方法在3个数据集上的性能表现明显优于MFBPR. 这个结果归因于基于GCN的方法在捕捉用户-物品交互信息方面的有效性.

    在多行为方法中,RGCN通过简单的求和方法将分别从每个行为中学习的表征直接组合起来,导致结果不佳,甚至在某些情况下低于单行为方法LightGCN的准确率. 这表明对辅助行为表征进行直接聚合可能对推荐准确性产生不利影响. 相反,MBGCN和GNMR采用了替代的表征聚合策略,两者相比RGCN都取得了更好的性能,这验证了不同行为对目标行为的贡献不同. 此外,NMTR和CRGCN通过级联建模考虑多个行为之间的关系,并且两者的性能都优于前面提到的方法. NMTR通过不同行为的交互分数间接建模级联效应. 相比之下,CRGCN直接将级联影响融入到表征学习过程中,从而在性能上优于NMTR. MBRec精心设计了跨行为特定层的融合方案,因此也获得了出色的性能表现. MB-HGCN能够大幅度地优于MBRec和CRGCN,主要归功于其层级学习策略和聚合策略. 与CRGCN相比,MB-HGCN对用户和物品表征的聚合更加精细化,而不是直接进行级联传递影响. 与MBRec相比,MB-HGCN的层级学习获取了层次丰富的多行为用户表示,能够更好地促进信息的聚合. 消融研究进一步证明了MB-HGCN中不同组件的有效性.

    值得注意的是,在Tmall数据集上取得的改进远远超过了其他2个数据集. 这个巨大差距的主要原因可以归因于不同数据集之间的行为交互的多样性. 与Jdata相比,Tmall的收藏行为产生了与购买行为相当数量的数据,提供了丰富的信息. 而Jdata数据集的加购物车和收藏行为与购买行为相比相差1个数量级,因此会受到数据不平衡问题的影响. 相比之下,在Beibei平台上,用户在购买时需要遵循严格的行为顺序,即浏览→加入购物车→购买. 因此,模型中学到的全局表征反映了浏览行为,这限制了模型的性能.

    通过广泛的消融研究,本节评估了MB-HGCN模型中各种成分的有效性.

    1)统一图\mathcal{G}中表征学习的有效性:MB-HGCN中包含一个用于表征学习的分层图卷积网络,在该网络中,利用统一的图\mathcal{G}来学习粗粒度的全局表征,并将其作为共享初始化用于细化行为特定图中的表征. 为了验证粗粒度全局表征的有效性,进行了一项实验,在实验中移除了统一图组件,并将结果与保留统一图的原始模型进行了比较. 具体而言,在没有统一图\mathcal{G}的情况下训练模型,并利用初始化的表征(即{\boldsymbol{e}}_u^0{\boldsymbol{e}}_i^0)作为行为特定图{\mathcal{G}_k} (k \in [1,K])的初始化. 实验结果如表3所示.

    表  3  图G中表征学习的效果
    Table  3.  Effect of the Representation Learning in Graph G
    数据集评估指标w/o.Gw.G
    TmallHR@100.03940.1461
    NDCG@100.01980.0770
    BeibeiHR@100.04200.0619
    NDCG@100.02130.0297
    JdataHR@100.27090.5338
    NDCG@100.16080.3238
    注:w.G和w/o.G分别表示在图G中是否进行表征学习.
    下载: 导出CSV 
    | 显示表格

    表3中实验结果表明,移除统一图\mathcal{G}会显著降低模型的性能. 这个结果归因于在图\mathcal{G}中学习的粗粒度全局表征可以为行为特定图中的表征提供更好的初始化,从而在这些图中实现更准确的学习. 此外,观察到2个模型(w.G和w/o.G)之间存在巨大的性能差异. 实际上,没有统一图\mathcal{G}时,模型退化为RGCN的一种变体,其唯一的区别在于表征聚合策略. 与表2中的结果相比,不带统一图\mathcal{G}的模型的性能仍然明显优于RGCN的结果. 实验结果支撑了我们提出的用户和物品表征聚合策略的有效性,并进一步验证了统一图设计的有效性.

    2)用户表征聚合策略的影响:用户表征聚合策略的设计初衷在于用户在不同行为中的兴趣可能存在差异,并且并非所有辅助行为中的用户偏好都对目标行为的预测任务有贡献. 因此,设计了一种自适应用户表征聚合策略. 为了验证该策略的有效性,进行了3个实验:①求和聚合(sum),移除了自适应用户表征聚合模块,直接对不同行为特定的表征进行求和以进行信息聚合;②线性聚合(linear),将自适应用户表征聚合模块替换为线性聚合,根据每个行为的交互数量分配不同的权重,即与物品聚合策略相同;③自适应聚合(adaptive),使用提出的自适应表征聚合策略. 实验结果见表4.

    表  4  不同的用户表征聚合策略比较
    Table  4.  Comparison of Different User Representation Aggregation Strategies
    数据集评估指标sumlinearadaptive
    TmallHR@100.09710.12630.1461
    NDCG@100.04880.06870.0770
    BeibeiHR@100.05160.05750.0619
    NDCG@100.02570.02880.0297
    JdataHR@100.40680.48880.5338
    NDCG@100.23560.29350.3238
    下载: 导出CSV 
    | 显示表格

    表4中可以看出,自适应聚合策略取得了最佳性能. 求和聚合方法由于用户在不同行为中表现出的兴趣差异以及聚合策略缺乏对每个行为重要性的考虑,导致性能较差. 尽管线性聚合方法考虑了不同行为的重要性,但交互次数更多的行为不一定反映更准确的用户偏好. 相比之下,自适应聚合策略基于不同行为之间的相似度,在特征级别上聚合相关信息. 值得注意的是,该聚合方案不会向模型中添加任何额外的参数,从而消除了聚合方案引入额外参数对表征学习过程产生负面影响的潜在风险.

    为了验证这一点,进行了额外的实验. 首先,预训练了模型,并保留了从每个行为中学习到的最佳表征,同时移除了全局表征的聚合(即式(10)的操作),以消除全局表征的影响. 为了消除多任务学习的影响,仅保留了目标行为的训练. 在此基础上进行了以下实验:① Munfix,采用线性聚合策略进行用户表征聚合;② Mfix,在第1次实验的基础上固定了表征学习过程中的参数;③ Madap,采用自适应聚合策略进行用户表征聚合. 实验结果如图2所示.

    图  2  不同用户表征聚合方式的影响
    Figure  2.  The impact of different aggregating for user representations

    图2中可以观察到,对于2种线性聚合方法而言,固定参数的方法明显优于未固定参数的方法. 这是因为在固定参数的方法中,监督信号无法传递到表征学习过程中,只有线性聚合过程的参数得到优化.

    这表明,聚合参数的优化可能导致表征学习的局部最优解. 此外,采用自适应聚合策略的方法表现优于采用线性聚合的2种方法. 其原因在于自适应聚合策略不引入任何参数,有利于表征学习朝着正确的方向进行优化.

    3) 物品表征聚合策略的影响:考虑到交互次数更多的行为可能会反映出物品更全面的特征,所以采用了一种加权方案,即根据每个行为的交互次数按比例分配权重,如式(8)所示. 通过以下实验评估这种设计的有效性:① fix {\gamma _{ik}},为表征聚合分配相同的权重(即{\gamma _{ik}} = 1);② w/o.{w_k},移除可学习参数{w_k},并严格按照每个行为的交互次数比例分配权重;③ w.{w_k},保留可学习参数{w_k},允许对不同行为的重要性进行微调,即本文采用的方法. 实验结果如表5所示:

    表  5  物品聚合策略分析
    Table  5.  Analysis of Item Aggregation Strategy
    数据集评估指标fix γikw/o. wkw. wk
    TmallHR@100.12850.14080.1461
    NDCG@100.06860.07620.0770
    BeibeiHR@100.05870.02760.0619
    NDCG@100.05940.03040.0297
    JdataHR@100.46850.48140.5338
    NDCG@100.27950.29060.3238
    下载: 导出CSV 
    | 显示表格

    表5中的结果表明,相比于非加权方法(fix {\gamma _{ik}}),2种加权方法显著改善了性能,这支持了交互次数更多的行为反映了更全面的物品特征这一观点. 在这2种加权方法中,通过可学习参数对权重进行微调的方法(w.{w_k})取得了更好的性能,表明不同行为对不同物品的贡献存在差异. 因此,通过可学习参数对权重进行微调可以更好地聚合物品的表示,进一步验证了所提出策略的有效性.

    在推荐系统中,冷启动问题指的是由于缺乏足够的历史数据,难以为新用户或物品生成个性化推荐的困难. 多行为推荐是一种通过利用多种行为数据来缓解冷启动问题的方法. 这些行为数据可能包含有助于更好理解用户偏好的丰富信息. 本节旨在验证模型在缓解冷启动问题方面的潜力. 将MB-HGCN与2个方法进行比较,即MBGCN和CRGCN,其中MBGCN利用一个基于物品的评分模块来缓解冷启动问题,而CRGCN是表现最佳的基准模型. 遵循之前的研究[13-14],随机选择测试集中的1 000个用户作为冷启动用户进行研究. 将他们的购买记录作为冷启动用户的测试集. 接下来,从训练集中删除所选用户的全部购买记录,并且从辅助行为中删除测试集中出现过的交互以防止信息泄露. 实验结果如图3所示:

    图  3  冷启动用户的性能进行比较
    Figure  3.  Performance comparison for cold-start users

    图3中可以观察到,在3个数据集上,MB-HGCN始终表现优于CRGCN和MBGCN.这一结果表明,MB-HGCN能够更有效地利用多行为数据进行用户偏好学习. 这种优越的性能归因于分层图卷积网络架构,它能够从全局层次到行为特定层次学习用户偏好. 因此,即使用户没有购买行为,模型仍然能够通过学习粗粒度的用户偏好来进行目标行为推荐. 相比之下,CRGCN的顺序建模未能有效地学习随机行为,例如收藏行为,这种行为的发生是不确定的,从而导致了次优的表现. 此外,与MBGCN相比,CRGCN表现出明显的性能提升,这归因于其级联设计能够有效利用级联行为的影响来优化用户偏好. 相反,MBGCN采用的加权聚合策略可能无法捕捉行为之间的复杂相互关系.

    为了清晰展示模型的计算效率,基于每个epoch的平均训练时间,我们比较了MB-HGCN与相同设置下的几种代表性基线模型,结果如表6所示. 本实验的所有方法均在PyTorch框架下实现,实验环境配置如下:CPU为Intel(R) Xeon(R) CPU E5-2650 v4@2.20 GHz,GPU为GeForce RTX 2080 Ti Rev. A,批量大小为1 024,表征维度为64.

    表  6  计算效率分析
    Table  6.  Computational Efficiency Analysis s
    数据集 单行为 多行为
    LightGCN MBGCN SMBRec CRGCN MB-HGCN(本文)
    Tmall 3.58 106.72 109.79 10.66 11.24
    Beibei 2.86 139.36 158.61 6.78 19.97
    Jdata 7.92 105.69 168.29 19.58 19.97
    下载: 导出CSV 
    | 显示表格

    表6结果中可以看出,MB-HGCN在训练时间上展现出较高的效率,特别是在多行为模型中表现突出. 值得注意的是,同样是基于GCN的方法,MB-HGCN和CRGCN的效率远高于MBGCN和SMBRec. 与仅使用购买行为的单行为模型LightGCN相比,MB-HGCN利用了更多的交互数据(见表1中的交互数量),因此其总时间成本是可以接受的. 这与时间复杂度所显示的结果是一致,即MB-HGCN与LightGCN的计算复杂度基本相同,其中MB-HGCN方法整体计算所需总的时间复杂度为O(2\left| E \right| + 2\left| E \right|nLd{\left| E \right|} / b + 2\left| E \right|nd + 2nd),LightGCN与轻量级多行为方法CRGCN的时间复杂度均为O(2\left| E \right| + 2\left| E \right|nLd{\left| E \right|}/ b + 2\left| E \right|nd),其中|E|为图中边的数量,n为epoch数量,b为训练批次大小,d为表征维度,L为GCN层数. 对于行为数量为b的数据集而言,MB-HGCN运行时间理论值为LightGCN的b+1倍左右,这与表6统计结果一致. 上述讨论说明MB-HGCN具有广泛的应用前景.

    MB-HGCN采用LightGCN作为骨干,在每个图中执行卷积操作. 整体结构中,对图\mathcal{G}{\mathcal{G}_k}执行卷积操作类似于增加GCN层数. 我们比较了不同数量设置的GCN层对推荐性能的影响,结果如图4所示.

    图  4  不同层数GCN设置对性能的影响
    Figure  4.  The impact of different layer number of GCN settings on performance

    根据图4的结果显示,随着GCN层数的增加,性能一开始会提高,但在继续堆叠更多层时开始下降. 这一观察结果与LightGCN和NGCF等单一行为方法中的情况一致. 实验表明,使用2个GCN层时能够获得最佳性能表现. 这一发现表明在模型中,增加GCN层数并不总是直接导致性能的提升. 相反,性能可能在一定层数后出现下降,这可能是由于过多的层会导致过平滑等问题. 因此,选择适当数量的GCN层对于获得最佳性能至关重要.

    为了验证不同学习率对模型性能的影响,我们统计了学习率取不同值时MB-HGCN在3个数据集上的性能表现,具体结果如图5所示.

    图  5  不同学习率对性能的影响
    Figure  5.  The impact of different learning rate on performance

    图5中可以观察到,随着学习率的增加,模型在3个数据集上HR@10和NDCG@10的性能表现均呈现先上升后下降的趋势. 这是由于当学习率较小时可能会导致模型训练过程变得缓慢、难以收敛到最优解,容易受到噪声干扰,甚至停留在局部最优解或鞍点附近. 当学习率过高时可能导致参数更新过大,使模型在参数空间中来回摆动,难以收敛到最优解,甚至会出现发散的情况,从而严重影响模型的泛化能力. 因此,一个合适的学习率对模型的性能至关重要.

    本文提出了一种新的多行为推荐方法MB-HGCN,这是一种采用分层图卷积网络来有效利用多行为数据的推荐方法. 具体而言,设计了一个分层图网络,能够从全局到行为特定的层次学习用户偏好. 此外,MB-HGCN采用了2种不同的聚合策略,用于聚合从不同行为中学习到的用户和物品表征. 通过在3个真实数据集上进行的广泛实验,证明了模型的有效性. 此外,充分的消融研究评估了模型的各个组成部分,验证了它们设计的合理性. 未来,计划探索表征学习过程中多行为交互之间的关系,并在在线系统上进行实验,以评估所提出模型的性能.

    作者贡献声明:严明时提出了算法思路和实验方案,并撰写论文;陈慧临负责完成实验;程志勇和韩亚洪提出指导意见并修改论文.

    流由源端和目的端之间的一系列数据帧组成.
  • 图  1   TSN交换机时间感知整形的原理

    Figure  1.   Principle of time-aware shaper in TSN switches

    图  2   TSN流量规划示例

    Figure  2.   Example of TSN traffic planning

    图  3   流量规划器在TSN生态中的位置

    Figure  3.   Location of traffic planning in TSN ecosystem

    图  4   LOCAP架构

    Figure  4.   Architecture of LOCAP

    图  5   代码占比

    Figure  5.   Proportion of code

    图  6   平均端到端延时

    Figure  6.   Average end-to-end delay

    图  7   网络内每跳的平均驻留延时

    Figure  7.   Average in-network residence time per hop

    图  8   源端的驻留延时

    Figure  8.   Residence time at the source

    图  9   目的端的平均抖动

    Figure  9.   Average jitter at the destination

    图  10   最多使用的GCL表项数目

    Figure  10.   Maximum number of used GCL entries

    图  11   算法在不同拓扑下的运行时间

    Figure  11.   Runtime of algorithms under different topologies

    表  1   业务需求参数(以流量 {\boldsymbol{f}}_{1} 为例)

    Table  1   Parameters of Application Requirements (Taking {\boldsymbol{f}}_{1} as an Example)

    参数 含义
    {f}_{1}.id 1 流量 {f}_{1} id 为1
    {f}_{1}. {v}_{\mathrm{t}\mathrm{a}\mathrm{l}\mathrm{k}\mathrm{e}\mathrm{r}} ES1 流量 {f}_{1} 的源节点为节点 ES1
    {f}_{1}. {v}_{\mathrm{l}\mathrm{i}\mathrm{s}\mathrm{t}\mathrm{e}\mathrm{n}\mathrm{e}\mathrm{r}} ES5 流量 {f}_{1} 的目的节点为节点 ES5
    {f}_{1}.period/\mathrm{m}\mathrm{s} 2 流量 {f}_{1} 的周期为2 ms
    {f}_{1}.size/\mathrm{B} 80 流量 {f}_{1} 的帧长为80 B
    {f}_{1}.delay/\mathrm{m}\mathrm{s} \left[\mathrm{0.8,1.2}\right] 流量 {f}_{1} 的延时为0.8~1.2 ms
    下载: 导出CSV

    表  2   场景特征参数(以链路 {\boldsymbol{l}}_{1} 为例)

    Table  2   Parameters of Scenario Characteristics (Taking Link {\boldsymbol{l}}_{1} as an Example)

    类型 参数 含义
    拓扑结构 {l}_{1}.id 1 链路 {l}_{1} id 为1
    {l}_{1}{.v}_{\mathrm{s}\mathrm{r}\mathrm{c}} SW2 链路 {l}_{1} 的源节点为 SW2
    {l}_{1}. {v}_{\mathrm{d}\mathrm{s}\mathrm{t}} ES5 链路 {l}_{1} 的目的节点为 ES5
    网络资源 {l}_{1}.bd/\mathrm{M}\mathrm{b}\mathrm{p}\mathrm{s} 1000 链路 {l}_{1} 的带宽为1000 Mbps
    {l}_{1}.que 2 链路 {l}_{1} 缓存TS流量的队列数为2
    设备延时参数 {l}_{1}.proc/μs 1 链路 {l}_{1} 的处理延时为1 μs
    下载: 导出CSV

    表  3   LOCAP架构的插座、接口、库和构件的功能

    Table  3   Functions of Sockets, Interfaces, Libraries, and Components in LOCAP Architecture

    类别 名称 功能
    插座1)场景插座定义面向典型应用场景的拓扑和流量实例化操作方法,将拓扑及流量文件作为输出接口规范
    2)规划插座定义流量规划操作方法,将规划参数最小集和规划结果通用表作为输入输出接口规范
    3)编译插座定义面向具体硬件平台的结果编译操作方法,将规划结果通用表和GCL文件作为输入输出接口规范
    接口规范1)拓扑及流量文件拓扑文件描述拓扑结构和网络资源,流量文件描述流量业务需求
    2)扩展的规划参数最小集用于调度规划的基础参数,是对网络资源和业务需求的高度抽象
    3)规划结果通用表时间触发通信中最本质的时间和空间资源分配的描述方式
    4)GCL文件由TSN标准定义的GCL表扩展而来的规划结果描述文件
    1)典型场景构件库保存实例化拓扑及流量的构件
    2)规划算法构件库保存规划算法构件
    3)第三方编译构件库保存第三方编译构件
    构件1)拓扑及流量实例化构件实例化指定规模的拓扑和流量,输出拓扑及流量文件
    2)规划参数最小集初始化构件将拓扑文件和流量文件解析为规划参数最小集对应的数据结构
    3)规划算法构件以规划参数最小集为输入,为流量计算无冲突的时空资源分配方案,输出为规划结果通用表
    4)验证构件验证规划算法输出结果的正确性
    5)转换构件将规划结果通用表转换为GCL文件
    6)评估构件评估规划算法输出结果的质量
    7)第三方编译构件将GCL文件编译为与具体硬件设备实现相关的硬件配置
    下载: 导出CSV

    表  4   输入接口规范可能的技术路线

    Table  4   Possible Roadmap of Input Interface Specification

    评价 技术路线
    参数最大集 参数最小集
    优点 如果已知参数在最大集中,
    无需开发人员扩展
    对网络资源和业务需求的高度抽象
    缺点 不可能囊括所有未知参数 开发人员需要按照需求扩展最小集
    采纳 ×
    注:“×”表示不采纳;“√”表示采纳.
    下载: 导出CSV

    表  5   OpenPlanner集成的算法及其特征

    Table  5   Algorithms Integrated in OpenPlanner and Their Characteristics

    算法名称 运行时间 解的质量 适用场景
    帧算法[15] 较长 1) 流量的端到端延时小
    2) 数据帧在网络内和源端的驻留时间均较短
    3) 能够实现0抖动
    4) GCL表项占用多
    适用于对延时和抖动要求十分严苛的场景,例如:运动控制
    窗口算法[21] 1) 流量端到端延时较大
    2) 数据帧在网络内和源端的驻留时间均较长
    3) 有界抖动
    4) GCL表项占用少
    适用于对延时和抖动要求相对宽松的场景,例如:工业控制
    ITP[17] 较短 1) 流量的端到端延时中等
    2) 流量在网络内的驻留时间短,在源端的驻留时间长
    3) 有界抖动
    4) GCL表项占用少
    适用于网络资源受限但终端资源较为丰富的场景
    下载: 导出CSV
  • [1]

    IEEE Standards Association. IEEE 802.1Q−2022: IEEE Standard for Local and Metropolitan Area Networks--Bridges and Bridged Networks[S]. Los Alamitos, CA: IEEE Computer Society, 2022

    [2]

    Messenger J L. Time-sensitive networking: An introduction[J]. IEEE Communications Standards Magazine, 2018, 2(2): 29−33 doi: 10.1109/MCOMSTD.2018.1700047

    [3]

    Nasrallah A, Thyagaturu A, Alharbi Z, et al. Ultra-low latency (ULL) networks: The IEEE TSN and IETF DetNet standards and related 5G ULL research[J]. IEEE Communications Surveys & Tutorials, 2019, 21(1): 88−145

    [4] 黄韬,汪硕,黄玉栋,等. 确定性网络研究综述[J]. 通信学报,2019,40(6):160−176 doi: 10.11959/j.issn.1000-436x.2019119

    Huang Tao, Wang Shuo, Huang Yudong, et al. Survey of the deterministic network[J]. Journal on Communications, 2019, 40(6): 160−176 (in Chinese) doi: 10.11959/j.issn.1000-436x.2019119

    [5]

    Patti G, Bello L L, Leonardi L. Deadline-aware online scheduling of TSN flows for automotive applications[J]. IEEE Transactions on Industrial Informatics, 2023, 19(4): 5774−5784 doi: 10.1109/TII.2022.3184069

    [6]

    Sanchez-Garrido J, Aparicio B, Ramirez J G, et al. Implementation of a time-sensitive networking (TSN) Ethernet bus for microlaunchers[J]. IEEE Transactions on Aerospace and Electronic Systems, 2021, 57(5): 2743−2758 doi: 10.1109/TAES.2021.3061806

    [7]

    Obermaisser R. Time-Triggered Communication[M]. Boca Raton, FL: CRC Press, 2012: 121–152

    [8]

    Csaba S, Markosz M, Miklos M. Design aspects of low-latency services with time-sensitive networking[J]. IEEE Communications Standards Magazine, 2018, 2(2): 48−54 doi: 10.1109/MCOMSTD.2018.1700081

    [9]

    IEEE TSN Group. Use cases IEC/IEEE 60802[EB/OL]. [2023-09-13]. https://grouper.ieee.org/groups/802/1/files/public/docs2018/60802-industrial-use-cases-0918-v13.pdf

    [10] 全巍,付文文,孙志刚,等. 枫林一号:一款面向高端装备定制的低功耗时间敏感网络芯片[J]. 计算机研究与发展,2021,58(6):1242−1245 doi: 10.7544/issn1000-1239.2021.20210164

    Quan Wei, Fu Wenwen, Sun Zhigang, et al. HX-DS09: A customized low power time sensitive networking chip for high-end equipment[J]. Journal of Computer Research and Development, 2021, 58(6): 1242−1245 (in Chinese) doi: 10.7544/issn1000-1239.2021.20210164

    [11]

    IEEE Standards Association. IEEE Std 802.1AS−2020: IEEE Standard for Local and Metropolitan Area Networks — Timing and Synchronization for Time-Sensitive Applications[S]. Los Alamitos, CA: IEEE Computer Society, 2020

    [12]

    IEEE Standards Association. IEEE Std 802.1Qbv-2015: IEEE Standard for Local and Metropolitan Area Networks – Bridges and Bridged Networks - Amendment 25: Enhancements for Scheduled Traffic[S]. Los Alamitos, CA: IEEE Computer Society, 2016

    [13] 张彤,冯佳琦,马延滢,等. 时间敏感网络流量调度综述[J]. 计算机研究与发展,2022,59(4):747−764 doi: 10.7544/issn1000-1239.20210203

    Zhang Tong, Feng Jiaqi, Ma Yanying, et al. Survey on traffic scheduling in time-sensitive networking[J]. Journal of Computer Research and Development, 2022, 59(4): 747−764 (in Chinese) doi: 10.7544/issn1000-1239.20210203

    [14] 李宗辉,杨思琪,喻敬海,等. 时间敏感网络中确定性传输技术综述[J]. 软件学报,2022,33(11):4334−4355

    Li Zonghui, Yang Siqi, Yu Jinghai, et al. State-of-the-art survey on deterministic transmission technologies in time-sensitive networking[J]. Journal of Software, 2022, 33(11): 4334−4355 (in Chinese)

    [15]

    Craciunas S S, Oliver R S, Chmelík M, et al. Scheduling real-time communication in IEEE 802.1Qbv time sensitive networks[C] // Proc of the 24th Int Conf on Real-Time Networks and Systems. New York: ACM, 2016: 183−192

    [16]

    Dürr F, Nayak N G. No-wait packet scheduling for IEEE time-sensitive networks (TSN)[C] // Proc of the 24th Int Conf on Real-Time Networks and Systems. New York: ACM, 2016: 203−212

    [17]

    Yan Jinli,Quan Wei,Jiang Xuyan,et al. Injection time planning:Making CQF practical in time-sensitive networking[C] // Proc of IEEE Int Conf on Computer Communications. Piscataway,NJ:IEEE,2020:616−625

    [18]

    He Xiaowu, Zhuge Xiangwen, Dang Fan, et al. DeepScheduler: Enabling flow-aware scheduling in time-sensitive networking[C/OL] // Proc of IEEE Int Conf on Computer Communications. Piscataway, NJ: IEEE, 2023 [2024-08-19]. https://ieeexplore.ieee.org/document/10228875

    [19]

    Steiner W. An evaluation of SMT-based schedule synthesis for time-triggered multi-hop networks[C] // Proc of the 31st IEEE Real-Time Systems Symp. Piscataway, NJ: IEEE, 2010: 375−384

    [20]

    Smirnovt F , Glaß M , Reimann F , et al. Optimizing message routing and scheduling in automotive mixed-criticality time-triggered networks[C/OL]// Proc of the 54th Annual Design Automation Conf. New York: ACM, 2017 [2024-08-19]. https://ieeexplore.ieee.org/document/8060332

    [21]

    Oliver R S, Craciunas S S, Steiner W. IEEE 802.1Qbv gate control list synthesis using array theory encoding[C] // Proc of the 24th IEEE Real-Time and Embedded Technology and Applications Symp. Piscataway, NJ: IEEE, 2018: 13−24

    [22]

    Wilfried S, Craciunas S S, Serna O R. Traffic planning for time-sensitive communication[J]. IEEE Communications Standards Magazine, 2018, 2(2): 42−47 doi: 10.1109/MCOMSTD.2018.1700055

    [23]

    Pahlevan M, Obermaisser R. Genetic algorithm for scheduling time-triggered traffic in time-sensitive networks[C] // Proc of the 23rd IEEE Int Conf on Emerging Technologies and Factory Automation (ETFA). Piscataway, NJ: IEEE, 2018: 337−344

    [24]

    Quan Wei, Yan Jinli, Jiang Xuyan, et al. On-line traffic scheduling optimization in IEEE 802.1Qch based time-sensitive networks[C] // Proc of IEEE 22nd Int Conf on High Performance Computing and Communications & IEEE 18th Int Conf on Smart City & IEEE 6th Int Conf on Data Science and Systems. Piscataway, NJ: IEEE, 2020: 369–376

    [25]

    Fu Wenwen, Quan Wei, Yan Jinli, et al. Fenglin-I: An open-source time-sensitive networking chip enabling agile customization[J]. IEEE Trans on Computers, 2023, 72(1): 140−153 doi: 10.1109/TC.2022.3188179

    [26]

    TTTech Industrial. Slate XNS[EB/OL]. [2023-09-06]. https://www.tttech-industrial.com/products/slate/slate-xns/

    [27]

    The Linux Foundation Projects. OpenDaylight platform overview[EB/OL]. [2023-09-06]. https://www.opendaylight.org/about/platform-overview

    [28]

    The Linux Foundation Projects. SONiC – Software for open networking in the cloud[EB/OL]. [2023-09-06]. https://sonicfoundation.dev/

    [29]

    OpenTSN. OpenPlanner1.0[EB/OL]. [2024-07-07]. https://gitee.com/opentsn/open-planner

    [30]

    OpenTSN. OpenPlanner2.0[EB/OL]. [2024-07-07]. https://gitee.com/xyjiang_1216/open-planner2.0

    [31]

    IEEE Standards Association. IEEE Std 802.1Qcc-2018: IEEE Standard for Local and Metropolitan Area Networks − Bridges and Bridged Networks - Amendment: Stream Reservation Protocol (SRP) Enhancements and Performance Improvements[S]. Los Alamitos, CA: IEEE Computer Society, 2018

    [32]

    Craciunas S S, Oliver R S, Steiner W. Demo abstract: Slate XNS——An online management tool for deterministic TSN networks [C] //Proc of the 24th IEEE Real-Time and Embedded Technology and Applications Symp. Piscataway, NJ: IEEE, 2018: 103−104

    [33]

    Open VSwitch. Production quality, multilayer open virtual switch[EB/OL]. [2023-09-06]. http://www.openvswitch.org/

    [34]

    Project Floodlight. Floodlight OpenFlow controller (OSS)[EB/OL]. [2023-09-06]. https://github.com/floodlight/floodlight

    [35]

    FD. io. The world’s secure networking data plane[EB/OL]. [2023-09-07]. https://fd.io

    [36]

    Li Zonghui, Wan Hai, Pang Zaiyu, et al. An enhanced reconfiguration for deterministic transmission in time-triggered networks[J]. IEEE/ACM Transactions on Networking, 2019, 27(3): 1124−1137 doi: 10.1109/TNET.2019.2911272

    [37] 湖南华芯通网络科技有限公司. 开源TTE规划软件(XZ-Plan)技术白皮书[EB/OL]. [2023-09-06]. http://www.c2comm.cn/resource_centre/XZ-Plan.pdf

    Hunan Huaxintong Network Technology Co., Ltd. Open-Source TTE planning software (XZ-Plan) white paper[EB/OL]. [2023-09-06]. http://www.c2comm.cn/resource_centre/XZ-Plan.pdf (in Chinese)

    [38]

    OpenTSN. OpenTSN builder[EB/OL]. [2024-07-07]. https://gitee.com/xyjiang_1216/OpenTSN_planner_builder

    [39]

    OpenTSN. OpenTSN4.0 [EB/OL]. [2023-09-13]. https://gitee.com/opentsn/open-tsn4.0

    [40]

    Quan Wei,Fu Wenwen,Yan Jinli,et al. OpenTSN:An open-source project for time-sensitive networking system development[J]. CCF Transactions on Networking,2020,3:51−65

图(11)  /  表(5)
计量
  • 文章访问数:  47
  • HTML全文浏览量:  17
  • PDF下载量:  22
  • 被引次数: 0
出版历程
  • 收稿日期:  2023-09-27
  • 修回日期:  2024-12-04
  • 录用日期:  2025-01-08
  • 网络出版日期:  2025-01-08
  • 刊出日期:  2025-04-30

目录

/

返回文章
返回