《TWIN: TWo-stage Interest Network for Lifelong User Behavior Modeling in CTR Prediction at Kuaishou》
终身用户行为建模(life-long user behavior modeling),即从数月甚至数年的丰富历史行为中提取用户的隐藏兴趣(hidden interests),在现代 CTR prediction 系统中起着核心作用。传统算法大多遵循两个级联的阶段:
简单的通用搜索单元 (General Search Unit: GSU ),用于对数万个长期 behaviors 进行快速且粗略的搜索。
精确搜索单元 (Exact Search Unit: ESU ),用于对来自 GSU 的少数最终入围者进行有效的 Target Attention: TA 。
现有算法虽然高效,但大多存在一个关键限制:GSU 和 ESU 之间的 target-behavior 的相关性指标(relevance metrics )不一致。因此,这些算法的 GSU 通常会错过高度相关的 behaviors ,但会检索出被 ESU 认为不相关的 behaviors 。在这种情况下,无论如何分配注意力,ESU 中的 Target Attention 大多会偏离真正的用户兴趣,从而降低整体的 CTR prediction 的准确率。
为了解决这种不一致性,我们提出了两阶段兴趣网络(TWo-stage Interest Network: TWIN ),其中我们的 Consistency-Preserved GSU: CP-GSU 采用与 ESU 中的 Target Attention 相同的 target-behavior relevance metric ,使两个阶段成为孪生。具体来说,为了突破 Target Attention 的计算瓶颈并将其从 ESU 扩展到 GSU ,即将 behavior 长度从 behavior feature splitting 构建了一种新颖的注意力机制。对于 behavior 的视频固有特征,我们通过高效的 pre-computing & caching 策略来计算它们的线性投影。对于 user-item 交叉特征,我们在注意得分计算中将每个特征压缩为一维的 bias 项从而节省计算成本。两个阶段之间的一致性,加上 CP-GSU 中有效的 Target Attention-based 相关性指标,有助于显著提高 CTR prediction 的性能。
在快手 46B 规模的真实生产数据集上的离线实验和在线 A/B test 表明,TWIN 的表现优于所有对比的 SOTA 算法。通过优化在线基础设施,我们降低了 99.3% 的计算瓶颈,这有助于 TWIN 在快手上的成功部署,服务于每天数亿活跃用户的主要流量。
作为中国最受欢迎的短视频分享应用(short video sharing apps)之一,快手高度依赖其强大的推荐系统 (recommendation system: RS )。每天,推荐系统帮助数亿活跃用户过滤掉数百万个不感兴趣的视频,找到他们感兴趣的视频,留下数百亿条点击日志。这些海量数据不仅为推荐系统的训练提供了数据,还推动了技术革命,不断提升该平台的用户体验和业务效率。
在现代推荐系统中,一项基本任务是 CTR prediction ,旨在预测用户点击某个 item / video 的概率。准确的 CTR prediction 指导推荐系统为每个用户提供他们最喜欢的内容,并将每个视频传递给其感兴趣的受众。为了实现这一点,CTR 模型应该高度个性化,并充分利用稀缺的用户信息。因此,终身用户行为建模(life-long user behavior modeling),即从丰富的长期历史行为中提取用户的隐藏兴趣(hidden interests ),通常是 CTR 模型的关键组成部分。
工业级的 life-long behavior modeling 算法大多遵循两个级联的阶段(《Search-based user interest modeling with lifelong sequential behavior data for click-through rate prediction》):
(1):一个通用搜索单元 (General Search Unit: GSU )对数万个长期 behaviors 进行快速且粗略的搜索,并输出少量的 most target-relevant 的行为;
(2) :一个精确搜索单元 (Exact Search Unit: ESU)对来自 GSU 的少数最终入围者进行有效的 Target Attention: TA 。
这种两阶段设计背后的原因有两个方面:
一方面,为了精确捕获用户兴趣,Target Attention 是强调 target-relevant behaviors 和抑制 target-irrelevant behaviors 的适当选择。
另一方面,Target Attention 昂贵的计算成本将其适用的序列长度限制为最多几百。为此,一个简单快速的 GSU 作为 pre-filter 至关重要从而用于截断工业规模的用户行为序列,因为这些序列在短短几个月内很容易达到
近年来,出现了许多关于两阶段 life-long behavior modeling 的新兴研究,而它们的关键区别在于 GSU 策略,其中 GSU 策略粗略地选择 target-relevant behaviors 。例如:
SIM Hard 简单地从与 target item 相同的 category 中选择 behaviors ;而 SIM Soft 通过内积从 pre-trained item embeddings 中计算 target-behavior relevance score,并选择相关性最高的 behaviors 。
ETA 使用局部敏感哈希(locality-sensitive hashing: LSH )和汉明距离来近似 relevance score 的计算。
SDIM 通过多轮哈希碰撞(multi-round hash collision )等方法对具有与 target-behavior 相同哈希签名(hash signature )的 behaviors 进行采样。
尽管已被广泛研究,但现有的两阶段 life-long behavior modeling 算法仍然存在一个关键限制:GSU 和 ESU 之间的不一致(如 Figure 1 所示)。具体来说,GSU 中使用的 target-behavior relevance metric 既粗略又与 ESU 中使用的 Target Attention 不一致。因此,GSU 可能会错过 relevant behaviors ,而且可能会检索 ESU 认为不相关的 behaviors 从而浪费 ESU 宝贵的计算资源。在这种情况下,无论如何分配注意力,ESU 中的 Target Attention 会很大地偏离真实的用户兴趣,从而降低整体 CTR prediction 的准确率。

