“双塔模型”经常被用在推荐系统的召回阶段中,其核心思想是将用户和物品映射到共同维度空间,来计算两者之间的相似度,以此来判断该物品是否适合该用户;
Deep Structured Semantic Model(深层结构语义模型),即通常所说的基于深度网络的语义模型,其核心思想是将 query 和 doc 映射到共同维度的语义空间中,通过最大化 query 和 doc 语义向量之间的余弦相似度,从而训练得到隐含语义模型,达到检索的目的。
应用:搜索引擎检索、广告相关性、问答系统、机器翻译,推荐系统(召回&粗排阶段)
算法原理
整体算法流程可以从左侧看起,输入 用来表示输入的 term 向量,而 是经过 DNN( )后输出的向量。其中激活函数为tahn函数:
然后再计算两者相似度:
推荐系统中的DSSM模型
上图更能表示推荐系统中的DSSM结构,常常被用于召回和粗排阶段;
“双塔模型”的结构,分别可以看到 User 侧和 Item 侧两个前期相互独立的DNN模型,分别得到 user embedding 以及 item embedding,然后两者在进行相似度计算。
需要保证输出的 Embedding 维度相同,因为后一步需做相似度计算(内积或余弦)
算法实现
拓展尝试
主要讲述飞猪在双塔模型的基础上做了许多优化;