Page 321 - 《软件学报》2025年第12期
P. 321

5702                                                      软件学报  2025  年第  36  卷第  12  期


                 化. 同时, 通过超图节点与超边的连接, 实现会话及其相似会话的关系提取. 与                     Xia 等人  [8] 方法不同的是, 本文不是
                 采用超边图卷积网络提取高阶关系, 因为这会融杂过多的邻居信息, 从而易使用户的兴趣产生漂移, 所以我们采
                 用  Transformer 编码器提取原始会话中更重要的顺序信息           (见第  3.2.2  节).
                    在超图构建之后, 使用超图卷积网络来捕捉会话级的隐藏高阶关系. 定义超图上的卷积操作的主要挑战是如
                 何传播项目的嵌入. 我们使用的光谱超图卷积来构建超图卷积网络, 如公式                       (5) 所示:

                                                           M
                                                        N ∑ ∑
                                                   e (l+1)  =  A iε A jε W εε e (l)                   (5)
                                                   s u ,i            s u ,i
                                                        i=1  ε=1
                 其中,  e (l+1)  代表在超图卷积  l 层会话   s u  中项目  v i  的嵌入表示, A  为邻接矩阵, W  为权重矩阵  (它的每个超边赋予相
                      s u ,i
                 同的权重    1), M  为会话中的项目数, N   为相关联的会话数. 超图卷积网络的矩阵带行归一化的表达式, 如公式                       (6)
                 所示:

                                                                  T
                                                               −1
                                                          −1
                                                   H (l+1)  = D AWB A H  (l)                          (6)
                                                     s u ,i         s u ,i
                 其中,  H (l+1)  代表在超图卷积  l 层会话   s u  中的项目  v i  嵌入矩阵, B (或  D) 为边  (或节点) 度矩阵, A  为邻接矩阵, W  为
                       s u ,i
                 权重矩阵. 超图卷积可看作是对超图结构进行“节点-超边-节点”的两阶段特征变换, 即“项目-会话-项目”的信息传
                                                               T
                 递. 节点到超边的信息聚合由节点矩阵与邻接矩阵的乘法                   A H  (l)   完成, 后再乘以邻接矩阵  A, 这样将信息从超边传
                           H (0)                                                                    H s u ,i =
                 递到节点. 将       通过  L  层超图卷积后, 对每一层得到的项目嵌入实施平均化操作, 得到最终的项目嵌入
                       ∑  L
                             (l)
                 1/(L+1)   H .
                          l=0  s u ,i
                    在空间上传递信息时, 时间信息是不可忽视的. 而在会话序列中, 时间信息往往体现为项目的位置前后关系.
                 Vaswani 等人  [31] 认为位置嵌入是  Transformer 中引入的一种有效技术, 在许多领域被应用于项目位置信息的存储
                 与运用. 参考   Xia 等人  [8] 的方法, 我们设计一个可学习的位置矩阵         Pos r = [pos 1 , pos 2 , pos 3 ,..., pos m ], 其中  m  是当前
                                                                               a
                                                                              s =< v 1 ,v 2 ,v 3 ,...,v m > 中,  e ∗   为增
                 会话长度, 通过该矩阵与会话嵌入拼接, 使时间信息融入会话嵌入. 在增强会话                        u                   s u ,i
                       a  v i  的嵌入表示, 如公式
                 强会话   s  中                 (7) 所示:

                       u
                                                e ∗  = tanh(W 1 [e s u ,i ∥ pos m−i−1 ]+b)            (7)
                                                 s u ,i
                                  d
                 其中,  W 1 ∈ R d×2d ,  b ∈ R  是可学习的参数. 通过对会话包含的所有项目嵌入进行平均操作来表示此会话的嵌入, 以
                             ′
                 细化增强会话     s  的嵌入表示, 如公式    (8) 所示:
                             u

                                                           1  ∑ m
                                                       a
                                                      h =       e ∗                                   (8)
                                                       s u       s u ,i
                                                           m  i=1
                 其中,  h a   是增强会话  s  的嵌入,  e ∗   是增强会话  s  中第  i 个项目的嵌入.
                                                      a
                                  a
                      s u         u       s u ,i      u
                    上面经过超图卷积网络编码器获得的会话嵌入包含了会话间的关系, 然而, 准确预测用户兴趣还需提取会话
                 内信息.
                  3.2.2    Transformer 编码
                    Transformer 编码器具备卓越的特征提取能力, 能够从复杂的序列数据中识别并捕捉到用户的兴趣变化. 这种
                 能力使得它可为超图视图提供高质量的对比信号, 以增强模型的鲁棒性. 利用                        Transformer 编码器可有效地筛选出
                 会话中与目标用户兴趣不相关的信息, 不仅能够更全面地提取会话内的短期兴趣, 还能在捕捉会话间的潜在高阶
                 关联上取得更大突破. 这种全局感知与高效计算的结合, 使其在复杂的推荐任务中表现优异, 为推荐任务提供了强
                 有力的技术支持. 本文使用        Transformer 编码器提取会话内信息, 将     Transformer 编码器表示为  SeqEnc(·), 如公式  (9):

                                                                   a
                                                        a
                                                      , f = SeqEnc(s u , s )                          (9)
                                                     f s u
                                                        s u        u
                                                                     a
                 其中,    表示原始会话嵌入,      f  a   表示增强会话嵌入,  s u  是原始会话,  s  是增强会话. Transformer 编码器由一个序列
                      f s u
                                        s u                          u
                 块和一个全连接前馈网络构成, 每个编码器层包括多头自注意力层                      (multi-head self-attention layer) 与前馈全连接
                 层  (feed forward layer) 两个子层. 多头自注意力子层将会话序列作为输入计算           query、key  和  value, 通过缩放点积
                 操作实现注意力计算, 并采用多套线性变换映射矩阵提取会话序列的不同表示. 前馈全连接子层包含两个线性变
                 换和一个   ReLU  激活函数, 以对会话序列建模. 这两个子层均使用了残差连接和层归一化, 以提升性能和加速收敛
   316   317   318   319   320   321   322   323   324   325   326