为了解决这种不一致(inconsistency ),我们提出了两阶段兴趣网络( TWo-stage Interest Network: TWIN )从而用于 lifelong user behavior modeling ,其中 Consistency-Preserved GSU: CP-GSU 采用与 ESU 中的 Target Attention 相同的target-behavior relevance metric,使两个阶段成为孪生(twins )。为了将昂贵的 Target Attention 扩展到 CP-GSU ,TWIN 通过有效的 behavior feature split 、简化的 Target Attention 架构、以及高度优化的在线基础设施,突破了 Target Attention 的关键计算瓶颈,即所有 behaviors 的线性投影。
1):具体来说,对于跨 users / behavior sequences 共享的 video inherent features of a behavior (例如 video id, author, duration, topic),我们通过高效的 pre-computing & caching 策略加速它们的投影。
2):对于 behavior 的 user-video 交叉特征(例如用户的 click timestamp, play time, rating ),当 caching 不适用时,我们通过将它们的投影压缩为 bias 项来简化 Target Attention 架构。
通过优化后的在线基础设施,我们成功地将Target Attention 的适用序列长度从 ESU 中的 CP-GSU 中的 CP-GSU 中的 Target Attention-based relevance metric,有助于显著提高 CTR prediction 的性能。
总体而言,我们做出了以下贡献:
在我们提出的 TWIN 中,CP-GSU 精确且一致地检索不仅 target-relevant 而且被 ESU 认为重要的 behaviors ,从而最大限度地提高了 behavior modeling 的 retrieval 效果。据我们所知,我们是第一个成功解决两阶 life-long behavior modeling 问题中不一致性的人。
我们通过对快手 46B 规模的工业级数据集进行大量的离线实验,以及在线 A/B test ,从而验证 TWIN 的有效性。我们通过消融研究验证了我们的有效性,并表明 TWIN 带来了显著的 online benefits 。
我们构建了高效的工业级的基础设施,将 TWIN 应用于真实的在线推荐系统。我们提出了有效的 pre-computing & caching 策略,将 TWIN 的计算瓶颈(即 CP-GSU 中 linear projection of behaviors )减少了 99.3% ,并满足了 online serving system 的低延迟要求。目前 TWIN 已经部署在快手的推荐系统上,服务于每日 3.46 亿活跃用户的主要流量。
在本文中,我们建议将 Target Attention 结构扩展到 GSU ,并将 embeddings and attention parameters 从 ESU 同步到 GSU ,从而保持端到端训练。结果,我们同时实现了网络结构和模型参数的一致性,与 ETA 和 SDIM 相比,这有助于显著提高性能。我们在 Table 1 中详细说明了我们的模型与其他模型的不同之处。
ESU和GSU的网络结构和网络参数完全相同,所以称之为 “孪生”。
请注意,我们的工作不同于旨在加速 Transformer 的 indexing 算法(例如 LISA)。它们通过将 behaviors 映射到 codebooks 并查找距离来近似 relevance score 的计算。然而我们的工作以及许多其他两阶段算法都使用精确的距离计算,但使用 GSU 作为pre-filter 从而减少了 behaviors 的数量。
TWIN算法的核心是对attention score计算中最耗时的linear projection进行优化。但是这种优化仅适用于inference阶段,而不适用于training阶段。论文创新点一般,对算法层面优化较少,更多地是工程优化。

