2026-03-28 过程文档 #16 — Pinterest 推荐系统 + 视觉搜索演化¶
关联报告: 2026-03-28_pinterest技术演化调研.md
调研时间: 2026-03-28
信源主力: KDD 论文(A级)、Pinterest Engineering Blog(A级)
搜索过程¶
- 搜索:
Pinterest PinSage PinnerSage PinnerFormer recommendation system evolution - 搜索:
Pinterest visual search Lens computer vision technical evolution - 搜索:
Pinterest PinnerFormer KDD 2022 results - 搜索:
Pinterest generative AI LLM 2024 2025 recommendation - Fetch:
medium.com/pinterest-engineering/pinnersage-multi-modal-user-embedding-framework✅ - Fetch:
medium.com/pinterest-engineering/unifying-visual-embeddings-for-visual-search✅ - Fetch:
medium.com/pinterest-engineering/building-pinterest-lens✅ - Fetch:
shaped.ai/blog/pinrec-teardown✅ - 论文:PinnerFormer KDD'22 arxiv 摘要信息 ✅
发现与分析¶
推荐系统演化:item embedding → user embedding → sequence modeling → generative retrieval¶
PinSage(2018,KDD)¶
信源: KDD 2018 论文(Hamilton et al.,Stanford/Pinterest 合著)[A级] URL: https://cs.stanford.edu/~jure/pubs/pinsage-kdd18.pdf
问题: Pinterest 的核心是 Pin 和 Board 构成的图,传统矩阵分解无法融合 Pin 的视觉/文本特征。 解法: 图卷积网络(GCN)基于随机游走采样邻居,聚合视觉+文本特征生成 Pin embedding。 规模: 30亿节点(Pin + Board),180亿边,75亿训练样本。 意义: PinSage 是 Pinterest ML 从"内容特征"向"图结构特征"转型的起点,也是工业界 GNN 用于推荐的早期标杆论文。
注:PinSage 解的是 item(Pin)embedding 问题,不是用户建模。
PinnerSage(2020,KDD)¶
信源: KDD 2020 论文 + Pinterest Engineering Blog [A级] URL: https://medium.com/pinterest-engineering/pinnersage-multi-modal-user-embedding-framework-for-recommendations-at-pinterest-bfd116b49475 arXiv: https://arxiv.org/abs/2007.03634
问题: 用单个向量表示用户不够用——"对绘画、鞋子和科幻感兴趣的用户",这三个兴趣点之间没有内在关联,单向量会相互干扰。 解法: 1. Ward 聚类:将用户的 repin 和 click 历史聚成多个兴趣簇 2. Medoid 表示:每个簇用实际交互过的 Pin 作为代表(而不是计算重心),保留可解释性 3. 轻量级:轻度用户 3–5 个簇,重度用户最多 75–100 个 4. 混合架构:离线批处理长期兴趣 + 在线实时捕捉当前兴趣
A/B 结果: 多个 surface 上 repin 和 click 均有提升(论文未公布精确百分比)。 分析: PinnerSage 是 Pinterest 在"多兴趣建模"上的早期探索,与工业界同期的 MIND/ComiRec 思路相近。用 Medoid 而非 Centroid 的选择是工程上的务实决策——Medoid 天然是真实的 Pin,可以直接用于检索,不需要额外解码步骤。
PinnerFormer(2021年上线,2022年 KDD 发表)¶
信源: KDD'22 论文(arXiv 2205.04507)[A级] URL: https://arxiv.org/abs/2205.04507
问题: PinnerSage 聚类方法无法捕捉用户兴趣的时序演化;next-action 预测目标与实际业务目标(长期用户留存)不完全对齐。 解法: 1. Transformer 主体:causal masking + FFN + multi-head self-attention 块交替 2. Dense all-action loss(关键创新): 不预测"下一个动作",而是在每个时间步预测未来 K 天内的全部正样本中的随机一个。让模型学到"长期兴趣画像"而非"短期下一步" 3. 输入:PinSage embedding 序列(把图特征作为 Transformer 的 token) 4. 部署: 离线批量计算用户 embedding,供在线检索使用(避免实时推理开销)
A/B 结果(Pinterest 官方数字): - +1% 时长(time spent) - +7.5% Homefeed repins - +10.0% Homefeed ads CTR - 同时提升日活和周活用户
分析: PinnerFormer 的核心贡献是 dense all-action loss,这个设计把推荐的训练目标从"下一步预测"升级到"长期兴趣建模",在工程上非常实用(可以离线批处理,不需要在线 Transformer 推理)。+10% ads CTR 是 Pinterest 变现历史上一个重要节点。
PinRec — 生成式检索(2024,WWW/RecSys)¶
信源: Shaped.ai 技术拆解文章 [B级] URL: https://www.shaped.ai/blog/pinrec-teardown-inside-pinterests-production-ready-generative-retrieval-model
问题: Two-Tower 检索依赖预计算 item embedding + ANN,无法在检索阶段捕捉实时用户行为的复杂动态;且难以直接对业务目标(哪种 engagement 类型)进行控制。 解法: 1. GPT-2 架构 Transformer,根据用户历史自回归生成候选 item 表示 2. Outcome-Conditioned Generation(关键创新): 注入不同用户动作类型的可学习 embedding(repin、click 等),推理时可以设定"action budget"(如 60% repin + 40% grid click),直接控制推荐结果的 engagement 类型分布 3. 用 Pareto 前沿可视化验证 budget 调整产生了可预测的行为分布偏移
A/B 结果: - Homefeed:+0.28% fulfilled sessions,+0.55% 时长,+4.01% grid clicks - Search:+0.48% fulfillment rate
分析: PinRec 代表 Pinterest 在检索侧从"向量相似度"向"生成式"范式的迁移,方向与工业界 TIGER/HSTU 等工作一致。Outcome-Conditioned 设计特别有意思——把业务目标直接编码进模型 condition,而不是通过后处理调权,这是 recsys 走向"可控性"的一个具体实现。
视觉搜索演化:CV专项 → 统一多模态 → 多模态 LLM¶
起步阶段(2014–2015)¶
信源: TechCrunch/MarTech 历史报道 [C级] + Pinterest 官方技术博客 [A级]
- 2014年:收购 VisualGraph(图像识别初创公司),建立 CV 团队
- 2015年:Visual Cropper 上线,用户可以圈选 Pin 内部区域搜索相似内容
- 架构:VGG16(2014年的 CNN)+ Caffe 框架,用 engagement 数据训练
- 意义:Pinterest 第一个"商品级"视觉搜索能力,250M+ 月搜索量由此开始积累
Lens 相机搜索(2016–2017)¶
信源: Pinterest Engineering Blog, "Building Pinterest Lens" [A级] URL: https://medium.com/pinterest-engineering/building-pinterest-lens-a-real-world-visual-discovery-system-59812d8cbfbc
- 2016年:开发 Lens,最大挑战是域漂移(domain shift)——相机拍摄图像与 Pin 图像风格差异巨大
- 解法:人工标注数据集,配对相机图像与对应 Pin
- 技术:从"全图搜索"升级为"以物体为粒度"——Object Search 索引数十亿个物体区域
- 2017年 BETA 上线:将 Pinterest 视觉搜索延伸到真实世界(用手机摄像头直接搜索)
- 规模:上线时索引 1000亿+ ideas,六个月内构建了"数十亿个物体"的语料库
查询理解层 + Blender 架构: - Query Understanding:计算视觉特征(物体检测、颜色、光线、质量)+ 语义特征(注释、类目) - Blender:动态混合三路结果(视觉相似 / 物体相似 / 语义文本),根据置信度动态调权
Shop the Look(2018–2019)¶
- 2018年:Shop the Look — SE-ResNeXt + PyTorch,专为精确商品匹配优化(与 Visual Cropper 的 engagement 训练目标不同)
- 2019年:Automated Shop the Look——自动从家居场景 Pin 中识别可购买商品
此时痛点: 三个独立视觉 Embedding 系统(Visual Cropper VGG16/Caffe + Lens + Shop the Look SE-ResNeXt/PyTorch),无法共用基础设施,也无法互相迁移学习。
统一视觉 Embedding(约 2021)¶
信源: Pinterest Engineering Blog, "Unifying visual embeddings for visual search" [A级] URL: https://medium.com/pinterest-engineering/unifying-visual-embeddings-for-visual-search-at-pinterest-74ea7ea103f0
问题: 三套模型用三种不同框架和数据集,技术债务严重,无法扩展到新应用。 解法: - Proxy-based metric learning + 多任务架构 - 共享 SE-ResNeXt 主干,每个应用分支到独立 FC 层 - 每个任务的 Softmax cross-entropy loss,minibatch 中均匀混合所有任务数据 - PyTorch DistributedDataParallel + FP16 混合精度训练
结果: 多任务联合训练在所有三个应用上均优于各自单独训练;大幅降低检索基础设施成本(统一索引)。
多模态 LLM 时代(2024+)¶
信源: 搜索结果摘要 [B级]
- Pinterest Assistant: 多模态检索 + 推荐服务 + 生成模型的组合,核心多模态 LLM 负责 query 理解、query planning、工具调用
- 视觉 embedding 与文本 embedding 的对齐:利用生成式视觉语言模型为 Pin 生成 image captions,供 LLM 搜索相关性模型使用
信源记录¶
| 信源 | URL | 级别 | 日期 | 要点 |
|---|---|---|---|---|
| PinSage KDD'18 | https://cs.stanford.edu/~jure/pubs/pinsage-kdd18.pdf | A | 2018 | GCN item embedding,3B节点,18B边 |
| PinnerSage KDD'20 + Blog | https://arxiv.org/abs/2007.03634 | A | 2020 | 多兴趣聚类用户建模,Ward+Medoid |
| PinnerFormer KDD'22 | https://arxiv.org/abs/2205.04507 | A | 2022 | Transformer序列建模,dense all-action loss,+7.5%repins,+10%ads CTR |
| PinRec 拆解 | https://www.shaped.ai/blog/pinrec-teardown | B | 2024 | 生成式检索,Outcome-Conditioned,+4.01%grid clicks |
| Pinterest Lens | https://medium.com/pinterest-engineering/building-pinterest-lens | A | 2017 | 相机搜索,域漂移解法,Object Search |
| Unified Visual Embeddings | https://medium.com/pinterest-engineering/unifying-visual-embeddings | A | ~2021 | 三套系统 → 单多任务模型 |
遗留问题¶
- PinnerFormer 和 PinRec 是否并存于线上(双路检索)还是 PinRec 全面替代?
- 视觉 Embedding 在 LLM 时代是否已经改为 CLIP-style 对比学习?公开信息未确认
- PinSage 是否仍在生产使用,或已被更新的方法替代?