机器之心专栏
机器之心编辑部
本文是蚂蚁集团和武汉大学共同提出的, 一种面向多场景多任务优化的自动稀疏专家选择方法。论文题目为《Automatic Expert Selection for Multi-Scenario and Multi-Task Search》,它通过简洁有效的架构,实现了样本级细颗粒度的自动网络结构学习,对各种场景结构有较强的普适性。论文已被 SIGIR2022 录用,同时已经在支付宝数金搜索场景上进行了全流量推全,获得了显著的业务效果。
一、业务背景和问题
支付宝数金搜索是财富、保险等多个业务的重要流量入口。其搜索场景入口如下:
图 1:数金搜索场景各个入口和详情页实例。
由于业务种类与目标的丰富性,数金搜索较一般的垂类搜索面临更多的挑战。以基金搜索为例,它包含:
在单场景上进行分别迭代,带来了巨大的维护成本;同时,各个场景都比较重要但又有较大差异。主搜流量大,用户新,但成交相对稀疏。理财 TAB (指垂搜),流量较小,但成交金额是主搜的 3.96 倍,且用户多为资深用户。有部分用户会同时使用主搜和垂搜,如果用户行为信号不能实现迁移,也较难得到满意的线上效果。因此,在多个场景使用统一模型是十分必要且急迫的。
但是,将所有线上样本进行混合,直接使用 hard embedding sharing 的网络结构带来了比较严重的负迁移问题。经过近一年来从 MMOE, PLE 等方法的应用和研究,并调研了 STAR 等多场景方法, 我们提出了一种新颖的,基于自动专家选择的多场景多任务搜索框架(AESM^2,Automatic Expert Selection for Multi-Scenario and Multi-Task Search 下文简称 AESM)。
AESM 用一个框架,并以相同的视角同时解决多场景和多任务问题,它通过简洁有效的架构,实现样本级细颗粒度的网络结构学习,如下图所示。值得注意,该方法不仅可应用于搜索,还能应用到其他多场景多任务的算法场景。
将 AESM 模型部署在数金搜索的四个子场景中,相对于各个各场景中单独部署的模型取得了显著提升。相对于基线模型,CTR 整体提升 0.10%、 CTCVR 提升 2.51%,成交 GMV 提升 7.21%。详细的数据分析可见后续章节。
二、多场景和多任务学习现状
多任务算法(MTL)和多场景学习(MSL)在学术界和工业界被广泛的研究和应用,通过多任务联合训练提升应用效果,如 ESMM、MMoE、PLE 等。但它们没有直接考虑多场景 + 多任务的情况。且 PLE 的场景 / 任务间的复杂关联,需要通过人工指定网络结构来适配。
多场景学习旨在解决多个相同的任务标签,且空间结构类似的场景。例如 STAR [19] 尝试通过星型拓扑捕获场景相关性,其中包括共享中心参数和场景特定参数,预设了各个场景是扁平的,并无无层级关系。其他研究 [8, 15] 阐述了将多场景问题作为一个多任务学习问题,但这些工作都需要足够的领域知识来设计网络结构。
与 MSL 不同,多任务学习侧重于建模任务间相关性和区别 。例如,CTR 预测和 CVR 预测 [8, 12] 和信用风险预测 & 信用额度设置 [9]。下面是几种常见的解决多任务的方法:
综上,现有方法的问题是:
我们将从这几种网络的优点和劣势总结如下:
三、算法方案设计
挑战:各场景存在较大的差异
我们可以将基金场景抽象成如下树状结构,分别是场景层,卡片层和任务层。
图 3:真实业务中复杂的场景和层级带来的迁移难题
而使用 PLE 训练统一数据 + 模型,其效果不如在各个场景上独立训练的 PLE 模型,存在一定的跷跷板效应。因此,如何设计一个统一模型来解决多场景和多任务?如何自动学习场景任务间的关联,并使得各个场景都有正向收益?
整体模型结构
我们针对如上的场景树结构,构建多层堆叠的,结构相似的 AESM 网络。在下图中实例中,真实场景中的场景层 / 卡片层 / 任务层,都由两层 AES 层来堆叠建模。
图 5:AESM 主结构图
AESM 将多场景和多任务问题视为同一问题,并采用分层架构将它们融合到一个统一的框架中。与 PLE 不同,AESM 利用通用且灵活的架构, 分别进行不同场景和任务下,设置共享和独享的专家。
如下图 c 所示,上面不同颜色的 E 代表专家被不同的任务所使用: E1, E2 被 A 任务使用, E2 和 En 被 B 任务使用。E2 为 share 专家,其他为 specific 专家。
为了简化,我们首先介绍单独的多场景 / 多任务层,并讨论如何做自动专家选择;后续再讨论具有多层任务设置的情况。
共享嵌入层
与其他模型类似,我们设计了共享嵌入层,将底部的类别和数值特征转换为连续的特征向量。假设有 𝑣 组特征,例如,用户特征(如年龄、性别)、物品特征(如价格、品牌)和行为特征(如 q2i,u2i 等)。对于给定的样本,首先将数值特征转换为类别类型,然后对类别特征进行 one-hot 处理,如下所示:
其中,
表示用户特征的个数,
表示特征向量的拼接;其他类型的特征处理方式同用户的特征处理方式;将处理后的各种类型特征进行拼接,得到输入
多场景层和专家选择
在共享嵌入层之后,
作为后续层的输入,经过多层专家选择层得到最后的输出。这里的核心问题是,如何进行专家选择?
整个过程用下图表示如下:
图 7:AESM 的探索和稀疏化约束机制
为简单起见,我们只展示一层的选择过程。假设有 n 个专家和 m 个输出(即 m 个 gate)的场景层,我们首先利用线性变换来计算每个场景的门控向量如下:
其中,
是第 j 场景和第 k 个专家关于输入实例的相关性分数;
是可学习参数,
是场景 embedding 表征,
是高斯噪声(
)。
行向量
是选择专家模块的关键步骤。我们做出如下假设
相对大于其他向量
,则表示,第 k 位的专家更多可能被分类为第 j 场景的 specific 组。
中的值都相对接近,则第 k 个专家可能包含所有场景之间的共享信息。
因此,我们首先对矩阵执行逐行 softmax 操作 G 如下:
然后,对于第 j 场景,我们形成一个 one-hot 场景向量
,其中只有第 j 个元素为 1。如上所述,可以根据
和
之间的相似性来衡量第 k 个专家是第 j 个场景特有专家的概率。
类似地,我们还为第 j 个场景引入了一个均匀分布的向量
,
可以根据
和
之间的相似性来衡量第 k 个专家是第 j 场景共享专家的概率。
因此,选择场景特定和场景共享专家的过程形式化地描述如下:
其中
和
分别为第 j 个场景的特定和场景共享设置的专家 index,算子 TopK 是返回 top-𝐾 索引的参数操作值,𝐾𝐿( ) 计算 Kullback-Leibler 散度。
使用
和
来更新门控向量
,实现稀疏专家网络:
然后,将门控标量矩阵
和专家输出
输入标准的 MMoE 模块得到这个场景层的输出:
综上,本方法最重要的是三点:
在多任务部分,我们给定上述场景层的输出
,我们也利用相同的选择过程来实现多任务学习。此处不再赘述。
多层堆叠和扩展
此处可参考 AESM 主模型图。
在实际应用中,一个场景可能很复杂,并且在本质上表现出层次结构 [11,15]。例如我们的基金搜索场景,通过堆叠多个场景层和任务层,我们的模型 AESM 可以十分便捷地处理这种复杂的场景。这与深度网络(DNN)的优势一样,通过更深的深度,而不是宽度,能够以更少的参数表达更复杂的问题。
例如在有𝐿𝑠 层的场景,每层有 N_i 个场景复杂系统中,只需要调整每一层的输入S_i ,最终我们可以对n_1n_2…n_L_s个细分场景进行建模。当我们使用标准的 MMoE 架构时,每一层我们需要相同的专家数量。由于
,可以节约大量的计算成本。
此外,我们仍然可以将 𝐿𝑡 多任务层堆叠在一起,自适应地为更高级别的任务进行特征提取。与多场景不同,因为在第一个多任务之后,每个任务都有不同的输入层。在后续的多任务层中使用相同的专家结构,使用不同的输入进行专家选择。当层数大于 1 时,我们使用前一层的输出作为后一层的输入。
模型优化
对于数金搜索的精排模型,选择 sigmoid 作为激活函数。因此,第
个实例的交叉熵损失如下:
如上一节介绍,我们增加辅助损失来增强场景 / 任务特定的专家选择。具体来说,对于第
的多场景层,可增加下面的 loss 约束:
其中
是第
个多场景中的输出层。同样,对于第
的多场景层,可通过
增强训练过程中专家的选择决策;同样多任务层中共享专家的损失函数表示为
;综合得到,辅助损失函数
定义如下:
整体的损失函数可定义为:
四. 线仿真和消融实验
为了验证 AESM 的有效性, 我们在多个数据集上,将 AESM 于其他多场景 / 多任务模型进行对比。并做了大量消融实验。
实验设计
离线实验中共收集了两个真实场景中的数据集,分别是支付宝和速卖通数据。
支付宝数据集:收集了从 2021 年 11 月 15 日到 11 月 30 日, 两周用户支付宝搜索的行为日志。分为主搜 (HP) 和垂搜 (VP) 两个场景(channel),同时每个 channel 中还可以进一步划分为 热门基金(BS)和基金产品(RI) 两个卡片(这里被抽象为𝑑𝑜𝑚𝑎𝑖𝑛)。因此,整个数据集通过 channel 和 domain 正交分为四个具体的场景。根据行为数据的日期将数据集切分为训练集、验证集和测试集:11 月 15 日 - 11 月 28 日为训练数据,2021 年 11 月 29 日为验证数据,2021 年 11 月 30 日为测试数据。进行点击率和转化率的预估。观察到两个数据集中的数据分布不平衡。例如,仅 VP&BS 场景中的展示次数在所有场景中占比 6.44%,大部分点击发生在场景 VP&RI,反而占 82.33%。
速卖通数据集:同样此数据集存在多场景(按用户国籍划分)和多任务的设置。在本次实验中,选取了𝑁𝐿、𝐹𝑅、𝐸𝑆和𝑈𝑆四个场景的数据集。因为原始数据集只包含训练集和测试集,我们随机抽取 50% 的原始测试数据作为验证集。
表 2:速卖通数据集统计情况
我们将 AESM 与两类基线模型进行对比:
借鉴 ESMM [12] 的思想,我们优化整个空间中的 CTR 和 CVR,即𝐶𝑇𝐶𝑉𝑅 = 𝐶𝑇𝑅 × 𝐶𝑉𝑅。使用 auc 评估模型的性能。为了保证公平,我们做了以下工作:
基线效果对比
表 3 和表 4 是支付宝和速卖通数据集上不同模型的性能对比。两个表中的结果都表明我们提出的模型 AESM 在所有情况下始终优于所有基线任务。尤其数据稀疏度最高的主搜热门基金,提升更为显著。这表明模型能够适应不同的配置的场景和任务。但其他模型则不一定,例如在 CTR 任务中,PLE 在 VP&BS 场景中的表现优于 MMoE,但在 HP&BS 场景中的表现不如 MMoE。
与多场景和多任务设置中训练的模型相比,所有基线都受到来自不同场景的负迁移的影响。例如,它们在 HP&BS 上的性能不如在单一场景中训练的模型。然而,AESM 在所有场景中都优于所有单一场景模型,表明 AESM 可以更好地利用场景关系,避免负迁移。
表 3:不同模型在支付宝数据集上性能对比
表 4:不同模型在速卖通数据集上性能对比
消融分析
为分析每种优化的影响,采用两种不同的 AESM 变体进行消融分析:(1)无高斯噪声和辅助损失 (2)无辅助损失。从下表的结果可以看到,去除高斯噪声和辅助损失后,所有任务上性能均有下降。
对比(1)(2)两种变体 AESM,可以看到高斯噪声在所有的场景中均有着良好的表现。这意味着合理的波动给模型带来了更为广泛的探索空间, 得到更为精确的模型参数。
辅助损失可以引导专家网络选择更接近假定的分布。下图的结果表示,当删除辅助 loss 时,场景和任务的性能均会下降。我们进一步地绘制了门控矩阵下,选定的场景 / 任务分布与假设分布(独热和均匀分布)之间的 KL 散度的差异。可以看到增加辅助损失后,两种分布之间的 KL 散度损失是逐渐下降的。显然,加入辅助损失后模型可以稀疏地进行专家选择。
图 8:稀疏化辅助 loss 的训练收敛对比
专家选择的可视化
我们可视化了支付宝数据集中,场景 / 任务的 specific/share 组的专家利用率,即 gate 激活程度。为了简单起见,每个层(即通道、域和任务)都包含两层专家选择层。
特定专家集和共享专家集都配置为仅选择一位专家 (topk=1)。下图显示,在 channel 级别,共享同一类型通道的场景具有更相似的分布。这表明我们的模型可以动态地模拟复杂的共享信息和场景之间的差异。相比之下,PLE 以静态方式定义特定 / 共享专家。在任务层面,我们观察每项任务,几乎在特定 / 共享组中选择一位专家,这意味着我们的模型也可以收敛到 PLE 设置。
这些观察结果表明,AESM^2 是一种更通用的模型,可以适应不同场景 / 任务的不同结构。
图 9:不同层级专家的被选择概率可视化对比
AESM 自动专家选择的讨论
为了定性的讨论这个问题,就需要先思考多场景和多任务问题的本质区别是什么?
多场景和多任务,都属于多目标问题的一个子集。笔者认为,多场景问题本质上要求泛化性,帕累托最优中的资源是模型参数的归属,任何一个事件(如点击和转化),不可能在两个场景同时发生;而多任务问题恰恰相反,帕累托最优的资源约束,主要是参数权重本身,是梯度冲突导致的参数更新方向的冲突,但并不特别强调泛化性:通常模型参数量越大,帕累托前沿越向前,但却会损伤泛化性,这一点可通过下图的实验证明,来自文献 [13]。
参数量会显著地影响多任务模型的泛化性和效率。因此要想同时解决多场景多任务,就必须平衡效率(帕累托前沿)和泛化性,它们是天然冲突的。解决这一问题最直观的思路,是通过 bottleneck 网络结构,在靠近输出层增加模型参数,提升帕累托前沿;而在底层施加稀疏性约束,使得底层提升泛化性。
值得指出,如果只是解决多任务优化问题,会有很多方法可以做到。但 AESM 方法却通过相当简单的方式,通过施加噪声和稀疏化,在类似 MMOE 的框架下,实现了类似 bottleneck 和 dropout 的思路来实现专家选择,让参数尽量在底层而不是上层实现共享,进而一定程度上平衡了多场景和多任务分别要求的泛化性和帕累托前沿的问题。
五、业务效果和在线实验
线上推全实验
我们在 2022 年 1 月底开始,与四个场景的线上基线(基于行为序列的 DIN+ESMM) 进行了两周的在线 A/B。效果显著优于其他所有场景,并进行了推全。
以下是在各个场景各自的提升(其中在主搜热门基金和主搜基金产品观察到 darwin 实验的置信提升):
以下是所有场景汇总后,实验桶相比基准桶整体的提升:
线上消融实验
尽管我们做了扎实的离线消融实验。但与强 baseline,如双层 PLE 等方法进行线上 AB 对比,则更能反映算法和系统的真实性能。
为验证 AESM 模型有效性, 我们在主搜、垂搜的热门基金和基金产品四个场景分别设计如下四组实验:
通过实验我们发现,对基金搜索所有的曝光点击行为数据来看,AESM 分桶在 UVCTR, CTCVR 和 UV_CTCVR 三个指标上相比其他基线有显著提升。其中关键指标 CTCVR,相比统一训练 + 单层 PLE 提升 4.7%。
以 CTCVR 为 KPI,拆解到不同场景的的效果对比。垂搜基金产品作为主力场景,其他场景为其带来的优势微乎其微,但是它可以较强地为其他稀疏场景提供迁移效果,具体见下图:
我们将以上数据绘制到下图中,可更明确地体现 AESM 的优势:
图 10:通过线上消融实验,与其他方法的效果对比
六、总结和后续改进
目前 AESM 已经在数金搜索的基金主场景进行了全流量部署。这可能是第一个在统一框架内,同时解决 MSL 和 MTL 问题的方法,并具有以下优点:
值得指出,AESM 后续有一些值得继续探索的方向。
AESM 和谷歌最新的 MOE 架构 Pathways 有一些相似性,能帮助我们实现更多异构任务的统一训练和优化。后续我们会积极地探索新的改进计划。欢迎业界同仁共同讨论。
七、参考文献
[1] Rich Caruana. 1997. Multitask learning. Machine learning 28, 1 (1997), 41–75.
[2] Yuting Chen, Yanshi Wang, Yabo Ni, An-Xiang Zeng, and Lanfen Lin. 2020.Scenario-aware and Mutual-based approach for Multi-scenario Recommendationin E-Commerce. In Proceedings of the International Conference on Data Mining Workshops (ICDMW). IEEE, 127–135.
[3] Yulong Gu, Wentian Bao, Dan Ou, Xiang Li, Baoliang Cui, Biyu Ma, Haikuan Huang, Qingwen Liu, and Xiaoyi Zeng. 2021. Self-Supervised Learning on Users’ Spontaneous Behaviors for Multi-Scenario Ranking in E-commerce. In Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 3828–3837.
[4] Sepp Hochreiter and Jürgen Schmidhuber. 1997. Long short-term memory. Neural computation 9, 8 (1997), 1735–1780.
[5] Robert A Jacobs, Michael I Jordan, Steven J Nowlan, and Geoffrey E Hinton. 1991.Adaptive mixtures of local experts. Neural computation 3, 1 (1991), 79–87.
[6] Diederik P Kingma and Jimmy Ba. 2014. Adam: A method for stochastic optimization.arXiv preprint arXiv:1412.6980 (2014).
[7] Wouter Kool, Chris J Maddison, and Andriy Mnih. 2021. Unbiased Gradient Estimation with Balanced Assignments for Mixtures of Experts. arXiv preprint arXiv:2109.11817 (2021).
[8] Pengcheng Li, Runze Li, Qing Da, An-Xiang Zeng, and Lijun Zhang. 2020. Improving Multi-Scenario Learning to Rank in E-commerce by Exploiting Task Relationships in the Label Space. In Proceedings of the 29th ACM International Conference on Information & Knowledge Management. 2605–2612.
[9] Ting Liang, Guanxiong Zeng, Qiwei Zhong, Jianfeng Chi, Jinghua Feng, Xiang Ao, and Jiayu Tang. 2021. Credit Risk and Limits Forecasting in E-Commerce Consumer Lending Service via Multi-view-aware Mixture-of-experts Nets. In Proceedings of the 14th ACM International Conference on Web Search and Data Mining. 229–237.
[10] Jiaqi Ma, Zhe Zhao, Jilin Chen, Ang Li, Lichan Hong, and Ed H Chi. 2019. Snr: Sub-network routing for flexible parameter sharing in multi-task learning. In Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 33. 216–223.
[11] Jiaqi Ma, Zhe Zhao, Xinyang Yi, Jilin Chen, Lichan Hong, and Ed H Chi. 2018.Modeling task relationships in multi-task learning with multi-gate mixture-ofexperts.In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 1930–1939.
[12] Xiao Ma, Liqin Zhao, Guan Huang, ZhiWang, Zelin Hu, Xiaoqiang Zhu, and Kun Gai. 2018. Entire space multi-task model: An effective approach for estimating post-click conversion rate. In Proceedings of the 41st International ACM SIGIR Conference on Research & Development in Information Retrieval. 1137–1140.
[13] Yuyan Wang, Zhe Zhao, Bo Dai, Christopher Fifty, Dong Lin, Lichan Hong, Ed H. Chi. Small Towers Make Big Differences
© THE END
转载请联系本公众号获得授权
投稿或寻求报道:content@jiqizhixin.com