首先,我们回顾了 CTR prediction 问题的一般基础知识。然后,我们描述了快手 CTR prediction 系统的模型架构。接着,我们进一步深入探讨了我们提出的 consistency-preserved lifelong user behavior modeling module,即 TWo-stage Interest Network: TWIN 。最后,我们介绍了确保 TWIN 在快手主流量上成功在线部署的基本 accelerating 的策略。
Table 2 总结了所使用的符号。

CTR prediction 的目的是预测用户在特定上下文中点击一个 item 的概率。准确的 CTR prediction 不仅可以通过提供 preferred contents 来提升用户体验,还可以通过触达 interested audiences 来提高内容生产者和平台的业务效率。因此,CTR prediction 已成为各种工业级推荐系统(尤其是快手等短视频推荐平台)的核心部分。
CTR prediction 通常被表述为一个二分类问题,其目标是在给定训练数据集 predictor 函数 feature vector (即 user, item and contexts features 的拼接);ground truth label ,表示用户是否点击该 item 。predicted CTR 计算如下:
其中:sigmoid 函数,它将 prediction (0, 1) 之间。
模型通过最小化 negative log-likelihood 来训练:
为简洁起见,我们在以下章节中省略了训练样本索引
现在我们来介绍快手的 CTR prediction 系统的架构。详细信息如 Figure 2 所示。
下图中,
ESU和CP-GSU的网络结构和网络参数一模一样,那为什么弄两个一模一样的东西?是否可以移除掉ESU?根据论文的解释:在
ESU的MHTA: multi-head target attention中,对于使用原始的线性投影而不做拆分从而用于加权聚合。如果只有 CP-GSU,那么包含所有行为的 embedding,这个投影的代价非常高。那么:
是否可以仅仅使用
CP-GSU,然后仅仅选择top-k来做线性投影从而用于加权聚合?或者,在
ESU中使用不同的网络参数,即,使用原始的线性投影而不做拆分,从而计算attention score?

