第 255 题:设计Facebook的信息流,社交关系与兴趣的融合。
题目
设计Facebook的信息流,社交关系与兴趣的融合。
完整讲解
一、信息流与双信号
- 信息流:动态的、按序展示的内容流(帖子、视频、新闻)。排序需同时考虑社交关系(关注、好友、群组)与兴趣(历史行为、内容匹配),即「谁发的」与「喜不喜欢」的融合。
二、社交关系
- 信号:关注关系、互动关系(点赞、评论、转发)、强 tie 与弱 tie;关系强度与活跃度可建模为权重。
- 应用:优先展示关注人/好友的内容、或给「关系内容」单独一路召回;关系链传播也可用于冷启动(好友在做什么)。
- 挑战:关系多时需筛选与排序;避免「仅关系」导致信息茧房,需注入兴趣与探索。
三、兴趣与融合
- 兴趣:用户对内容主题、形式、创作者的偏好,用行为序列与画像表示;双塔、精排等做兴趣匹配。
- 融合方式:多路召回(关系流 + 兴趣流 + 热门)→ 精排时特征同时包含关系强度与兴趣分;或门控/加权融合两路得分;可学习「当前用户更偏关系还是兴趣」的动态权重。
- 多样性:在关系与兴趣基础上做类目、新鲜度打散,控制同质化。
面试要点
- 能说清信息流中社交关系与兴趣各自的作用,以及多路召回与融合方式。
- 能说明关系筛选、避免纯关系导致茧房、以及多样性控制。
记忆要点
- 信息流:社交关系(关注、互动)+ 兴趣(行为、匹配);多路召回后精排融合。
- 融合:关系与兴趣双路特征或得分加权/门控;需多样性打散与探索。