推荐系统 教程

推荐系统 召回算法

推荐系统 排序层

推荐系统 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/rec-dssm.html

推荐系统中的 DSSM 双塔模型详解(包含完整的实现代码)


DSSM(Deep Structured Semantic Models)也叫深度语义匹配模型,最早由微软研究院的科学家在2013年提出应用于 NLP 领域中计算语义相似度任务的文章。它的设计灵感来自于神经网络在计算机视觉任务中的成功应用,希望将类似的思想应用于文本领域。DSSM 最初用于语义搜索,通过将查询和文档表示为连续的向量,使得可以度量它们之间的相似性。后来发现这个思路正好和推荐召回环节的思路完全一样,所以就借鉴给了推荐,因为效果不错并且对工业界十分友好,所以被各大厂广泛应用于推荐系统中,国内用的最早的是百度2015年用它来做广告的召回。

DSSM 理论知识

核心思想

DSSM 的核心思想是将文本映射到低维度的连续向量空间,以便可以通过计算向量之间的相似性来解决文本匹配和推荐问题。为了实现这一点,DSSM 采用了深度神经网络架构,包括多层神经网络和一些特殊的损失函数,例如 Cosine 相似性损失。

模型原理

DSSM 模型原理很简单,获取推荐中的用户特征和 item 的海量曝光和点击日志数据,训练阶段分别用复杂的深度学习网络构建 user 和 item 两个独立的子网络,将训练好的两个“塔”中的 user embedding 和 item embedding 各自缓存到内存数据库中。线上预测的时候只需要在内存中计算相似度运算即可。

模型整体结构