推荐系统可视化实验室
把推荐系统里从协同过滤、矩阵分解到双塔召回、DIN 序列建模、多目标排序、召回-排序全链路、特征交叉网络与 Embedding 表的核心算法,用可交互的 SVG 动画讲清楚。单文件、零依赖,打开即用。
协同过滤
把用户-物品评分矩阵可视化,基于相似度找到最相近的用户或物品。点击矩阵中的用户/物品查看其 k 近邻,并观察 CF 如何利用近邻评分预测缺失值。
矩阵分解
将稀疏的用户-物品评分矩阵分解为低维的用户因子矩阵与物品因子矩阵。点击「训练」观察损失下降、隐因子在 2D 空间中的分布,以及重构后的预测评分。
双塔模型
用户特征与物品特征分别经过各自的塔(MLP)得到归一化向量,再做内积得到匹配分。点击「推理」观察一次前向传播如何穿过双塔,训练时负采样如何构造对照样本。
DIN/DIEN 序列推荐
用户的历史行为是一条序列。DIN 用目标感知的注意力,让不同的候选物品激活历史中不同的兴趣。切换目标物品,观察注意力权重如何在历史序列上重新分布。
多目标排序
共享底层特征之上接多个任务塔(CTR 点击 / CVR 转化 / 留存),各任务损失加权求和后回传梯度。调节任务权重,观察梯度流分配与各任务指标的变化。
召回-排序架构
完整的推荐链路:多路召回(协同过滤 / 内容 / 向量 / 热门)→ 粗排 → 精排 → 重排(多样性 / 新颖性)。观察候选集如何像漏斗一样逐层收敛,以及各阶段的延迟与数量。
特征交叉
FM 用隐向量内积建模二阶交叉,DeepFM 把 FM 与 Deep 并联,DCN 用 Cross 层逐层构造高阶显式交叉。切换模型类型与交叉深度,观察特征交叉数量与参数的变化。
Embedding 在推荐中
Embedding 表把离散的 user/item ID 映射为稠密向量,常占据模型 90% 以上参数。点击 ID 观察 lookup 过程,调节维度与表大小查看显存与查找速度,并在 2D 空间中观察向量分布。