一、TWIN [2023]

《TWIN: TWo-stage Interest Network for Lifelong User Behavior Modeling in CTR Prediction at Kuaishou》

  1. 终身用户行为建模(life-long user behavior modeling),即从数月甚至数年的丰富历史行为中提取用户的隐藏兴趣(hidden interests),在现代 CTR prediction 系统中起着核心作用。传统算法大多遵循两个级联的阶段:

    • 简单的通用搜索单元 (General Search Unit: GSU ),用于对数万个长期 behaviors 进行快速且粗略的搜索。

    • 精确搜索单元 (Exact Search Unit: ESU ),用于对来自 GSU 的少数最终入围者进行有效的 Target Attention: TA

    现有算法虽然高效,但大多存在一个关键限制:GSUESU 之间的 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 长度从 102 扩展到长度 104105 ,我们通过 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 在快手上的成功部署,服务于每天数亿活跃用户的主要流量。

  2. 作为中国最受欢迎的短视频分享应用(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 至关重要从而用于截断工业规模的用户行为序列,因为这些序列在短短几个月内很容易达到 104105

    近年来,出现了许多关于两阶段 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 算法仍然存在一个关键限制:GSUESU 之间的不一致(如 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-GSUTWIN 通过有效的 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):对于 behavioruser-video 交叉特征(例如用户的 click timestamp, play time, rating ),当 caching 不适用时,我们通过将它们的投影压缩为 bias 项来简化 Target Attention 架构。

    通过优化后的在线基础设施,我们成功地将Target Attention 的适用序列长度从 ESU 中的 102 扩展到 CP-GSU 中的 104105 。两个阶段之间的一致性,加上 CP-GSU 中的 Target Attention-based relevance metric,有助于显著提高 CTR prediction 的性能。

    总体而言,我们做出了以下贡献:

    • 在我们提出的 TWIN 中,CP-GSU 精确且一致地检索不仅 target-relevant 而且被 ESU 认为重要的 behaviors ,从而最大限度地提高了 behavior modelingretrieval 效果。据我们所知,我们是第一个成功解决两阶 life-long behavior modeling 问题中不一致性的人。

    • 我们通过对快手 46B 规模的工业级数据集进行大量的离线实验,以及在线 A/B test ,从而验证 TWIN 的有效性。我们通过消融研究验证了我们的有效性,并表明 TWIN 带来了显著的 online benefits

    • 我们构建了高效的工业级的基础设施,将 TWIN 应用于真实的在线推荐系统。我们提出了有效的 pre-computing & caching 策略,将 TWIN 的计算瓶颈(即 CP-GSUlinear projection of behaviors )减少了 99.3% ,并满足了 online serving system 的低延迟要求。目前 TWIN 已经部署在快手的推荐系统上,服务于每日 3.46 亿活跃用户的主要流量。

  3. 在本文中,我们建议将 Target Attention 结构扩展到 GSU ,并将 embeddings and attention parametersESU 同步到 GSU ,从而保持端到端训练。结果,我们同时实现了网络结构和模型参数的一致性,与 ETASDIM 相比,这有助于显著提高性能。我们在 Table 1 中详细说明了我们的模型与其他模型的不同之处。

    ESUGSU 的网络结构和网络参数完全相同,所以称之为 “孪生”。

    请注意,我们的工作不同于旨在加速 Transformerindexing 算法(例如 LISA)。它们通过将 behaviors 映射到 codebooks 并查找距离来近似 relevance score 的计算。然而我们的工作以及许多其他两阶段算法都使用精确的距离计算,但使用 GSU 作为pre-filter 从而减少了 behaviors 的数量。

    TWIN 算法的核心是对 attention score 计算中最耗时的 linear projection 进行优化。但是这种优化仅适用于 inference 阶段,而不适用于 training 阶段。

    论文创新点一般,对算法层面优化较少,更多地是工程优化。

1.1 TWIN

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

    Table 2 总结了所使用的符号。

1.1.1 基础知识

  1. CTR prediction 的目的是预测用户在特定上下文中点击一个 item 的概率。准确的 CTR prediction 不仅可以通过提供 preferred contents 来提升用户体验,还可以通过触达 interested audiences 来提高内容生产者和平台的业务效率。因此,CTR prediction 已成为各种工业级推荐系统(尤其是快手等短视频推荐平台)的核心部分。

    CTR prediction 通常被表述为一个二分类问题,其目标是在给定训练数据集 D={(x1,y1),,(x|D|,y|D|)} 的情况下学习一个 predictor 函数 f:RdR。具体而言,xiRd 是第 i 个训练样本的 feature vector (即 user, item and contexts features 的拼接);yi{0,1}ground truth label ,表示用户是否点击该 itempredicted CTR 计算如下:

    y^i=σ(f(xi))

    其中:σ()sigmoid 函数,它将 prediction f 缩放到 (0, 1) 之间。

    模型通过最小化 negative log-likelihood 来训练:

    (D)=1|D|i=1|D|[yilog(y^i)+(1yi)log(1y^i)]

    为简洁起见,我们在以下章节中省略了训练样本索引 i ,从而免造成混淆。

1.1.2 CTR Prediction 的架构

  1. 现在我们来介绍快手的 CTR prediction 系统的架构。详细信息如 Figure 2 所示。

    下图中, ESUCP-GSU 的网络结构和网络参数一模一样,那为什么弄两个一模一样的东西?是否可以移除掉 ESU

    根据论文的解释:在 ESUMHTA: multi-head target attention 中,对于 KWv 使用原始的线性投影而不做拆分从而用于加权聚合。如果只有 CP-GSU,那么 K 包含所有行为的 embedding,这个投影的代价非常高。

    那么:

    • 是否可以仅仅使用 CP-GSU,然后仅仅选择 top-k 来做线性投影从而用于加权聚合?

    • 或者,在 ESU 中使用不同的网络参数,即,使用原始的线性投影而不做拆分,从而计算 attention score

  2. Embedding Layer : 在最底层,我们的模型从 feature embedding layer 开始,该层将训练样本的原始特征转换为 embedding vectors

    在不失一般性的情况下,我们假设所有特征在经过必要的预处理后都处于 categorical 的形式。对于 vocabulary sizevA 的特征 A ,我们首先将 categorical information 编码为 one-hot / multi-hot code xA,hot{0,1}vA。例如,

    WeekDay = MonxWeekDay,hot=[1,0,0,0,0,0,0]Topic = Funny, PetxTopic,hot=[,0,1,0,,0,1,0,]

    请注意,在大多数工业级系统中,vocabulary size (尤其是 user / author / video idsvocabulary size )可以轻松扩展到数亿。因此,一种常见的策略是将极高维的 hot codes 转换为低维 embeddings

    xA,emb=EAxA,hot

    其中:EARdA×vA 是特征 Aembedding dictionarydAembedding 维度。在我们的系统中,我们将 vocabulary 大的 id 特征的 embedding 维度设置为 64 ,将其他特征(如 video topic, video played timestamp )的 embedding 维度设置为 8 在所有 upper layers 中,我们将 embedding vectors 作为输入,因此为了简洁起见省略了下标 “emb”

  3. Deep Networks:我们的 CTR prediction 的总体架构如 Figure 2 所示。upper module 由堆叠的神经网络和 ReLU 组成,充当mixer ,用于学习三个 intermediate modules 的输出之间的交互:

    • TWIN :所提出的 consistency-preserved life-long user behavior modeling 模块,通过两个 cascading stagesbehavior modeling 子模块提取用户兴趣:

      • 1)Consistency-Preserved General Search Unit: CP-GSU ,从数万个长期历史行为中粗略搜索 100 个最相关的行为。

      • 2)Exact Search Unit: ESU ,采用注意力机制对 CP-GSU100 个最终入围者来捕获精确的用户兴趣。

      传统算法通常由“轻量级”的 GSU 和“重量级”的 ESU 组成。与传统算法不同,我们提出的 CP-GSU 遵循与 ESU 相同的 relevance evaluation metric,使两个 cascading stages 成为 TWINS 。因此,CP-GSU 始终检索出来 ESU 认为重要的 items ,从而最大限度地提高 behavior modeling 的有效性。

    • Short-term behavior modeling :从最近的 50behaviors 中提取用户兴趣。该模块关注用户最近几天的短期兴趣,是 TWIN 的有力补充。

    • 其他任务建模:除了 behavior modeling 之外,我们还拼接了各种其他任务建模的输出,这些任务建模可以建模用户的性别、年龄、职业、位置、视频时长、主题、受欢迎程度、质量和上下文特征,上下文特征包括播放日期、时间戳、页面位置等。

