首页 > 其他分享 >Ranking Distillation: Learning Compact Ranking Models With High Performance for Recommender System

Ranking Distillation: Learning Compact Ranking Models With High Performance for Recommender System

时间:2023-09-20 15:03:29浏览次数:51  
标签:Compact Ranking Recommender bm 模型 mathcal pi hat

目录

Tang J. and Wang K. Ranking Distillation: Learning compact ranking models with high performance for recommender system. KDD, 2018.

在分类问题上, 知识蒸馏一般利用最后的 logits, 本文希望学生和教师对 top-K 的 items 的排序能够尽可能保持一致, 而非局限在 logits 的数值上.

符号说明

  • \(\mathcal{Q} = \{q_1, \cdots, q_{|\mathcal{Q}|}\}\), queries;
  • \(\mathcal{D} = \{d_1, \cdots, d_{|\mathcal{D}|}\}\), documents;
  • \(y_d^{(q)}\), query-document pair \((q, d)\) 的相关度

Ranking Distillation

  • 在检索或者推荐领域, 我们的目的就是训练一个模型 \(M\), 然后

    \[\hat{y}_d^{(q)} := M(q, d; \theta) \]

    来预测 query \(q\) 和 document \(d\) 的一个相关度, 根据预测的相关度来预测和推荐.

  • 一般来说, 模型越复杂, 它的拟合能力越强, 效果就可能越好, 当然代价往往是更昂贵的计算(存储)开销. 知识蒸馏就是一个比较实用的方法将教师模型 (大一点模型) 的信息迁移到 学生模型 (小一点的模型)上.

  • 在分类领域, 通常要求学生模型的输出分布尽可能符合教师模型的, 但是对于检索和推荐, 其实具体的数值并非如此关键. 我们只要求学生模型对一串文档的排序尽可能和教师模型的一致, 那么它的性能就能不错. 这实际上是减弱了对学生模型的约束 (可以认为, 让学生模型的输出分布和教师模型的一致的约束有点过于强了).

  • 令 \(M_T\) 为一个规模较大的教师模型, 我们希望把它的一些重要信息迁移到学生模型 \(M_S\) 之上. 具体通过如下损失实现:

    \[\mathcal{L}(\theta_S) = (1 - \alpha) \mathcal{L}^R (\bm{y}, \hat{\bm{y}}) + \alpha \mathcal{L}^D (\bm{\pi}_{1\ldots K}, \hat{\bm{y}}). \]

  • 前者是正常的损失, 后者是要求学生模型的打分 \(\hat{\bm{y}}\) 符合教师模型所给出的 top-K 的排序 \(\bm{\pi}_{1\ldots K}\). 它的具体的设计如下:

    \[\mathcal{L}^D(\pi_{1\ldots K, \hat{\bm{y}}}) = - \sum_{r=1}^K w_r \cdot \log P(rel=1|\hat{y}_{\pi_r}) = - \sum_{r=1}^K w_r \cdot \log \sigma(\hat{y}_{\pi_r}). \]

  • 本文比较关键的部分就是关于 \(w_r\) 的设计, 显然不同的位置的重要性应该是不同的 (一般来说越前面的越重要).

  • 作者首先采用的是,

    \[w_r^a \propto e^{-r/\lambda}, \quad \lambda \in \mathbb{R}_+, \]

    该权重随着排名的下降而下降, 且可以通过超参数 \(\lambda\) 来控制下降的速率.

  • 上面的问题是这种方式是仅考虑教师而不考虑学生的权重计算方式. 打个比方, 比如对于 item \(d\), 学生和教师给它的排名是一致的, 那么其实它所对应的损失就不需要很大的权重 (因为已经足够好了).

  • 假设学生模型对于 item \(\pi_r\) 给出的排名是 \(\hat{r}_{\pi_r}\), 则另一种权重计算方式为:

    \[w_r^b = tanh(\max(\mu \cdot (\hat{r}_{\pi_r} - r), 0)) \in [0, 1], \]

    显然它只会对那些学生模型排名大于教师模型排名的 item 基于非零的权重.

  • 我们也可以将二者混合得到:

    \[w_r = (w_r^a \cdot w_r^b) / (\sum_{i=1}^K w_i^a \cdot w_i^b). \]

  • 注: 学生的排名是需要在线计算的, 这个就比较费时, 所以作者采用的是一种近似的算法:

代码

[official]

标签:Compact,Ranking,Recommender,bm,模型,mathcal,pi,hat
From: https://www.cnblogs.com/MTandHJ/p/17717303.html

相关文章

  • 【POJ 3275】Ranking the Cows 题解(传递闭包)
    农夫约翰的N头奶牛(1≤N≤1000)产奶率各不相同,FJ希望根据这些比率从最快的奶牛到最慢的奶牛订购奶牛。FJ已经比较了M(1≤M≤10000)对奶牛的产奶率。他想列出另外C对奶牛的列表,这样,如果他现在比较这些C对奶牛,他肯定能够推断出所有N头牛的正确顺序。请帮助他确定C的最小值,这样的列表是可......
  • 1141 PAT Ranking of Institutions(附测试点5分析)
    题目:AftereachPAT,thePATCenterwillannouncetherankingofinstitutionsbasedontheirstudents'performances.Nowyouareaskedtogeneratetheranklist.InputSpecification:Eachinputfilecontainsonetestcase.Foreachcase,thefirstline......
  • How Can Recommender Systems Benefit from Large Language Models: A Survey 阅读笔
    论文主要从LLM应用在推荐系统哪些部分以及LLM如何应用在推荐系统中,还讨论了目前LLM应用在RS中的一些问题。Where?推荐系统哪些部分哪里可以应用到大模型?文章中提到了特征工程、特征编码、评分/排序函数、推荐流程控制。LLMforFeatureEngineering用大模型做特征工程:利用......
  • compact:这是用于压缩文件和目录的Windows命令。它允许你在磁盘上节省空间,通过将文件和
    compact命令选项外,Windows操作系统中还有一些其他的compact命令选项,如下所示:compact/c:该选项用于强制压缩文件,即使它们已经被压缩过。它会覆盖现有的压缩设置。compact/i:此选项用于仅压缩文件中的空闲空间。它可以用于在磁盘上释放未使用的空间。compact/f:这个选项用于强制......
  • HBase-compact的作用、两种实现方式及区别
    在hbase中每当有memstore数据flush到磁盘之后,就形成一个storefile,当storeFile的数量达到一定程度后,就需要将storefile文件来进行compaction操作。Compact的作用:①合并文件②清除过期,多余版本的数据③提高读写数据的效率HBase中实现了两种compaction的方式:minorandmaj......
  • HBase Compaction 原理与线上调优实践
    作者:vivo互联网存储技术团队-HangZhengbo本文对HBaseCompaction的原理、流程以及限流的策略进行了详细的介绍,列举了几个线上进行调优的案例,最后对Compaction的相关参数进行了总结。一、Compaction介绍HBase是基于一种LSM-Tree(Log-StructuredMergeTree)体系架构的存储模......
  • European software vendors ranking 2012 (zz)
    Europeansoftwarevendorsranking2012//z2013-07-1214:08:[email protected][T62,L646,R24,V1099]欧洲最大100家软件企业公司一百强100强软件公司世界欧洲美国最大营业额利润排名RankCompanyPublic ?CountryofHQlocationSoftwarereven......
  • 论文解读《Automatically discovering and learning new visual categories with rank
    论文信息论文标题:Automaticallydiscoveringandlearningnewvisualcategorieswithrankingstatistics论文作者:K.Han, Sylvestre-AlviseRebuffi, SébastienEhrhardt, A.Vedaldi, AndrewZisserman论文来源:ICLR2020论文地址:download 论文代码:download视屏讲解:clic......
  • youtube点击位置纠偏论文:《Recommending What Video to Watch Next: A Multitask Rank
    背景在推荐系统存在两个难题:1.需要同时优化点击、观看时长、点赞、打分、评论等多个目标,如何同时建模多个目标2.存在positionbias,即同个视频放在不通位置上点击率等会不同,如何建模positionbiasyoutube这篇论文采用了MMOE来建模多目标,并用一个shallowtower来建模position......
  • P2617 Dynamic Rankings
    我以后再也不乱写字符了啊啊啊!动态区间第K小模板,树状数组维护修改哪些线段树。错误的原因:1、树状数组询问的时候x和y忘了套上root2、字符乱判,万紫千红3、离散化......