Embedding Layer : 在最底层,我们的模型从 feature embedding layer 开始,该层将训练样本的原始特征转换为 embedding vectors 。
在不失一般性的情况下,我们假设所有特征在经过必要的预处理后都处于 categorical 的形式。对于 vocabulary size 为 categorical information 编码为 one-hot / multi-hot code
请注意,在大多数工业级系统中,vocabulary size (尤其是 user / author / video ids 的 vocabulary size )可以轻松扩展到数亿。因此,一种常见的策略是将极高维的 hot codes 转换为低维 embeddings :
其中:embedding dictionary ,embedding 维度。在我们的系统中,我们将 vocabulary 大的 id 特征的 embedding 维度设置为 64 ,将其他特征(如 video topic, video played timestamp )的 embedding 维度设置为 8 。
在所有 upper layers 中,我们将 embedding vectors 作为输入,因此为了简洁起见省略了下标 “emb” 。
Deep Networks:我们的 CTR prediction 的总体架构如 Figure 2 所示。upper module 由堆叠的神经网络和 ReLU 组成,充当mixer ,用于学习三个 intermediate modules 的输出之间的交互:
TWIN :所提出的 consistency-preserved life-long user behavior modeling 模块,通过两个 cascading stages 的 behavior modeling 子模块提取用户兴趣:
1) :Consistency-Preserved General Search Unit: CP-GSU ,从数万个长期历史行为中粗略搜索 100 个最相关的行为。
2) :Exact Search Unit: ESU ,采用注意力机制对 CP-GSU 的 100 个最终入围者来捕获精确的用户兴趣。
传统算法通常由“轻量级”的 GSU 和“重量级”的 ESU 组成。与传统算法不同,我们提出的 CP-GSU 遵循与 ESU 相同的 relevance evaluation metric,使两个 cascading stages 成为 TWINS 。因此,CP-GSU 始终检索出来 ESU 认为重要的 items ,从而最大限度地提高 behavior modeling 的有效性。
Short-term behavior modeling :从最近的 50 个 behaviors 中提取用户兴趣。该模块关注用户最近几天的短期兴趣,是 TWIN 的有力补充。
其他任务建模:除了 behavior modeling 之外,我们还拼接了各种其他任务建模的输出,这些任务建模可以建模用户的性别、年龄、职业、位置、视频时长、主题、受欢迎程度、质量和上下文特征,上下文特征包括播放日期、时间戳、页面位置等。
我们将提出的算法命名为 TWIN ,以强调 CP-GSU 遵循与ESU 相同的 relevance evaluation metric 。请注意,这种一致性并非微不足道,因为:
有效的 behavior modeling 算法通常基于多头目标注意力 (Multi-Head Target Attention: MHTA ) ,它通过强调 target relevant behaviors 来精确地捕获用户兴趣。不幸的是,由于计算复杂度高,MHTA 适用的 behavior sequence 长度大多仅限于几百。
为了详尽地捕获用户的长期兴趣,CP-GSU 应该涵盖过去几个月的 user behaviors ,这些 user behaviors 很容易达到数万。考虑到在线系统严格的低延迟要求,这个序列长度远远超出了传统 MHTA 的容量。
本节旨在回答这个关键问题:如何提高 MHTA 的效率,以便我们可以将其从 ESU 扩展到 CP-GSU?或者换句话讲,从数百的序列长度扩展到至少数万的序列长度?
Behavior Feature Splits and Linear Projection:按照 MHTA 的标准符号,我们将长度为 behavior sequence behavior 的特征。在实践中,MHTA 的注意力得分计算中,MHTA 在极长 user behavior sequences 上应用的关键计算瓶颈。因此,我们提出以下措施来降低其复杂性。
我们首先将 behavior features matrix
我们将 behavior items 的固有特征(例如 video id, author, topic, duration ),这些特征与特定的 user / behavior sequence 无关。
我们将 user-item 交叉特征(例如 user click timestamp, user play time, clicked page position, user-video interactions)。
这种分割可以高效计算接下来的线性投影
对于固有特征 id 特征为 64 ,field 数量),但线性投影实际上并不昂贵。特定 item 的固有特征在 users / behavior sequences 之间共享。通过必要的缓存策略,look up and gathering 过程有效地“计算”。在线部署的细节将在接下来章节中介绍。
但是,训练的时候没有
caching,因此会非常消耗资源。然而,训练的时候没有inference latency的限制,可以堆显卡来解决。
对于 user-item 交叉特征
1):交叉特征描述 a user and a video 之间的交互细节,因此不会跨 users behavior sequences 来共享。
2):对于一个视频,每个用户最多观看一次。也就是说,在投影 cross features 时没有重复计算。因此,我们通过简化 linear projection weight 来降低计算成本。
给定 embedding 维度为 vocabulary size 的 id 特征)。我们有 linear projection 简化如下:
其中:
使用这个简化的投影,我们将每个 cross feature 压缩到一个维度,即 diagonal block matrix )。
复杂度分析:在传统的 MHTA 中,
通常
。
而在我们对 TWIN 的 MHTA 中:
item 固有特征 pre-computed 并有效地 gathered ,复杂度为
在训练阶段是没有
pre-computed的的,因此在训练阶段的复杂度还是很高。
而 user-item 交叉特征
由于 MHTA 能够在 CP-GSU 和 ESU 中一致地实施。
这里仅仅优化了线性投影的计算复杂度,但是没有优化
attention的计算复杂度。attention的计算复杂度为:,这比线性投影低得多。而原始算法中, attention的计算复杂度为。
Target Attention in TWIN:基于 linear projection of behaviors CP-GSU 和 ESU 中统一使用的 target-behavior relevance metric 。
不失一般性,我们假设用户和 target item 之间没有交互,并将 target item 的固有特征记作 target item 与历史行为之间的 relevance score
其中:projected query and key 的维度。
注意,这里
bias项的计算与无关。是否可以考虑引入 ?
这个 relevance score 由 query (即 target 的固有特征)与 key (即 behaviors 的固有特征)之间的内积计算得出。此外,由于交叉特征被压缩为 1 维,因此可用作 bias 项。我们使用
在 CP-GSU 中,这个 relevance score 100 个最相关的 behaviors 。而在 ESU 中,我们对 100 个最终入围者执行加权平均池化:
其中:
我们通过设置 100 个 behaviors 执行,因此可以在线高效进行。我们不需要像为 behaviors 计算
注意:在
ESU中,仍然使用了Behavior Feature Splits and Linear Projection策略从而计算注意力权重。但是,对于,这里不进行拆分。
为了共同关注来自不同 representation 子空间的信息,我们在 MHTA 中采用 4 个头。因此,TWIN 的 final output 定义为:
其中 head 之间相对重要性。
我们在快手的 ranking system 上部署了 TWIN ,服务于 3.46 亿日活用户的主要流量。在本节中,我们介绍我们在部署中的实际经验。我们的系统架构细节如 Figure 3 所示。

