自监督学习
12/15/25About 3 min
自监督学习
参考文献:Tiansheng Yao et al.Self-supervised Learning for Large-scale Item Recommendations. In CIKM 2021.
双塔模型的问题
- 推荐系统的头部效应严重:
- 少部分物品占据大部分点击。
- 大部分物品的点击次数不高。
- 高点击物品的表征学得好,长尾物品的表征学得不好
- 自监督学习:做 data augmentation,更好地学习长尾物品的向量表征
自监督学习
正样本
对样本做随机变换,同物品的随机变换结果应该相似,不同物品的结果应该不相似

负样本

- 物品的两个向量表征和有较高的相似度。
- 物品和的向量表征和有较低的相似度。
- 鼓励尽量大,尽量小。
特征变换
Random Mask
随机选一些离散特征(比如类目),把它们遮住。
例:
- 某物品的类目特征是 U={数码,摄影}。
- Mask 后的类目特征是 U'=
Dropout
仅对多值离散特征生效
- 一个物品可以有多个类目,那么类目是一个多值离散特征。
- Dropout:随机丢弃特征中 50%的值。
- 例:
- 某物品的类目特征是 U = {美妆,摄影}。
- Dropout 后的类目特征是 U' = {美妆}。
Complementary
互补特征
假设物品一共有 4 种特征:
- ID,类目,关键词,城市
随机分成两组:
- {D, 关键词}和
{ID, default, 关键词, default} → 物品表征
{default, 类目, default, 城市} → 物品表征
鼓励两个向量相似
Mask 一组关联的特征
- 受众性别:U = 男,女,中性
- 类目:V = 美妆,数码,足球,摄影,科技,…
- u=女 和 V = 美妆 同时出现的概率大
- u=女 和 V = 数码 同时出现的概率小
例
p(u):某特征取值为 u 的概率
- p(男性)=20%
- p(女性)=30%
- p(中性)=50%
p(u,v):某特征取值为 u,另一个特征取值为 v,同时发生的概率。
- p(女性’美妆)=3%
- p(女性’数码)=0.1%
离线计算特征两两之间的关联,用互信息(nutual information)衡量:
设一共有 k 种特征。离线计算特征两两之间 MI,得到 kXk 的矩阵
随机选一个特征作为种子,找到种子最相关的 k/2 种特征。
Mαsk 种子及其相关的飞/2 种特征’保留其余的 k/2 种特征。
好处:比 random mask、dropout、互补特征等方法效果更好。
坏处:方法复杂,实现的难度大’不容易维护。
训练模型
- 从全体物品中均匀抽样’得到 m 个物品,作为一个 batch
- 做两类特征变换,物品塔输出两组向量:
- 和
- 第 个物品的损失函数:
- 做梯度下降,减小损失函数:

训练模型
- 对点击做随机抽样,得到几对用户一物品二元组,作为一个 batch。
- 从全体物品中均匀抽样,得到 m 个物品,作为一个 batch。
- 做梯度下降,使得损失减小:
- 双塔模型的损失,自监督学习的损失
总结
- 双塔模型学不好低曝光物品的向量表征。
- 自监督学习:
- 对物品做随机特征变换
- 特征向量和相似度高(相同物品)
- 特征向量和相似度低(不同物品)
- 实验效果:低曝光物品、新物品的推荐变得更准
