xiaohongshu_history

第五章:推荐系统演进

概述

小红书的推荐系统是其技术体系的核心组件,从2013年的简单规则匹配到2024年的多模态深度学习系统,经历了多次重大技术迭代。作为一个内容社区平台,推荐系统的质量直接决定了用户体验和平台的商业价值。

推荐系统演进时间线
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

2013-2015  [规则时代]     基于标签匹配 + 编辑推荐
           ↓
2016-2018  [机器学习]     协同过滤 + LR/GBDT + 特征工程
           ↓
2019-2021  [深度学习]     DNN/Wide&Deep + 实时特征 + 多目标优化
           ↓
2022-2024  [多模态AI]     Transformer + 多模态理解 + 大模型应用

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

核心技术指标演进

时期 推荐算法 特征规模 模型参数 在线延迟 CTR提升
2013-2015 规则匹配 <100 - <10ms 基准线
2016-2018 LR/GBDT 10万+ 百万级 <30ms +50%
2019-2021 Deep Learning 千万级 10亿+ <50ms +120%
2022-2024 Multi-Modal 亿级 千亿级 <80ms +200%

1. 规则时代(2013-2015):从零开始

1.1 初代推荐系统架构

用户请求流程(2013-2014)
┌─────────┐     ┌──────────┐     ┌──────────┐
│  用户   │────>│  Nginx   │────>│  Django  │
└─────────┘     └──────────┘     └──────────┘
                                       │
                                       ↓
                              ┌──────────────┐
                              │ 推荐服务     │
                              │ - 标签匹配   │
                              │ - 热度排序   │
                              │ - 时间衰减   │
                              └──────────────┘
                                       │
                                       ↓
                              ┌──────────────┐
                              │   MySQL      │
                              │ - 用户表     │
                              │ - 笔记表     │
                              │ - 标签表     │
                              └──────────────┘

1.2 核心推荐策略

初期的推荐系统主要依赖以下几个简单策略:

  1. 标签匹配算法
    • 用户关注标签与内容标签的交集匹配
    • 基于TF-IDF的关键词提取
    • 简单的余弦相似度计算
  2. 热度排序公式
    Score = (点赞数 × 0.3 + 收藏数 × 0.4 + 评论数 × 0.3) × 时间衰减因子
       
    时间衰减因子 = 1 / (1 + α × 发布天数)
    其中 α = 0.1
    
  3. 编辑精选机制
    • 人工运营团队每日精选优质内容
    • 建立种子用户和优质创作者体系
    • 类目运营确保内容多样性

1.3 技术挑战与解决方案

挑战1:冷启动问题

挑战2:内容理解能力弱

挑战3:实时性要求

2. 机器学习时代(2016-2018):数据驱动的变革

2.1 引入协同过滤

2016年,小红书用户量突破千万,简单的规则匹配已无法满足个性化需求。技术团队开始引入经典的推荐算法。

协同过滤架构
┌────────────────────────────────────────────────────┐
│                    离线计算层                        │
│  ┌──────────────┐  ┌──────────────┐               │
│  │ 用户行为日志  │  │  Spark集群   │               │
│  │  - 点击      │──>│ - UserCF    │               │
│  │  - 点赞      │  │ - ItemCF    │               │
│  │  - 收藏      │  │ - MF分解    │               │
│  └──────────────┘  └──────────────┘               │
│                           ↓                        │
│                    ┌──────────────┐               │
│                    │  相似度矩阵   │               │
│                    │  存储(HBase)  │               │
│                    └──────────────┘               │
└────────────────────────────────────────────────────┘
                           ↓
┌────────────────────────────────────────────────────┐
│                    在线服务层                        │
│  ┌──────────┐  ┌──────────────┐  ┌──────────┐    │
│  │   召回   │──>│    排序      │──>│   过滤   │    │
│  │ - UserCF │  │  - LR模型    │  │ - 去重   │    │
│  │ - ItemCF │  │  - GBDT模型  │  │ - 业务规则│    │
│  │ - 热门   │  │  - 特征服务  │  │ - 多样性 │    │
│  └──────────┘  └──────────────┘  └──────────┘    │
└────────────────────────────────────────────────────┘

2.2 特征工程体系