训练系统:我们的 TWIN 模块与整个 CTR prediction 模型在快手的 large-scale distributed nearline learning system 上进行联合训练。
每天,有数亿用户访问快手,观看短视频以及与短视频互动,每天留下 46B 条观看和互动日志。在 8 分钟时间内,每条日志都被实时收集、实时预处理并用于模型训练。该 nearline training system 使用 8 分钟内发生的 user-video 互动中的最新知识增量地更新模型参数。
Figure 3里给出的是46 million/day,但是正文部分说的是46 billion/day。
此外,我们的 message queue system 每 5 分钟一次将最新的参数值从 training system 持续同步到离线推理系统和在线服务系统。这种同步确保了 online CTR prediction service 始终基于最新模型。
离线推理:offline inferring system 旨在通过提供 lookup service 来加速 online serving 。当接收到 lookup keys (即,一个 batch 的 video ids )时,此 service 将返回 lookup values ,即相应的 projected inherent features 的拼接形式(即,所有 heads offline inferring system 由两部分组成:
1):一个 inherent feature projector ,使用从 training system 同步的最新 embeddings 和 TWIN 参数 linear projection of inherent features。通过适当的频率控制,该 projector 可以每 15 分钟刷新一次 8B 规模的 candidate video pool 的 projected inherent features ,从而最大限度地减少 caching 造成的准确率损失。
2):一个 embedding server ,将 inherent feature projector 的结果存储到 key-value 结构中,并提供上述 key lookup service。通过截断尾部视频,8B keys 可以覆盖 97% 的 online request ,平衡了效率和效果。
Online Serving:一旦收到一个 request ,online serving system 就会向 offline inferring system 查询从而得到 projected inherent features user-item relevance score 100 个 behaviors ,并将这 100 个 behaviors 输入到 ESU 。这种设计在实践中将 TWIN 的计算瓶颈(即 99.3% 。
请注意,只有 100 behaviors 的 ESU 足够轻量,可以使用从 training system 同步的最新参数来实时进行所有计算。因此,ESU 计算出的 CP-GSU 中的略微更新,这进一步提升了我们的 Target Attention 机制的性能。
通过加速设计,TWIN 成功部署在快手的 ranking system 上,服务于 3.46 亿活跃用户的主要流量,峰值请求为每秒 30M 个视频。
在本节中,我们详细介绍了在真实工业数据上进行的离线和在线实验,以评估我们提出的方法,目的是回答以下五个研究问题(research question: RQ )。
RQ1 :与 lifelong user behavior modeling 中的其他 SOTA 相比,TWIN 在离线评估中的表现如何?
RQ2 :与其他 SOTA 相比,TWIN能实现多大的一致性?或者说,为什么 TWIN有效?
RQ3:随着用户行为序列长度的增长,TWIN 的有效性如何变化?
RQ4:所提方法中的关键组件、以及不同实现方式的效果如何?
RQ5 :TWIN 在实际在线推荐系统中的表现如何?
数据集:为了在现实情况下评估 TWIN 在 lifelong user behavior modeling 中的作用,我们需要一个大型的 CTR prediction 数据集,该数据集应具有丰富的用户历史 behaviors ,理想情况下可以 scale up 到每个用户数万个 behaviors 。不幸的是,现有的公共数据集要么相对较小,要么缺乏足够的用户历史 behaviors 。例如,在广泛使用的 Amazon 数据集中,每个用户平均只有不到 10 个历史行为。在 Taobao 数据集中,用户行为的平均序列长度最多为 500 。因此,我们从快手(中国顶级短视频分享平台之一)收集了一个工业数据集。
我们从每日用户日志中构建样本,以用户的点击作为标签。如 Table 3 所示,快手的每日活跃用户规模约为 3.46 亿。每天发布 45M 条短视频,这些视频总共播放了 46B 次。平均而言,每位用户每天观看 133.7 个短视频。为了利用丰富的 behavior 信息,我们从数月前的旧日志中收集完整的用户历史行为。平均而言,每位用户在过去六个月内观看了 14,500 个视频,这为模型提供了一个试验台,这个试验台包含了可供学习的丰富的用户历史行为。我们将最大用户行为序列长度限制为 100,000 ,这大约是重度用户一年的总观看次数。

baselines:为了证明有效性,我们将 TWIN 与以下 SOTA 的 lifelong user behaviors modeling 算法进行了比较。
Avg-Pooling :user lifelong behaviors 的均值池化。
DIN :最广泛采用的 short-term behavior modeling 方法,它使用 Target Attention 从而用于 target-specific interests 。
SIM Hard :GSU 从与 target item 相同的 category 中选择 behaviors ,ESU 遵循 DIN 中的 Target Attention 。在我们的场景中,video categories 总数为 37 。
ETA :局部敏感哈希 (Locality-sensitive hash : LSH ) 用于为 target video and behaviors 生成哈希签名(hash signature )。然后 GSU 使用汉明距离作为 target-behavior relevance metric 。
SDIM :GSU 通过多轮哈希碰撞(multi-round hash collision )选择具有与 target video 相同哈希签名的 behaviors 。在原始论文中,ESU 线性聚合了multi-round hash collision 所采样到的 behaviors 从而获得用户兴趣。在我们的实验中,为了公平比较,ESU 采用了更强大的 Target Attention 。
SIM Cluster :由于 “category” 需要昂贵的人工标注,并且在短视频场景中通常不可靠,因此我们实现了 SIM Cluster 作为 SIM Hard 的改进版本。我们根据 pre-trained embeddings 将视频分组为 1,000 clusters 。GSU 从与 target item 相同的 clusters 中检索 behaviors 。
SIM Cluster+ :是 SIM Cluster 的改进版,其中 clusters 数量从 1,000 个扩展到 10,000 个。
SIM Soft :GSU 使用视频的 pre-trained embeddings 的内积得分来检索 relevant behaviors 。内积是一种比汉明距离和哈希碰撞更精细的检索方法,但计算成本更高。
综上所述:
ETA 和 SDIM 采用端到端训练方法,但使用粗略的检索方法以避免高复杂度的计算。
SIM Cluster、SIM Cluster + 、以及 SIM Soft 采用精细的检索方法,但代价是它们必须使用 pre-trained embeddings 并提前生成离线倒排索引(offline inverted index )。
请注意,SIM Soft 尚未被后续工作 ETA 和 SDIM 击败。我们没有与 UBR4CTR 进行比较,因为它的迭代式训练(iterative training )不适合我们的流式场景(streaming scenario )。此外,UBR4CTR 被证实比 SIM Hard 和 ETA 的表现更差。
实验设置:
我们使用一天中连续 23 个小时的样本作为训练数据,并使用接下来一个小时的样本进行测试。我们连续 5 天评估所有算法并报告 5 天的平均性能。
相当于将算法重复
5次并报告平均性能。
对于离线评估,我们使用两个广泛采用的指标:AUC 和 GAUC 。
AUC 表示正样本得分高于负样本得分的概率,反映了模型的排序能力。
GAUC 对所有用户的 AUC 进行加权平均,权重设置为该用户的样本数。GAUC 消除了用户之间的 bias ,以更精细和公平的粒度评估模型性能。
为了公平比较,在所有算法中,除了 long-term behavior modeling 模块外,我们使用相同的网络结构,包括 embedding layers 、upper deep networks 、short-term behavior modeling 和 other task modelings 。
对于两阶段模型,我们使用最近的 10,000 behaviors 为作为 GSU 的输入,并在 ESU 中检索 100 behaviors 用于 Target Attention 。
对于 DIN ,我们使用最近的 100 behaviors ,因为它在处理长序列方面存在瓶颈。
虽然 TWIN 的 CP-GSU 在 attention score computation 中使用了四个 head ,但我们通过四个 head 递归遍历 top ranked items ,直到收集到 100 unique behaviors 。
为什么要做这种简化?会不会影响性能?
对于所有模型,embedding layer 都使用 AdaGrad 优化器,学习率为0.05 。DNN 参数由Adam 更新,学习率为 batch size 设置为 8192 。
Table 4 显示了所有模型的性能。请注意,由于我们的数据集中有大量的用户和样本,因此离线评估中 AUC 和 GAUC 的 0.05% 的改进足以为业务带来 online gains 。
首先,TWIN 的表现明显优于所有基线,尤其是具有不一致 GSU 的两阶段 SOTA 。这验证了 TWIN 在 life-long behavior modeling 中的关键优势,即 CP-GSU 中强大而一致的 Target Attention 。具体而言,CP-GSU 精确地检索出了ESU 认为高度相关的 behaviors ,为最重要的 user information 节省了 ESU 宝贵的计算资源。而在其它基线中,无效且不一致的 GSU 可能会错过重要 behaviors 并引入 noisy behaviors ,从而降低 Target Attention 的性能。
此外,从 Avg-pooling 到 DIN 的增益显示了 Target Attention 在检索有效信息方面的能力。其他两阶段 SOTA 相对于DIN 的增益验证了 modeling long behaviors 的必要性。这两者共同支持了我们的动机:将 Target Attention 扩展到长序列。
其次,仅有端到端训练是不够的。我们观察到 TWIN 明显优于 ETA 和 SDIM,而这两个强大的基线在 GSU 中的 embeddings 也以端到端的方式进行训练。具体来说,ETA 使用 LSH 和汉明距离,而 SDIM 使用多轮哈希碰撞。与 Target Attention 相比,这两种 GSU 策略都不太精确,并且与它们在 ESU 中使用的 target-behavior relevance metric 不一致。而 TWIN 中的 CP-GSU 不仅是端到端训练的,而且与ESU中的 Target Attention 一致。这表明精确的relevance metric对GSU至关重要,验证了我们优于现有的端到端算法。
第三,以更细的粒度来建模 lifelong behaviors 是有效的。我们比较了 SIM 的变体:具有 37 categories 的 SIM Hard 、具有 1,000 / 10,000 clusters 的 SIM Cluster(+) 、以及针对每个 behavior 单独计算 target-behavior relevance score 的 SIM Soft 。
随着GSU中使用更细粒度的检索方法,我们观察到性能持续改进。这是因为当 GSU 能够更精细地捕获视频之间的 relevance score 时,它会更准确地检索 behaviors 。从这个角度来看,我们进一步将我们优于 SIM Soft 的原因归功于 TWIN 采用更准确的 relevance metric 。

正如所声称的,我们卓越的 behavior modeling 能力来自 CP-GSU 和 ESU 中一致的 relevance metrics 。但我们真正实现了多大的一致性(Figure 4 )?
对于每个 well-trained 的两阶段模型,我们重用其 ESU 的参数作为其 Oracle ,从而从 10,000 behaviors 中检索 “the real top-100”。换句话说,这些 real top-100 是 ESU 认为真正重要的 ground-truth 。然后,对于所有被比较算法,我们遍历 GSU output size ,从 outputs 命中 real top-100 。请注意,每个被比较算法都有自己的 Oracle 和 top-100 。但我们只绘制一条 Oracle 曲线,因为所有 Oracles 都完美地击中了 ground truth 。
SIM Soft 得益于 GSU 中更精确的 retrieval 策略,在 retrieval consistency 方面有所改进。
此外,TWIN 在返回 100 behaviors 时实现了 94 次命中,这验证了我们在保持两个阶段之间的一致性方面的优势。请注意,这是最值得注意的 value ,因为考虑到推理时间、以及 Target Attention 计算复杂度的限制,100 是 ESU input 的上限。由于 caching 中的刷新延迟(refresh delay ),我们在实践中没有达到理论上的 100% 的一致性,如正文章节所述。
基于以上结果,我们推测 CP-GSU 比传统 GSU 具有更强的 match user interests with the target video 的能力。这归因于一致性。通过与 ESU 共享相同的结构和参数,CP-GSU 能够准确判断和检索具有相似内容的 videos 。此外,由于 CP-GSU 参数是实时更新的,该模型可以捕获用户的动态变化的兴趣。

我们旨在测试 TWIN 在不同 behavior sequence 长度下的有效性,并进一步挖掘 TWIN 的潜力。请注意,仅更改了 GSU 的输入序列长度,输出长度保持为 100 。结果如 Figure 5 所示。
我们观察到:
1):TWIN 始终表现最佳,
2) :随着序列长度的增加,TWIN 与其他方法之间的性能差距越来越大。这表明 TWIN 在建模极长序列方面具有更好的效果。

