跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

字节发布用于序列推荐的分层大模型 HLLM 技术解析

详细解析了字节跳动发布的用于序列推荐的分层大模型 HLLM。文章介绍了传统 ID 推荐模型的局限性及 LLM 在推荐领域的挑战,阐述了 HLLM 通过分离 Item LLM 和 User LLM 来提取特征和建模用户兴趣的架构。内容涵盖生成式与判别式优化的损失函数设计、三阶段训练策略、在线 A/B 实验结果(指标提升 0.705%)以及关于微调必要性、Scaling Law 特性和推理效率的分析。实验证明 HLLM 在多个数据集上优于 SASRec 和 HSTU,并在工业场景中展现出良好的扩展性和实用性。

剑仙发布于 2025/2/6更新于 2026/8/2357 浏览
字节发布用于序列推荐的分层大模型 HLLM 技术解析

字节发布用于序列推荐的分层大模型 HLLM 技术解析

近期,Meta 发布的 HSTU 点燃了业界对 LLM4Rec(大语言模型用于推荐系统)的热情。探索推荐领域的 Scaling Law、实现推荐的 ChatGPT 时刻、取代传统推荐模型等话题引发了广泛讨论。然而,理想与现实之间仍存在差距,尚未有业界公开工作真正复刻 HSTU 的辉煌。这既可能是因为落地过程中存在诸多挑战,也可能是因为 Meta HSTU 的基线设置相对较弱,导致在竞争激烈的国内推荐领域难以产生突破性效果。

尽管实施困难,但总需要先行者迈出这一步。字节跳动于 2024 年 9 月 19 日在 arXiv 上公开了名为 HLLM(Hierarchical Large Language Model,分层大语言模型)的工作。该论文遵循并扩展了 HSTU 的思路,针对序列推荐任务提出了新的架构。

1. 背景与挑战

1.1 传统推荐问题

传统推荐系统的核心在于建模 User 和 Item 的特征。主流方法是基于 ID(ID-based),将用户和物品转化为 ID 并构建对应的 Embedding 表。这种方法存在以下局限性:

  1. 冷启动问题严重:严重依赖 ID Feature,对于新物品或新用户表现不佳。
  2. 表达能力有限:模型参数较小,难以建模复杂且多样的用户兴趣变化。

1.2 LLM 在推荐中的探索方向

过往利用 LLM 进行推荐探索主要分为三类:

  1. 利用 LLM 提供额外信息给推荐系统。
  2. 将推荐系统转变为对话驱动的形式。
  3. 修改 LLM 输入输出机制,例如直接输入 ID Feature 给 LLM。

1.3 LLM4Rec 的核心挑战

将 LLM 应用到推荐系统面临两个主要问题:

  1. 输入复杂度:在相同时间跨度下,相比 ID-based 方法,LLM 的输入更长,计算复杂度更高。
  2. 性能提升不明显:相对于传统方法,LLM-based 方法的性能提升往往不显著。

为此,研究重点评估了三个关键问题:

  1. 预训练权重的价值:模型权重蕴含世界知识,如何激活这些知识?是否只能使用文本输入?
  2. 微调的必要性:直接使用 Pretrain 模型还是需要进行进一步微调?
  3. Scaling Law 特性:LLM 是否可以应用在推荐系统中并呈现规模效应?

2. 方法详解

HLLM 架构分为 Item LLM 和 User LLM 两部分,两者参数不共享,均可训练并通过 Next Item Predict 进行优化。

2.1 架构设计

  • Item LLM:以物品的描述信息作为输入,包括 Title、Tag、Description,最后添加一个特殊 Token [ITEM]。该 Token 对应的输出代表该物品的 Embedding。可以直接基于预训练好的模型(如 Llama、Baichuan)进行训练。
  • User LLM:输入为用户历史交互序列,序列中每个 Item 由 Item LLM 生成的 Embedding 表示。由于输入并非原始文本 Token,因此去除了预训练模型的 Word Embedding 层。

2.2 优化目标

推荐系统通常分为生成式推荐与判别式推荐,HLLM 同时应用了这两种范式。

生成式推荐