构建了完整的特征工程体系,包含三大类特征:

用户特征(User Features)

内容特征(Item Features)

交叉特征(Cross Features)

2.3 模型迭代历程

版本 时间 模型 特征数 效果提升 主要改进
v1.0 2016.04 Logistic Regression 1000+ +15% 引入机器学习
v1.1 2016.09 LR + GBDT 5000+ +8% 特征组合
v2.0 2017.03 FM 10000+ +12% 自动特征交叉
v2.1 2017.08 FFM 50000+ +6% Field感知
v3.0 2018.02 Wide&Deep 100000+ +10% 深度特征学习

2.4 实时计算能力建设

实时特征计算流水线(2017年上线)
                                          
用户行为 ──> Kafka ──> Flink ──> 特征更新 ──> Redis/HBase
           (消息队列)  (流计算)   (5s延迟)    (特征存储)
                         │
                         ↓
                   ┌──────────┐
                   │ 实时指标 │
                   ├──────────┤
                   │ CTR      │
                   │ 停留时长 │
                   │ 互动率   │
                   └──────────┘

2.5 A/B测试平台

建立了完整的实验平台,支持算法快速迭代:

3. 深度学习转型(2019-2021):智能化升级

3.1 深度神经网络架构

2019年,小红书全面拥抱深度学习,构建了端到端的深度推荐系统。

深度推荐系统架构
┌─────────────────────────────────────────────────────────┐
│                     召回层(多路召回)                      │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐       │
│ │双塔模型  │ │图神经网络│ │序列模型  │ │多兴趣   │       │
│ │(DSSM)   │ │(GraphSAGE)│ │(GRU4Rec)│ │(MIND)   │       │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘       │
└─────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────┐
│                     粗排层(轻量模型)                      │
│                   ┌──────────────┐                       │
│                   │   双塔DNN     │                       │
│                   │  (降级到1000)  │                       │
│                   └──────────────┘                       │
└─────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────┐
│                     精排层(复杂模型)                      │
│  ┌──────────────────────────────────────────────┐       │
│  │            Multi-Task DNN                     │       │
│  │  ┌─────────┐  ┌─────────┐  ┌─────────┐      │       │
│  │  │点击预测  │  │时长预测  │  │互动预测  │      │       │
│  │  └─────────┘  └─────────┘  └─────────┘      │       │
│  │         共享底层 + Task-specific层             │       │
│  └──────────────────────────────────────────────┘       │
└─────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────┐
│                     重排层(业务约束)                      │
│              多样性 | 新鲜度 | 商业化调控                   │
└─────────────────────────────────────────────────────────┘

3.2 Embedding技术体系

用户Embedding

内容Embedding

统一Embedding空间

多模态融合网络
┌──────────┐  ┌──────────┐  ┌──────────┐
│图片特征   │  │文本特征   │  │视频特征   │
│(ResNet)  │  │(BERT)    │  │(3D-CNN)  │
└────┬─────┘  └────┬─────┘  └────┬─────┘
     │             │             │
     └─────────────┼─────────────┘
                   │
            ┌──────────────┐
            │  Attention    │
            │  融合层       │
            └──────────────┘
                   │
            ┌──────────────┐
            │统一Embedding │
            │   (256维)    │
            └──────────────┘

3.3 多目标优化

推荐系统需要同时优化多个业务目标:

目标 权重 模型结构 损失函数
点击率(CTR) 0.4 Shared Bottom + Tower Binary Cross Entropy
停留时长 0.3 Shared Bottom + Tower MSE
互动率 0.2 Shared Bottom + Tower Binary Cross Entropy
商业化 0.1 Separate Tower Weighted Loss

多目标融合公式

Score = w₁×P(click) + w₂×E(duration) + w₃×P(interact) + w₄×Revenue
其中权重w动态调整,基于用户分层和时段

3.4 实时深度学习

在线学习系统

实时训练Pipeline
                    ┌──────────────┐
