参考文献
Learning Tree-based Deep Model for Recommender Systems
TDM,全名Tree-based Deep Model,中文名基于树搜索的深度推荐模型。我们知道,在做推荐时,通常有两个阶段,召回和排序,召回是从全部的item库中粗筛出一定量的item,再经过排序做精筛后推荐给用户。
从以上可以看出,召回的任务量其实非常大,需要从全库中搜寻用户可能感兴趣的item。如果每个item都要考虑,即遍历所有item的话,任务量是非常巨大的。所以现在普遍使用的技术是把用户和item都映射成embedding,通过用户和item的embedding之间的相似度匹配作k-最近邻推荐,确实有效率了很多。但这样的技术是有天花板的,用户和item间更多的交互信息,都是无法被表征的。你想,如果要表征用户和item间相互的交互信息,必然要把用户的embedding和item的embedding一起输入一个模型让它们去交叉,但这样一来,你都需要把item的embedding输入模型了,你要在全库中搜索合适的item,岂不是要考虑把全库的item的embedding都要一一输入模型?那不是又成了遍历!针对这些问题,阿里提出了基于树搜索的深度推荐模型。
我们都知道,树的搜索效率一般都比遍历高,通常是logN级,比起遍历的N级(N是要搜索的项的全部数量)时间复杂度就小了很多。阿里就是利用了这一点,使得在全库中搜索合适的推荐item时的时间复杂度大大降低。下面我们来看看阿里具体是怎么做的。先来看模型的概貌。

好的很,果然看着就挺复杂的。先来看上图中右下角树的部分,在图中这棵树就是棵平衡的二叉树(实际模型不需要是二叉的,但这里为了方便讲述),叶子节点对应着一个个item,全库中所有的item都能在叶子节点里找到对应的。而非叶子节点可以看成表征着一个类别,层级越往上的非叶子节点表征的类别的范围越广。比如从上往下,非叶子节点可以分别为无机物,电

最低0.47元/天 解锁文章
736

被折叠的 条评论
为什么被折叠?