1.1.3 TWIN: TWo-stage Interest Network

  1. 我们将提出的算法命名为 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?或者换句话讲,从数百的序列长度扩展到至少数万的序列长度?

  2. Behavior Feature Splits and Linear Projection:按照 MHTA 的标准符号,我们将长度为 Lbehavior sequence [s1,s2,,sL] 的特征定义为矩阵 K ,其中每行表示一个 behavior 的特征。在实践中,MHTA 的注意力得分计算中,K 的线性投影是阻碍 MHTA 在极长 user behavior sequences 上应用的关键计算瓶颈。因此,我们提出以下措施来降低其复杂性。

    我们首先将 behavior features matrix K 分成两部分:

    K[KhKc]RL×(H+C)
    • 我们将 KhRL×H 定义为 behavior items 的固有特征(例如 video id, author, topic, duration ),这些特征与特定的 user / behavior sequence 无关。

    • 我们将 KcRL×C 定义为 user-item 交叉特征(例如 user click timestamp, user play time, clicked page position, user-video interactions)。

    这种分割可以高效计算接下来的线性投影 KhWhKcWc,其中 WhRH×H,WcRC×C

    • 对于固有特征 Kh,虽然维度 H 很大(每个 id 特征为 64H=64FF 为固有特征的个数,即 field 数量),但线性投影实际上并不昂贵。特定 item 的固有特征在 users / behavior sequences 之间共享。通过必要的缓存策略,KhWh 可以通过 look up and gathering 过程有效地“计算”。在线部署的细节将在接下来章节中介绍。

      但是,训练的时候没有 caching,因此会非常消耗资源。然而,训练的时候没有 inference latency 的限制,可以堆显卡来解决。

    • 对于 user-item 交叉特征 Kc,缓存策略不适用,因为:

      • 1):交叉特征描述 a user and a video 之间的交互细节,因此不会跨 users behavior sequences 来共享。

      • 2):对于一个视频,每个用户最多观看一次。也就是说,在投影 cross features 时没有重复计算。因此,我们通过简化 linear projection weight 来降低计算成本。

      给定 J 个交叉特征,每个特征的 embedding 维度为 8 (因为它们不是具有巨大 vocabulary sizeid 特征)。我们有 C=8J 。我们将 linear projection 简化如下:

      KcWc[Kc,1w1c,,Kc,Jw1c]RL×J

      其中:

      • Kc,jRL×8Kc 的第 j 个列切片,表示第 j 个交叉特征。

      • wjcR8 为第 j 个交叉特征的线性投影权重。

      使用这个简化的投影,我们将每个 cross feature 压缩到一个维度,即 KcWcRL×J 。请注意,这个简化的投影相当于将 Wc 限制为对角块矩阵( diagonal block matrix )。

  3. 复杂度分析:在传统的 MHTA 中,K 的线性投影的时间复杂度为 O(L×(H+C)×dout),其中这个线性投影从维度 L×(H+C) 投影到维度 L×dout

    通常 dout=(H+C)

    而在我们对 TWINMHTA 中:

    • item 固有特征 KhWhpre-computed 并有效地 gathered ,复杂度为 O(L),这与维度 H 无关。

      在训练阶段是没有 pre-computedKhWh 的,因此在训练阶段的复杂度还是很高。

    • user-item 交叉特征 KcWc 被简化为 O(L×C) 的低维计算。

    由于 CH,且 Cdout ,正是这种理论上的加速使得 MHTA 能够在 CP-GSUESU 中一致地实施。

    这里仅仅优化了线性投影的计算复杂度,但是没有优化 attention 的计算复杂度。attention 的计算复杂度为:O(LH+LC) ,这比线性投影低得多。而原始算法中,attention 的计算复杂度为 O(L(H+C))

  4. Target Attention in TWIN:基于 linear projection of behaviors KhWhKcWc ,我们现在定义了同时在 CP-GSUESU 中统一使用的 target-behavior relevance metric

    • 不失一般性,我们假设用户和 target item 之间没有交互,并将 target item 的固有特征记作 qRH。使用适当的线性投影 WqRH×Htarget item 与历史行为之间的 relevance score αRL 计算如下:

      α=(KhWh)(qWq)dk+(KcWc)β

      其中:dkprojected query and key 的维度。

      注意,这里 bias 项的计算与 q 无关。是否可以考虑引入 q

      这个 relevance scorequery (即 target 的固有特征)与 key (即 behaviors 的固有特征)之间的内积计算得出。此外,由于交叉特征被压缩为 1 维,因此可用作 bias 项。我们使用 βRJ 作为交叉特征的相对重要性的可学习参数。

    • CP-GSU 中,这个 relevance score α 用于将 L=104 个长期历史行为截断为100 个最相关的 behaviors 。而在 ESU 中,我们对 100 个最终入围者执行加权平均池化:

      Attention(qWq,KhWh,KcWc,KWv)=Softmax(α)(KWv)

      其中:Wv 为一个投影矩阵。

      我们通过设置 L=100 稍微滥用了符号。此投影 KWv 仅对 100behaviors 执行,因此可以在线高效进行。我们不需要像为 104behaviors 计算 α 时那样拆分 K

      注意:在 ESU 中,仍然使用了 Behavior Feature Splits and Linear Projection 策略从而计算注意力权重。但是,对于 KWv,这里不进行拆分。

    • 为了共同关注来自不同 representation 子空间的信息,我们在 MHTA 中采用 4 个头。因此,TWINfinal output 定义为:

      TWIN=Concat(head1,,head4)Woheada=Attention(qWaq,KhWah,KcWac,KWav),a{1,2,3,4}

      其中 Wo 是一个投影矩阵,它学习 head 之间相对重要性。