我们通过对 TWIN 应用不同的操作来进行消融研究,以评估我们的关键模型设计的贡献:1) 两个阶段之间的一致性; 2) 高效的 MHTA 。
TWIN 在两个方面保持了两个阶段之间的一致性:网络结构和参数。为了研究每个方面带来的好处,我们实现了一个名为 TWIN w/o Para-Con 的变体,它不保留参数一致性。具体来说,我们首先训练一个辅助模型 TWIN-aux ,它使用与 TWIN 相同的网络结构和训练数据,但单独进行训练。然后,我们将 GSU 参数从 TWIN-aux 同步到 TWIN w/o Para-Con。这是为了确保 TWIN w/o Para-Con 仍然实时被更新,并且 TWIN 和 TWIN w/o Para-Con 之间的差距都是由参数不一致造成的。
如 Figure 6 (left) 所示,TWIN w/o Para-Con 的表现明显优于 SIM Soft (结构和参数都不一致),但略逊于 TWIN 。这表明网络结构一致性和参数一致性都有好处,但网络结构一致性的贡献更大。
这个配置有点奇怪,为什么不训练这样的模型:
CP-GSU和ESU采用相同的网络结构,但是不共享网络参数,然后训练?这个实验不太靠谱。

为了高效地计算 MHTA 从而用于工业级部署,我们拆分 user behavior features ,并将每个 user-item cross feature 压缩为一维 bias 项。为了研究这种修改的影响以及在注意力计算中保留 user-item cross features 的好处,我们实现了两个变体并比较了它们的性能和推理时间:
具有原始 MHTA 的TWIN ,其中使用直接的线性投影 feature split 。缩写为 TWIN w/ Raw MHTA 。
MHTA 中不使用 user-item cross features 的 TWIN ,缩写为 TWIN w/o Bias 。
如 Figure 6 (right) 所示,TWIN 明显优于 TWIN w/o Bias ,并且性能几乎与 TWIN w/Raw MHTA 相同,验证了我们对 MHTA 提出的修改几乎不会影响性能。至于计算成本,由于当 user-item cross features 用于 caching 不适用于 TWIN w/ Raw MHTA (详见正文章节),因此 TWIN w/ Raw MHTA 的推理时间显著增加。相反,删除 user-item cross features (TWIN w/o Bias )不会节省太多计算量,但会损害性能。
为了评估 TWIN 的在线性能,我们在快手的短视频推荐平台上进行了严格的在线 A/B test 。Table 5 比较了快手三个代表性业务场景(Featured-Video Tab, Discovery Tab, and Slide Tab )下 TWIN 与 SIM Hard 和 SIM Soft 的性能。与电商常用的线上评价指标 CTR 和 GMV 不同,短视频推荐场景通常使用观看时长(Watch Time ),衡量用户观看视频的总时长。
如表所示,TWIN 在所有场景中的表现都明显优于 SIM Hard 和 SIM Soft 。在快手上,观看时长增加 0.1% 被认为是一个有效的改进,TWIN 实现了显著的商业收益。
