DSSM语义召回
DSSM是一种基于深度神经网络的语义建模方法,这是由微软发表的一篇关于Query和Doc的相似度计算模型的论文提出。
该模型的结构主要由三部分组成(如下图)
![](https://img-blog.csdnimg.cn/7a4ff9aa255849b29720c5386ddc78ec.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg55qE6Zi_5rCR,size_20,color_FFFFFF,t_70,g_se,x_16)
输入层
输入层主要负责将Query和Doc的数据转换成embedding向量表达,方法通常有TFIDF,One-Hot等。原论文针对英文输入提出了一种叫做Word hashing的特殊embedding方法来降低字典规模。
表示层
表示层主要是将初始的embedding向量,经过深度学习的方法映射得到Query和Doc的新的embedding向量表达,即上图中的 N e w e m b e d d i n g New\ embedding New embedding。
匹配层
匹配层是比较关键的一步,它将所获取的Query和Doc相互做余弦相似度运算,获得两两之间的语义相似度,注意此处的相似度结果不限输出范围,所以最后需要通过softmax把所有结果归一化,从而得到目标针对点击的正样本拟合P为1,反之拟合P为0。
总结
DSSM方法目前广泛运用于搜索、推荐等领域的找回和排序问题。双塔模型的最大特点就是user侧和item侧是两个独立的子网络,两个塔可以各自缓存,线上召回时只需要取出缓存中的向量做相似度计算即可。