1.1.4 系统部署

  1. 我们在快手的 ranking system 上部署了 TWIN ,服务于 3.46 亿日活用户的主要流量。在本节中,我们介绍我们在部署中的实际经验。我们的系统架构细节如 Figure 3 所示。

  2. 训练系统:我们的 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 system5 分钟一次将最新的参数值从 training system 持续同步到离线推理系统和在线服务系统。这种同步确保了 online CTR prediction service 始终基于最新模型。

  3. 离线推理:offline inferring system 旨在通过提供 lookup service 来加速 online serving 。当接收到 lookup keys (即,一个 batchvideo ids )时,此 service 将返回 lookup values ,即相应的 projected inherent features 的拼接形式(即,所有 heads a{1,2,3,4}KhWah ) 。 具体来说,offline inferring system 由两部分组成:

    • 1):一个 inherent feature projector ,使用从 training system 同步的最新 embeddingsTWIN 参数 Wah 来循环预计算 linear projection of inherent features。通过适当的频率控制,该 projector 可以每 15 分钟刷新一次 8B 规模的 candidate video poolprojected inherent features ,从而最大限度地减少 caching 造成的准确率损失。

    • 2):一个 embedding server ,将 inherent feature projector 的结果存储到 key-value 结构中,并提供上述 key lookup service。通过截断尾部视频,8B keys 可以覆盖 97%online request ,平衡了效率和效果。

  4. Online Serving:一旦收到一个 requestonline serving system 就会向 offline inferring system 查询从而得到 projected inherent features KhWah,并实时计算公式 α=(KhWh)(qWq)dk+(KcWc)β 的其他部分以获得 user-item relevance score α。然后,我们选择 α 中注意力得分最高的 100behaviors ,并将这 100behaviors 输入到 ESU 。这种设计在实践中将 TWIN 的计算瓶颈(即 104 行的 Kh 的线性投影)降低了 99.3%

    请注意,只有 100 behaviorsESU 足够轻量,可以使用从 training system 同步的最新参数来实时进行所有计算。因此,ESU 计算出的 KhWhCP-GSU 中的略微更新,这进一步提升了我们的 Target Attention 机制的性能。

  5. 通过加速设计,TWIN 成功部署在快手的 ranking system 上,服务于 3.46 亿活跃用户的主要流量,峰值请求为每秒 30M 个视频。