用户行为 ──────────>│  特征提取     │
                    │  (Flink)     │
                    └──────┬───────┘
                           │
                    ┌──────↓───────┐
                    │  样本生成     │
                    │  (正负样本)   │
                    └──────┬───────┘
                           │
                    ┌──────↓───────┐
                    │  增量训练     │
                    │  (TensorFlow) │
                    └──────┬───────┘
                           │
                    ┌──────↓───────┐
                    │  模型评估     │
                    │  (AUC/GAUC)  │
                    └──────┬───────┘
                           │
                    ┌──────↓───────┐
                    │  在线部署     │
                    │  (TF Serving) │
                    └──────────────┘

3.5 序列建模技术

用户行为序列是理解用户兴趣的关键:

短期兴趣建模

长期兴趣建模

Session建模

4. 多模态AI时代(2022-2024):智能创新

4.1 多模态内容理解

小红书的内容形态丰富,包含图文、视频、直播等,多模态理解成为核心能力。

多模态内容理解框架
┌────────────────────────────────────────────────────────┐
│                    内容输入层                           │
│  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐  │
│  │ 图片  │  │ 文本  │  │ 视频  │  │ 音频  │  │标签   │  │
│  └───┬──┘  └───┬──┘  └───┬──┘  └───┬──┘  └───┬──┘  │
└──────┼─────────┼─────────┼─────────┼─────────┼───────┘
       │         │         │         │         │
┌──────┼─────────┼─────────┼─────────┼─────────┼───────┐
│      ↓         ↓         ↓         ↓         ↓        │
│  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐  │
│  │ViT   │  │BERT  │  │Video  │  │Audio  │  │GCN   │  │
│  │      │  │-Large│  │BERT   │  │Trans. │  │      │  │
│  └───┬──┘  └───┬──┘  └───┬──┘  └───┬──┘  └───┬──┘  │
│      │         │         │         │         │        │
│                特征提取层                               │
└────────────────────────────────────────────────────────┘
                           ↓
┌────────────────────────────────────────────────────────┐
│                   Cross-Modal Transformer               │
│         统一建模图像、文本、视频、音频关系                 │
└────────────────────────────────────────────────────────┘
                           ↓
┌────────────────────────────────────────────────────────┐
│                    应用层                               │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐            │
│  │内容标签   │  │质量评分   │  │相似度计算  │            │
│  │生成      │  │预测      │  │          │            │
│  └──────────┘  └──────────┘  └──────────┘            │
└────────────────────────────────────────────────────────┘

4.2 大模型技术应用

2023年引入大语言模型

应用场景 模型选择 技术方案 效果提升
内容理解 GPT-3.5/4 Few-shot理解用户意图 理解准确率+25%
标题生成 自研7B模型 Fine-tuning on 10M笔记 点击率+15%
评论分析 BERT变体 情感分析+观点提取 互动率+20%
搜索优化 向量检索 Text/Image Embedding 召回率+30%

自研模型训练

训练数据规模:
- 文本语料:100TB(用户笔记、评论)
- 图片数据:10亿张
- 视频数据:1亿个片段
- 用户行为:万亿级交互日志

模型架构:
- 基座模型:7B参数量
- 训练框架:Megatron-LM
- 硬件:1000张A100 GPU
- 训练时长:3个月

4.3 向量检索系统

构建了支持十亿级向量的检索系统:

向量检索架构
┌────────────────────────────────────────────┐
│              索引构建层                      │
│  ┌──────────────┐  ┌──────────────┐       │
│  │ 内容Embedding │  │ 用户Embedding │       │
│  │   (实时)      │  │   (准实时)    │       │
│  └───────┬──────┘  └───────┬──────┘       │
└──────────┼──────────────────┼──────────────┘
           │                  │
           ↓                  ↓
┌────────────────────────────────────────────┐
│              向量索引层                      │
│         ┌──────────────────┐               │
│         │   Faiss集群       │               │
│         │  - IVF16384,PQ64 │               │
│         │  - 10亿向量      │               │
│         │  - 分片存储      │               │
│         └──────────────────┘               │
└────────────────────────────────────────────┘
                    ↓
┌────────────────────────────────────────────┐
│              检索服务层                      │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐ │
│  │ ANN检索   │  │ 相似度   │  │ 重排序   │ │
│  │ (< 10ms) │  │ 计算     │  │         │ │
│  └──────────┘  └──────────┘  └──────────┘ │
└────────────────────────────────────────────┘

检索性能优化

4.4 AIGC内容生成