针对 User LLM,采用 InfoNCE Loss 作为生成损失。对于某个正样本物品,模型输出其嵌入,随机抽取的其他物品作为负样本。这种将对比学习融入预测的设计非常巧妙。

生成式损失函数定义如下: $$ \mathcal{L}{gen} = -\log \frac{\exp(sim(u_t, i{t+1})/\tau)}{\sum_{k=1}^{K} \exp(sim(u_t, i_k)/\tau)} $$ 其中,$sim$ 为相似度函数,$u_t$ 为用户 $t$ 的历史交互嵌入,$i_{t+1}$ 为目标物品嵌入,$K$ 为负采样数量。

判别式推荐

业界主流仍为判别式推荐,HLLM 同样支持。给定用户行为序列和一个目标 Item,模型预测用户对该 Item 感兴趣程度(如点击、购买)。

融合策略分为两种:

  1. Early Fusion:将 Item LLM 输出的 Embedding 直接拼接到序列后输入给 User LLM,对应位置输出做分类。效果好但效率低。
  2. Late Fusion:类似于 Item LLM,使用 User LLM 提取用户 Embedding,即 [USER] 拼到序列后输入给 User LLM,将对应位置输出与目标 Item 拼接做分类。效果略差但效率高。实际落地使用的是 Late Fusion。

预测为二分类问题,训练损失函数为交叉熵损失: $$ \mathcal{L}{cls} = -[y \log(x) + (1-y) \log(1-x)] $$ 此外,Next Item Prediction 可作为辅助损失进一步提升性能,最终损失函数为: $$ \mathcal{L}{total} = \mathcal{L}{cls} + \lambda \mathcal{L}{next} $$

3. 实验结果

3.1 公开数据集实验

  • 数据集:PixelRec、Amazon Book。
  • Baseline:SASRec、HSTU。
  • 模型设置:HLLM-1B(基于 TinyLlama-1.1B)、HLLM-7B(基于 Baichuan2-7B)。
  • 训练轮次:HLLM 仅训练 5 个 Epoch,而对比方法需 50-200 Epoch。

离线实验表明,HLLM 在生成式推荐设置下,效果优于 SASRec 和 HSTU。在线 A/B 实验则采用判别式推荐 + Late Fusion 配置。

3.2 在线 A/B 实验

  • 模型:HLLM-1B。
  • 训练策略:三阶段训练法。
    1. 阶段 1:端到端训练 HLLM(Item LLM + User LLM),用户行为长度截断为 150 以加速。
    2. 阶段 2:固定 Item LLM,缓存所有 Item Embedding,只训练 User LLM,用户行为长度扩大至 1000。
    3. 阶段 3:提取 User Feature 和 Item Feature 喂给线上模型训练,HLLM 权重不再改变。
  • 推理优化:Item Embedding 创建时提取并缓存,User Embedding 天级别更新(仅在用户发生交互时更新)。线上推理时间基本无变化。
  • 结果:重要指标提升 0.705%。

4. 关键问题分析

4.1 微调 vs 预训练

  • 结论 1:对于 Item LLM 和 User LLM,基于预训练权重进行微调效果更好。
  • 结论 2:预训练使用的 Token 越多,效果越好。若预训练后进行 SFT(指令微调),效果反而下降,原因可能是 SFT 仅训练了指令跟随能力,对推荐任务本身无益。
  • 结论 3:Item LLM 和 User LLM 联合训练效果最佳。

4.2 Scaling 特性

针对 Item 和 User LLM 均进行了 Scaling 实验。结果表明,随着模型参数增大,HLLM 具有显著的 Scaling 特性,性能随模型规模增加而提升。

4.3 对比 SoTA 优势

在相同设置下,HLLM 优于 HSTU。当增加负样本数量和 Batch Size 时,基于 ID 的模型(HSTU)提升有限(HSTU-Large R@200 +0.76),而相同设置的 HLLM-1B 提升显著(+2.44)。