1.2 实验

  1. 在本节中,我们详细介绍了在真实工业数据上进行的离线和在线实验,以评估我们提出的方法,目的是回答以下五个研究问题(research question: RQ )。

    • RQ1 :与 lifelong user behavior modeling 中的其他 SOTA 相比,TWIN 在离线评估中的表现如何?

    • RQ2 :与其他 SOTA 相比,TWIN能实现多大的一致性?或者说,为什么 TWIN有效?

    • RQ3:随着用户行为序列长度的增长,TWIN 的有效性如何变化?

    • RQ4:所提方法中的关键组件、以及不同实现方式的效果如何?

    • RQ5TWIN 在实际在线推荐系统中的表现如何?

  2. 数据集:为了在现实情况下评估 TWINlifelong 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 ,这大约是重度用户一年的总观看次数。

  3. baselines:为了证明有效性,我们将 TWIN 与以下 SOTAlifelong user behaviors modeling 算法进行了比较。

    • Avg-Poolinguser lifelong behaviors 的均值池化。

    • DIN :最广泛采用的 short-term behavior modeling 方法,它使用 Target Attention 从而用于 target-specific interests

    • SIM HardGSU 从与 target item 相同的 category 中选择 behaviorsESU 遵循 DIN 中的 Target Attention 。在我们的场景中,video categories 总数为 37

    • ETA :局部敏感哈希 (Locality-sensitive hash : LSH ) 用于为 target video and behaviors 生成哈希签名(hash signature )。然后 GSU 使用汉明距离作为 target-behavior relevance metric

    • SDIMGSU 通过多轮哈希碰撞(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 clustersGSU 从与 target item 相同的 clusters 中检索 behaviors

    • SIM Cluster+ :是 SIM Cluster 的改进版,其中 clusters 数量从 1,000 个扩展到 10,000 个。

    • SIM SoftGSU 使用视频的 pre-trained embeddings 的内积得分来检索 relevant behaviors 。内积是一种比汉明距离和哈希碰撞更精细的检索方法,但计算成本更高。

    综上所述:

    • ETASDIM 采用端到端训练方法,但使用粗略的检索方法以避免高复杂度的计算。

    • SIM ClusterSIM Cluster + 、以及 SIM Soft 采用精细的检索方法,但代价是它们必须使用 pre-trained embeddings 并提前生成离线倒排索引(offline inverted index )。

    请注意,SIM Soft 尚未被后续工作 ETASDIM 击败。我们没有与 UBR4CTR 进行比较,因为它的迭代式训练(iterative training )不适合我们的流式场景(streaming scenario )。此外,UBR4CTR 被证实比 SIM HardETA 的表现更差。

  4. 实验设置:

    • 我们使用一天中连续 23 个小时的样本作为训练数据,并使用接下来一个小时的样本进行测试。我们连续 5 天评估所有算法并报告 5 天的平均性能。

      相当于将算法重复 5 次并报告平均性能。

    • 对于离线评估,我们使用两个广泛采用的指标:AUCGAUC

      • AUC 表示正样本得分高于负样本得分的概率,反映了模型的排序能力。

      • GAUC 对所有用户的 AUC 进行加权平均,权重设置为该用户的样本数。GAUC 消除了用户之间的 bias ,以更精细和公平的粒度评估模型性能。

    • 为了公平比较,在所有算法中,除了 long-term behavior modeling 模块外,我们使用相同的网络结构,包括 embedding layersupper deep networksshort-term behavior modelingother task modelings

    • 对于两阶段模型,我们使用最近的 10,000 behaviors 为作为 GSU 的输入,并在 ESU 中检索 100 behaviors 用于 Target Attention

    • 对于 DIN ,我们使用最近的 100 behaviors ,因为它在处理长序列方面存在瓶颈。

    • 虽然 TWINCP-GSUattention score computation 中使用了四个 head ,但我们通过四个 head 递归遍历 top ranked items ,直到收集到 100 unique behaviors

      为什么要做这种简化?会不会影响性能?

    • 对于所有模型,embedding layer 都使用 AdaGrad 优化器,学习率为0.05DNN 参数由Adam 更新,学习率为 5×106batch size 设置为 8192

1.2.1 整体性能 RQ1

  1. Table 4 显示了所有模型的性能。请注意,由于我们的数据集中有大量的用户和样本,因此离线评估中 AUCGAUC0.05% 的改进足以为业务带来 online gains

    • 首先,TWIN 的表现明显优于所有基线,尤其是具有不一致 GSU 的两阶段 SOTA 。这验证了 TWINlife-long behavior modeling 中的关键优势,即 CP-GSU 中强大而一致的 Target Attention 。具体而言,CP-GSU 精确地检索出了ESU 认为高度相关的 behaviors ,为最重要的 user information 节省了 ESU 宝贵的计算资源。而在其它基线中,无效且不一致的 GSU 可能会错过重要 behaviors 并引入 noisy behaviors ,从而降低 Target Attention 的性能。

      此外,从 Avg-poolingDIN 的增益显示了 Target Attention 在检索有效信息方面的能力。其他两阶段 SOTA 相对于DIN 的增益验证了 modeling long behaviors 的必要性。这两者共同支持了我们的动机:将 Target Attention 扩展到长序列。

    • 其次,仅有端到端训练是不够的。我们观察到 TWIN 明显优于 ETASDIM,而这两个强大的基线在 GSU 中的 embeddings 也以端到端的方式进行训练。具体来说,ETA 使用 LSH 和汉明距离,而 SDIM 使用多轮哈希碰撞。与 Target Attention 相比,这两种 GSU 策略都不太精确,并且与它们在 ESU 中使用的 target-behavior relevance metric 不一致。而 TWIN 中的 CP-GSU 不仅是端到端训练的,而且与ESU中的 Target Attention 一致。这表明精确的relevance metricGSU至关重要,验证了我们优于现有的端到端算法。

    • 第三,以更细的粒度来建模 lifelong behaviors 是有效的。我们比较了 SIM 的变体:具有 37 categoriesSIM Hard 、具有 1,000 / 10,000 clustersSIM Cluster(+) 、以及针对每个 behavior 单独计算 target-behavior relevance scoreSIM Soft

      随着GSU中使用更细粒度的检索方法,我们观察到性能持续改进。这是因为当 GSU 能够更精细地捕获视频之间的 relevance score 时,它会更准确地检索 behaviors 。从这个角度来看,我们进一步将我们优于 SIM Soft 的原因归功于 TWIN 采用更准确的 relevance metric

1.2.2 一致性分析 RQ2

  1. 正如所声称的,我们卓越的 behavior modeling 能力来自 CP-GSUESU 中一致的 relevance metrics 。但我们真正实现了多大的一致性(Figure 4 )? 对于每个 well-trained 的两阶段模型,我们重用其 ESU 的参数作为其 Oracle ,从而从 10,000 behaviors 中检索 “the real top-100”。换句话说,这些 real top-100ESU 认为真正重要的 ground-truth 。然后,对于所有被比较算法,我们遍历 GSU output size ,从 10104 ,以检查有多少 outputs 命中 real top-100 。请注意,每个被比较算法都有自己的 Oracletop-100 。但我们只绘制一条 Oracle 曲线,因为所有 Oracles 都完美地击中了 ground truth

    • SIM Soft 得益于 GSU 中更精确的 retrieval 策略,在 retrieval consistency 方面有所改进。

    • 此外,TWIN 在返回 100 behaviors 时实现了 94 次命中,这验证了我们在保持两个阶段之间的一致性方面的优势。请注意,这是最值得注意的 value ,因为考虑到推理时间、以及 Target Attention 计算复杂度的限制,100ESU input 的上限。由于 caching 中的刷新延迟(refresh delay ),我们在实践中没有达到理论上的 100% 的一致性,如正文章节所述。

    基于以上结果,我们推测 CP-GSU 比传统 GSU 具有更强的 match user interests with the target video 的能力。这归因于一致性。通过与 ESU 共享相同的结构和参数,CP-GSU 能够准确判断和检索具有相似内容的 videos 。此外,由于 CP-GSU 参数是实时更新的,该模型可以捕获用户的动态变化的兴趣。

1.2.3 Behavior Length 的影响 RQ3

  1. 我们旨在测试 TWIN 在不同 behavior sequence 长度下的有效性,并进一步挖掘 TWIN 的潜力。请注意,仅更改了 GSU 的输入序列长度,输出长度保持为 100 。结果如 Figure 5 所示。 我们观察到:

    • 1)TWIN 始终表现最佳,

    • 2) :随着序列长度的增加,TWIN 与其他方法之间的性能差距越来越大。这表明 TWIN 在建模极长序列方面具有更好的效果。