AI辅助创作工具

  1. 智能配文:根据图片自动生成文案
  2. 标签推荐:智能推荐相关标签
  3. 封面优化:自动选择最佳封面
  4. 视频剪辑:AI辅助视频剪辑
AIGC Pipeline
用户上传内容 → 内容分析 → 创作建议 → 用户确认 → 发布
     │            │           │           │
     ↓            ↓           ↓           ↓
  图片/视频    场景识别    文案生成    质量评分
              物体检测    标签推荐    合规检查
              风格分析    封面选择    优化建议

4.5 个性化推荐升级

超个性化推荐

推荐多样性保证

多样性算法:
1. 类目打散:确保Feed流类目分布
2. 创作者打散:避免同一作者内容聚集
3. 主题轮转:不同主题内容交替
4. 探索与利用:10%流量用于兴趣探索

5. 技术架构与核心挑战

5.1 整体系统架构

小红书推荐系统全景架构(2024)
┌─────────────────────────────────────────────────────────────┐
│                         数据层                                │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │用户数据   │  │内容数据   │  │行为数据   │  │商业数据   │   │
│  │(Profile) │  │(Content) │  │(Action)  │  │(Business)│   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────┐
│                      特征工程层                               │
│  ┌────────────────────────────────────────────────────┐     │
│  │  离线特征:Spark/Hive计算,T+1更新                    │     │
│  │  近线特征:Flink计算,分钟级更新                      │     │
│  │  在线特征:内存计算,实时更新                         │     │
│  └────────────────────────────────────────────────────┘     │
└─────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────┐
│                       召回层                                 │
│  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐        │
│  │协同   │  │内容   │  │向量   │  │图    │  │实时   │        │
│  │过滤   │  │召回   │  │召回   │  │召回   │  │召回   │        │
│  └──────┘  └──────┘  └──────┘  └──────┘  └──────┘        │
└─────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────┐
│                   排序层(三级漏斗)                           │
│  粗排(1万→1千) → 精排(1千→100) → 重排(100→展示)              │
└─────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────┐
│                      业务层                                  │
│  多样性控制 | 商业化混排 | 内容安全 | 用户体验优化            │
└─────────────────────────────────────────────────────────────┘

5.2 核心技术挑战

挑战1:超大规模数据处理

挑战2:实时性要求

挑战3:个性化与多样性平衡

5.3 性能优化实践

优化项 优化前 优化后 技术手段
召回延迟 50ms 15ms 向量索引优化、缓存
排序延迟 80ms 30ms 模型压缩、GPU推理
特征获取 40ms 10ms 内存KV、预计算
QPS承载 100万 1000万 服务拆分、扩容

5.4 监控与实验体系

监控指标体系
┌──────────────────────────────────────┐
│           业务指标                     │
│  CTR | 时长 | 互动率 | 留存 | GMV    │
└──────────────────────────────────────┘
                  ↓
┌──────────────────────────────────────┐
│           算法指标                     │
│  覆盖率 | 准确率 | 召回率 | AUC | GAUC │
└──────────────────────────────────────┘
                  ↓
┌──────────────────────────────────────┐
│           系统指标                     │
│  延迟 | QPS | 成功率 | CPU | 内存     │
└──────────────────────────────────────┘

A/B实验平台能力

5.5 未来技术展望

1. 生成式推荐

2. 端边云协同

3. 可解释推荐

4. 跨模态搜索推荐

总结

小红书推荐系统的演进历程,是一个从简单规则到复杂AI系统的技术升级之路。通过不断的技术创新和优化,构建了一个支撑亿级用户、处理海量数据、提供个性化体验的推荐系统。

关键成功因素:

  1. 技术选型前瞻:及时拥抱新技术,如深度学习、大模型
  2. 工程能力扎实:构建稳定高效的基础设施
  3. 数据驱动决策:完善的实验和监控体系
  4. 用户体验优先:平衡个性化与多样性

未来,随着AI技术的持续发展,小红书推荐系统将继续在多模态理解、生成式AI、隐私计算等方向探索创新,为用户提供更智能、更个性化的内容推荐服务。


注:本章节基于公开技术分享和行业通用实践编写,具体实现细节可能与实际有所差异