MoSE: 多任务混合序列专家模型
上周我们在Youtube: 多任务目标推荐上介绍了多任务目标推荐的知识点。今天我们继续看多任务的知识点应用。
应用场景
在Gmail中搜索时,会去查询Google Drive中的文件,而且是per-key的,即每输入一个字符,都会触发查询操作。
这个功能看起来对很多用户来说用处没有那么大,因为用户在gmail的搜索框里搜索一般意图就是搜索email。而且给Google Drive带来了很大的访问压力。但也有不少用户会使用这个功能。因此,需要用模型来解决这个问题。
模型需要根据用户的的行为来预测两个目标:
Google Drive结果的点击数 用户在Gmail里搜索所输入的字符数
这两个目标都是以天为单位的。
得到这两个目标之后,当然,就会希望在那些点击数少且输入字符数多的用户上disable这个功能。需要在它们之间做平衡考虑。
之所以要预测这两个任务是出于商业和产品的考虑,例如,当Google Drive能够处理的request容量够大的时候,可以考虑放宽阈值,让更多的用户看到这个功能。
产品精细化的处理可以很细节,这个场景足够小了,但是依然可以用AI解决。
基于这个场景,可以发现问题的几个特点:
数据稀疏,搜索过程中Google Drive文件的结果点击次数很稀疏。 数据异构,除了用户在gmail中搜索的行为外,用户在Drive上的行为也很重要,因此,Gmail的search日志,浏览日志,Drive的活动日志数据都需要考虑进来。 目标复杂,用户如何点击和输入依赖于用户的意图。
MoSE
MoSE,是Mixture of Sequential Experts的缩写。相对于我们之前介绍的MoE: 稀疏门控制的专家混合层,主要的区别就是模型是多对多的序列模型。
首先看模型整体结构如下,可以看到,每个Expert都是Sequential模型而不是FC模型。
多对多序列模型直接用LSTM就好:
模型公式如下,核心就是g(x)门限函数,就是对expert加权用的。
其他的baseline
论文用了多种变种作为baseline。如下图:
实验
实验结果如下,可以看到,在两个目标的预测上,MoSE都能达到很好的效果,除此之外,sequential的模型比非Sequential的模型也要好。
如有收获,欢迎点赞,关注,转发公众号:
参考文献
[1]. Qin, Z., Cheng, Y., Zhao, Z., Chen, Z., Metzler, D., & Qin, J. (2020, August). Multitask Mixture of Sequential Experts for User Activity Streams. In Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (pp. 3083-3091).