1.2.4 消融研究 RQ4

  1. 我们通过对 TWIN 应用不同的操作来进行消融研究,以评估我们的关键模型设计的贡献:1) 两个阶段之间的一致性; 2) 高效的 MHTA

  2. TWIN 在两个方面保持了两个阶段之间的一致性:网络结构和参数。为了研究每个方面带来的好处,我们实现了一个名为 TWIN w/o Para-Con 的变体,它不保留参数一致性。具体来说,我们首先训练一个辅助模型 TWIN-aux ,它使用与 TWIN 相同的网络结构和训练数据,但单独进行训练。然后,我们将 GSU 参数从 TWIN-aux 同步到 TWIN w/o Para-Con。这是为了确保 TWIN w/o Para-Con 仍然实时被更新,并且 TWINTWIN w/o Para-Con 之间的差距都是由参数不一致造成的。 Figure 6 (left) 所示,TWIN w/o Para-Con 的表现明显优于 SIM Soft (结构和参数都不一致),但略逊于 TWIN 。这表明网络结构一致性和参数一致性都有好处,但网络结构一致性的贡献更大。

    这个配置有点奇怪,为什么不训练这样的模型:CP-GSUESU 采用相同的网络结构,但是不共享网络参数,然后训练?这个实验不太靠谱。

  3. 为了高效地计算 MHTA 从而用于工业级部署,我们拆分 user behavior features ,并将每个 user-item cross feature 压缩为一维 bias 项。为了研究这种修改的影响以及在注意力计算中保留 user-item cross features 的好处,我们实现了两个变体并比较了它们的性能和推理时间:

    • 具有原始 MHTATWIN ,其中使用直接的线性投影 KW 并且不进行 feature split 。缩写为 TWIN w/ Raw MHTA

    • MHTA 中不使用 user-item cross featuresTWIN ,缩写为 TWIN w/o Bias

    Figure 6 (right) 所示,TWIN 明显优于 TWIN w/o Bias ,并且性能几乎与 TWIN w/Raw MHTA 相同,验证了我们对 MHTA 提出的修改几乎不会影响性能。至于计算成本,由于当 user-item cross features 用于 K 的线性投影时,caching 不适用于 TWIN w/ Raw MHTA (详见正文章节),因此 TWIN w/ Raw MHTA 的推理时间显著增加。相反,删除 user-item cross featuresTWIN w/o Bias )不会节省太多计算量,但会损害性能。

1.2.5 在线结果 RQ5

  1. 为了评估 TWIN 的在线性能,我们在快手的短视频推荐平台上进行了严格的在线 A/B testTable 5 比较了快手三个代表性业务场景(Featured-Video Tab, Discovery Tab, and Slide Tab )下 TWINSIM HardSIM Soft 的性能。与电商常用的线上评价指标 CTRGMV 不同,短视频推荐场景通常使用观看时长(Watch Time ),衡量用户观看视频的总时长。

    如表所示,TWIN 在所有场景中的表现都明显优于 SIM HardSIM Soft 。在快手上,观看时长增加 0.1% 被认为是一个有效的改进,TWIN 实现了显著的商业收益。