End-To-End 之于推荐-kuaishou OneRec2 笔记


End_To_End 之于推荐onerec里,快手利用大模型做了推荐架构的革命,几个月后,v2之于v1是一些技术细节进行了进一步迭代,主要是以下两个方面:

1. 架构层面的突破:Lazy Decoder-Only

背景问题:V1 的 Encoder-Decoder 架构里,97.66% 的算力都消耗在 context encoding,真正用于生成推荐结果的部分只有 2.34%,导致算力浪费、扩展性差。

改进方案:提出 Lazy Decoder-Only 架构,彻底移除 encoder,context 只作为静态条件输入,通过轻量 cross-attention 与 GQA(Grouped Query Attention)完成交互。

效果

  • 计算量减少 94%,训练资源消耗下降 90%。
  • 在同样计算预算下,模型参数可以扩展到 8B。
  • 训练 loss 随模型扩展呈现一致下降趋势,验证了 scaling law 的可行性。
  • 内存占用降低,支持长上下文(从 512 扩展到 3000)。
  • 结合 MoE(4B 总参 / 0.5B 激活),进一步平衡算力与性能。

2. 偏好对齐:基于真实用户反馈的 RL

V1 局限:仅依赖 Reward Model,会遇到抽样效率低、奖励欺骗(reward hacking)等问题。

V2 改进:Duration-Aware Reward Shaping

直接使用用户反馈作为reward:将视频播放时长与用户历史的同类时长 bucket 对比,取分位数作为 engagement score,避免"长视频天然更高播放时长"的偏差。

GBPO (Gradient-Bounded Policy Optimization)

改进 RL 的 ratio clipping,结合 BCE 的稳定梯度,防止负样本导致梯度爆炸。

不丢弃样本 → 保持探索多样性;梯度有界 → 训练更稳定。

自举式优化:直接利用 OneRec 自身曝光的流量样本做 on-policy 训练,实现自我改进。

对比结果

  • Reward Model → 偏向互动指标(like/comment)。
  • User Feedback → 偏向停留时长(App Stay Time)。
  • Hybrid → 指标均衡,避免 seesaw 效应。

3. 线上 A/B 测试结果

在快手主站 & 极速版 5% 流量实验中(400M DAU):

App Stay Time:+0.467%(主站) / +0.741%(极速版)

LT7(7 日生命周期):+0.069% / +0.034%

互动指标全面提升:like、follow、comment、collect、forward 全部正向改善

推理部署:1B 模型,context=3000,MFU 达 62%,延迟仅 36ms(20×A100 GPU)。

最后,给出一个对比表:

维度 OneRec-V1 OneRec-V2 改进点总结
模型架构 Encoder-Decoder Lazy Decoder-Only 移除 Encoder,计算集中在 Decoder,减少 94% FLOPs
算力分配 97.66% 用于 context encoding,仅 2.34% 用于生成 ≈100% 用于 target decoding 解决算力浪费问题,提升 scaling 潜力
扩展能力 Decoder 参数比 Encoder 多,但受算力瓶颈限制,难以扩展 支持扩展到 8B 参数,MoE 版本 4B 总参(0.5B 激活) 高效扩展,更接近 LLM 的 scaling law
Cross Attention 标准 cross-attention(KV 投影 + 多头) Lazy Cross-Attention(去掉 KV 投影,KV-Sharing + GQA) 降低内存 & 计算开销,支持长上下文(3000)
训练数据组织 User-Centric / Encoder-Decoder 组织,存在冗余和泄漏风险 Chronological + 仅最新 impression 计算 loss 减少冗余训练,避免时间泄漏
RL 策略 仅基于 Reward Model(DPO/ECPO) User Feedback 信号驱动 + Duration-Aware Reward + GBPO 避免 reward hacking,提升真实偏好对齐
Reward 设计 Proxy Reward(容易被模型利用) Duration-Aware Reward Shaping(分位数归一化) 去除长视频偏差,更好反映质量
优化算法 ECPO(早期裁剪) GBPO(梯度有界 + 全样本利用) 稳定性更高,不丢弃样本,探索更多样
自举优化 流量较小,主要依赖传统 pipeline 样本 OneRec 曝光占流量 25%,可用自生成样本 on-policy 训练 实现 self-improvement
线上效果 (主站) App Stay Time +0.269% App Stay Time +0.467%,LT7 +0.069% 明显提升,平衡 seesaw 效应
线上效果 (极速版) App Stay Time +0.163% App Stay Time +0.741%,LT7 +0.034% 效果更显著
互动指标 偏向提升 Like / Comment 全面提升(Like、Follow、Comment、Collect、Forward) 多目标更均衡
推理效率 MFU 较低,部署成本高 MFU 62%,延迟 36ms(1B 模型,20×A100) 接近 LLM 部署效率,成本降低
相关推荐
一隅论数智2 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
深圳老胡2 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
Because_of_Her12 天前
并查集-听课笔记
笔记·算法·并查集
彧azz2 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
陈卫军老师2 天前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营
`流年づ2 天前
人工智能学习笔记 - 补充
人工智能·笔记·深度学习·学习
qeen872 天前
【Linux】操作系统之进程介绍(二)
linux·笔记·学习·进程
从零开始的嵌入式之旅2 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
陈年老古董2 天前
MediaPipe 姿态检测与脸部关键点检测
笔记·python·opencv·学习·dlib
彧azz2 天前
操作系统时间管理与系统核心板块学习总结
c语言·笔记·学习·系统架构