Post

05_AlphaFuse:Learn ID Embeddings for Sequential Recommendation in Null Space of Language Embedding

05_AlphaFuse:Learn ID Embeddings for Sequential Recommendation in Null Space of Language Embedding

来源:SIGIR‘25 https://arxiv.org/abs/2504.19218

代码:https://github.com/Hugo-Chinn/AlphaFuse

问题的引出

  • 早期工作,给每个item分配一个独有的ID,学习ID embeddings => capture collaborative signals within the interaction behavior space
    • 可训练的,强调用户之间的协作信号
  • 近期工作,利用LLM,将item文本的元数据(标题,描述等)编码为 language embedding
    • 冻结的,捕捉item的语义和上下文信息
  • 引出问题:
    • language embeddings 如何有效的指导ID embedding的学习?
    • language embeddings 如何更好的整合进入item embedding?
  • 对于问题1已经存在一些方法, 存在局限:

    • 语义空间的退化: 语言嵌入需要高维表示,而ID嵌入的表示是低维的;

      Degeneration of semantic space

    • 没有充分利用语言嵌入: 只作为引导,而没有将其放入最终的item embeddings;

      Underutilization of language embedding

    • 辅助可训练参数的参与

      Involvement of auxiliary trainable parameters

ID embeddings should be semantic-anchored(i.e., preserving the original semantic space of language embeddings) and tuning-efficient.

AlphaFuse:

  • Decomposition of semantic space: 分为semantic-sparse(null space)和semantic-rich(row space);
  • Clipping of null space:丢弃一些维度,通常为64或128维;
  • Standardization of semantic-rich subspaces;
  • Learning of ID embeddings.

准备工作

1. 符号表示

V:所有的物品集合

U:所有的用户集合

N, M:物品数量,用户数量

L:历史交互序列长度

v<=L = [v1, v2, … ,vL-1, VL]: 用户过去的交互历史

2. 判别式序列推荐(discriminative sequential recommenders)

目标:依据用户历史交互 v<L , 获得vL (在所有物品里找到用户真正会选的那个,即分类问题)

负采样,N为负样本数,以 v<L 预测 vL

直接在全量物品上计算代价太高,使用负采样集合来近似训练

alt text

  • Θ:一系列可训练的模型参数
  • 第一部分:最大化正样本概率;第二部分:最小化负样本概率

推理过程:

alt text

3. 生成式序列推荐(generative sequential recommenders)

每个物品 v ∈ V,被映射为一个embedding 向量 e ∈ Rd

历史交互可以表示为:e<L = [e1, e2, … , eL-1], 正样本也就是eL

alt text

最大似然估计:已知eL已经发生,求得使该事件发生概率最大的Θ(可训练参数)

推理过程:

alt text

x并不保证恰好是某个物品的embedding, 需要映射步骤:最近/学习一个映射函数

4. 基本子空间

embedding矩阵为:E ∈ R N × d

做奇异值分解,SVD(ETE) = UΣUT

  • U ∈ Rd×d : 包含所有特征向量;
  • Σ:对角矩阵,σ2:奇异值的平方,按降序排序

把embedding空间 Rd 拆分成一组正交子空间,每个子空间对应一个奇异值

SVD见:https://blog.csdn.net/lomodays207/article/details/88687126

三个基本子空间:

  • Singular Subspace: 所有和某个奇异值 λ 对应的奇异向量张成的空间

    alt text

    如果一个σ很大,说明embedding在其对应的u方向信息最强

  • Row Space: 等价于E的所有行向量张成的空间

    alt text

    embedding 矩阵实际能表示的所有方向

  • Null Space: 对应奇异值为0的空间

    alt text

    E在这些方向上完全没有分量,因此E与零空间是正交的

    可以认为是语义稀疏或丢失的维度

alt text


AlphaFuse

a new language-guided learning strategy for ID embeddings

alt text

1. Modeling Language Embeddings

  • 将 item 的文本属性和描述拼接起来;

  • 输入开源LLM如Llama或公开API,获得language embeddings;
  • 获得language embedding:E ∈ RN×dl, embedding维度也就是dl

2. 分解语义空间

对于E: 通过SVD做 rank-r 近似,得到E*r , 使得下式最小化:

alt text

即在低维空间尽量保留原embedding语义信息。

Frobenius范数:矩阵元素平方求和,再开方; 在所有秩<=r的矩阵里,找一个和E更接近的

(1) 在做SVD前,计算 E 的均值和协方差(方阵):

alt text

  • p(v): item v的权重,默认平均

(2) 对协方差矩阵做SVD:

alt text

SVD见:https://blog.csdn.net/lomodays207/article/details/88687126

  • S:特征值矩阵,奇异值的平方
  • 右奇异矩阵可用于特征维度的压缩

(3) 划分奇异子空间

每个奇异向量对应一个一维奇异子空间:

alt text

每个ui是语义空间中的一个主方向,该方向的重要程度由其对应的奇异值si决定

奇异值更大的奇异子空间包含更多E的投影,因此保留了更多信息;

零奇异值对应的null space与E正交 (积为0),不包含任何语义信息。

3. 处理奇异子空间

由于SVD数值误差,小的奇异值不会是0,只会是很小的正数。因此人为设定一个阈值,小于阈值的奇异值就当作无语义,即null space。

  • 语义空间的低秩结构(Low-rank structure): 语义信息主要集中在很少数的几个大奇异值的子空间中;
  • 语义空间的各向异性(Anisotropy):即使在semantic-rich子空间中,不同维度的重要性差别也很大。

(1) Clipping of Semantic-sparse Null Space

  • 传统的判别式序列推荐模型:

    ID embeddings一般是低维的(64或128),如果把几千维的null space输入,可能导致:

    • 噪声维度过多,学习困难;
    • 模型参数增大,训练和推理都低效

    因此要将null space裁剪,裁剪后的null space记作V0, 维度dn

  • 扩散模型类的生成式推荐模型,适合高维空间,无需对null space裁剪

alt text

(2) Standardization of semantic-rich Subspaces

alt text

即每个子空间的基向量V除以它对应的奇异值s。

减轻semantic-rich子空间之间语义信息的差异性,确保language embedding更有效,更易于区分。

alt text

4. Learning of ID embeddings

semantic-rich子空间V1, 维度为ds

(1) language embeddings in the standardized semantic-rich subspaces V1 计算如下:

这里由于SVD后,semantic-rich空间已经包含了绝大多数语义信息,所以可以近似看作language embeddings

alt text

  • μ:E的均值

先进行中心化,再投影到前ds+dn个奇异向量(保存前ds个重要特征),最后对每个方向除以相应奇异值(S存放奇异值的平方,S的二分之一次幂即为奇异值,-1即由乘变除)

提前预留dn,用于放置可训练的ID embeddings.

为什么null space也要标准化?

  • null space也会存在少量语义信息;
  • 部分扩散模型要求方差守恒,否则扩散生成过程会失效。

(2) ID embeddings初始化为零或随机

(3) 拼接为最终的item embedding:

alt text


This post is licensed under CC BY 4.0 by the author.