4.4 效率分析

  • 数据需求:相对于 HSTU,HLLM 达到相同性能只需 1/6 至 1/4 的数据量。
  • 推理优化:通过 Cache Item Embedding,可以先训练 Item LLM 并缓存,再训练 User LLM。实验显示,即使 Item Cache 导致性能略微降低,仍优于 HSTU。
  • 工业场景:工业场景下用户行为数据量远大于 Item 数量,成本一致。随着预训练数据量增加,Item Cache 与全量微调之间的 Gap 会大大缩小。

5. 消融实验

5.1 Item LLM 配置

  • 输入特征:Tag + Title + Description + Length=256 效果最好。
  • Embedding 提取:采用 [ITEM] Token 提取 Embedding 优于 Mean Pooling 方法。

5.2 User LLM 配置

  • 序列长度:输入用户序列长度 Length=50 优于其他短序列。
  • Embedding 组合:User LLM 生成的 Embedding 优于 Item ID Embedding;加上 Timestamp Embedding 效果最佳。

5.3 工业场景调优

  • 模型规模:7B 模型效果优于小模型。
  • 序列长度:User LLM 输入长度采用 1k 最佳。

6. 总结

字节推出的 HLLM 利用大语言模型提取物品特征并建模用户兴趣,有效地将预训练知识集成到推荐系统中,并证明了基于推荐目标的微调至关重要。HLLM 在更大的模型参数下展现了出色的可扩展性。实验表明,HLLM 优于传统的基于 ID 的模型,在学术数据集上取得了很好的结果。在线 A/B 测试进一步验证了 HLLM 的实际效率和适用性,标志着 LLM4Rec 的重大进展。

该工作为推荐系统与大模型的结合提供了新的思路,特别是在解决冷启动和复杂兴趣建模方面展示了潜力。未来的研究方向可能包括更高效的推理优化、多模态特征的融合以及更大规模的工业级部署验证。

目录

  1. 字节发布用于序列推荐的分层大模型 HLLM 技术解析
  2. 1. 背景与挑战
  3. 1.1 传统推荐问题
  4. 1.2 LLM 在推荐中的探索方向
  5. 1.3 LLM4Rec 的核心挑战
  6. 2. 方法详解
  7. 2.1 架构设计
  8. 2.2 优化目标
  9. 生成式推荐
  10. 判别式推荐
  11. 3. 实验结果
  12. 3.1 公开数据集实验
  13. 3.2 在线 A/B 实验
  14. 4. 关键问题分析
  15. 4.1 微调 vs 预训练
  16. 4.2 Scaling 特性
  17. 4.3 对比 SoTA 优势
  18. 4.4 效率分析
  19. 5. 消融实验
  20. 5.1 Item LLM 配置
  21. 5.2 User LLM 配置
  22. 5.3 工业场景调优
  23. 6. 总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Python + Blender 5.0 几何节点全栈实战教程 1
  • 使用 Higress 将 REST API 转换为 MCP Server 工具
  • Python 自动化脚本:实现定时与循环发送消息
  • 员工管理系统设计与实现
  • 基于 Django 框架的物流车辆预约平台设计与实现
  • Kimi 高级用法教程:从入门到 AI 应用实战
  • Android 面试经验复盘与核心知识点梳理
  • C++ 二叉搜索树:原理与增删查实现详解
  • C++ 入门:引用、内联函数与 nullptr 详解
  • 基于 C# 的 PLC 转 Web API 服务器框架实现
  • 基于冠豪猪优化算法的无人机三维路径规划与 Matlab 实现
  • Robo-Diffusion 机器人图像生成使用技巧
  • 基于 RetinaFace 与 CurricularFace 的身份核验系统实现
  • 深入解剖 STL map/multimap:接口使用与核心特性详解
  • AVL 树核心详解:从概念到 C++ 手撕实现
  • AR 远程协作中的深度感知:基于 lingbot-depth-pretrain-vitl-14 的空间锚点实现
  • 大疆无人机如何导出日志并解析
  • Telegram Android 官方开源客户端源码解析与定制指南
  • Python GIS 脚本编程:CARTO、Mapbox 与 Hadoop 实战
  • H.265 网页播放:WebAssembly + FFmpeg 实现浏览器端硬解软解兼容方案

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online