sgr-interview-300

第 45 题:SIM的搜索兴趣模型,Hard Search与Soft Search的联合训练?

题目

SIM的搜索兴趣模型,Hard Search与Soft Search的联合训练?


完整讲解

一、SIM:超长序列与两阶段检索

Search Interest Model (SIM) 面向超长行为序列(如数百到数千):若全部喂进 Transformer 或 RNN,计算与显存不可接受。SIM 采用两阶段:(1)检索阶段:从全序列中检索出与当前候选当前 query 最相关的一小段子序列(如百级);(2)建模阶段:只对检索到的子序列用复杂模型(如 Transformer)做兴趣建模。检索方式分为 Hard SearchSoft Search

Hard Search:用现成检索系统(如 ANN、倒排索引),以候选 item 的 ID/类目/标签等为 query,从用户历史中召回 Top-K 相关行为,得到的是离散的子序列。实现简单、可离线建索引,但不可微,无法端到端训练。

Soft Search:用可学习的相似度(如内积或小型网络)对历史每个行为打分,取 Top-K 或软性加权,得到子序列或加权序列。可微,可与主模型联合训练,但要对长序列逐条算分,计算量大,常配合采样或近似。

三、联合训练与工程折中

联合训练:主任务(如 CTR)的损失 + 检索/打分模块的辅助损失(如检索到的序列上的 next-item 预测)。Soft Search 的相似度网络可与主模型一起反向传播;Hard Search 的检索结果可视为固定,只训练主模型,或通过 RL/梯度估计近似对检索的梯度。实践中常用 Hard 离线检索 + Soft 精排:Hard 缩小候选序列,再在缩小的序列上用可微的 attention/Soft 做精细加权,兼顾效率与可学习性。


面试要点


记忆要点

返回模块 返回总览