paper 5: Sliding Spectrum Decomposition for Diversified Recommendation (KDD'2021)


 

在一个大规模的推荐系统中,我们可以从三个角度来理解多样化的推荐结果: 

  • quality: 供应与用户兴趣匹配
  • diversity: 发现/扩展用户兴趣
  • fairness: 对长尾和小众items公平

对于quality, 可以来自用户历史兴趣, 也可以是用户兴趣的发现和拓展. 我们可以对点击率, 时长等行为建模, 进而转化为分类/回归问题

对于diversity, 我们需要度量items之间的相似性, 例如DPP(determinal point process, 行列式点过程)

本文试图解决两个问题: quality和diversity之间如何获得一个较好的trade-off, 以及如何公平地衡量相似性

outline:

问题1: 如何度量向量集的多样性, 以及多样性和质量如何trade off?

将feed中的笔记建模为时间序列, 滑动窗口以获取不同的候选集合, 然后由embedding向量组成了tensor. 以tensor的奇异值代表候选集的diversity.

最后加上quality部分来trade off.

问题2: 如何公平地度量相似性?

结合CB与CF, 减少CB对先验知识的依赖, 并对新item和长尾item友好.

实验结果: CB2CF相比CF能够提升区分效果, 而SSD能给出diversity的metric, 随后可与quality trade-off

 

问题1: 如何度量向量集的多样性, 以及多样性和质量如何trade off?

首先需要对feed的items进行时间序列建模:

对于小红书的用户, feed可以看作他们观测到的一个一维时间序列, 每个时刻为一篇笔记(item)

下一步, 我们需要对该时序进行分解.

借鉴时间序列的正交分解:

在经典的时间序列分析中,如西瓜的单价,以销售时刻为横轴, 我们可以建立时间序列, 并将其分解为经营成本、季节、噪声

时间序列可分解为 trend + sesonal + residual(noise). 

from statsmodels.tsa.seasonal import seasonal_decompose

 

类似地, 下面我们尝试将笔记序列分解成几个正交的部分, 以衡量多样性

滑动频谱分解(Sliding Spectrum Decomposition, SSD)

推荐的item序列$(i_1, \ldots, i_T)$总长度为$T$,

用户浏览窗口大小为$w$, 第一个窗口为$(i_1, i_2, \ldots, i_\omega)$, 窗口滑动步长为1, 最后一个窗口为$i_{T-\omega+1}, i_{T-\omega+2}, \ldots$, i_{T}.

$v$为笔记在embedding空间中的表示, e.g. $v_{i_1}$是item $i_1$的表示. 把每一个窗口的embedding视为一行, 构成了tensor $\chi$.

 

 

向量集合的多样性, 直观上可以由边界向量(下图中的$v_1$和$v_2$)围成的平行四边形面积来度量. 而在本问题中, 需要处理多个窗口, 而多个窗口联合体积是没有一个直观定义的.

SSD引入了矩阵的奇异值乘积来表示一个窗口内笔记的体积, 这里的'矩阵'是指tensor$\chi$的一行.

对tensor$\chi$做奇异值分解后得到奇异值$\sigma_{ijk}$, 与每篇笔记的quality结合, 即可得到下面的trade-off目标

 

 其中$Z$是候选集合, $\gamma$是一个平衡系数.

 

问题2: 如何公平地度量相似性?

上述SSD中,依赖于笔记的embedding向量来衡量多样性, 所以我们需要构造这些向量

在向量构造时, 其两两之间的相似性依需要符合用户对多样性的感知, 有两种直观的构造思路:

一是基于内容的方法,

即构造一个基于笔记图片和文字内容的监督任务, 将监督模型的中间层结果作为向量表示

缺点: 依赖大量先验知识

二是基于协同过滤的方法, 即通过全体用户的交互历史, 构造CF向量

缺点: 对长尾兴趣和新内容非常不友好

 

于是该论文研究了下图所示的content-based to collaborative filter(CB2CF)方法:

 

该方法通过内容信息预估协同过滤的结果, 在输入上只使用了内容, 这样即使新内容也能依赖模型的泛化能力得到较好的结果

在输出上依赖于全体用户的协同标注, 使得研究者能够在统计数据上学习用户感知的信号

(BERT, inception, MLP???)

 

实验结果

在离线实验中, 研究者比对了CF和CB2CF在长尾上的表现.

在四个高区分度的类目下, 由实验结果可以看到CB2CF有较好的区分能力:

top K 相似中的分类一致率

这里衡量指标为前10个最相似的item里同类的比例.

在线上实验中, 研究者用SSD与SOTA(state of the art)的DPP模型做了AB实验, 在市场, 互动, ILAD(曝光多样性), MRT(用户平均阅读类目数, 消费多样性?)上都取得了一定的收益

在实验时分为offline evaluation和online A/B test

 

在A/B test中, 引入了如下4种metric

  • 在feed上花的时长
  • number of engagements
  • Intra-List Average Distance, ILAD: 平均每个用户的曝光多样性 (么个用户的impression集中的不相似度(1-相似度)平均) 
  • Mean Read taxonomies. MRT: 平均每个用户click集的种类数

 

补充:

typical recommendation system

 

  1. First, retrieve candidate items from item database 
  2. Followed by a ranking module to measure the point-wise quality of item
  3. Then high-quality items will be sent to policy module, for further selection and reranking, to build the final recommendation


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM