查看原文
科技

​KDD 2024 | 南大提出AutoMTL框架:基于神经网络架构搜索的多任务推荐方法

蒋申 PaperWeekly
2024-09-03

©PaperWeekly 原创 · 作者 | 蒋申

单位 | 南京大学PASA大数据实验室

研究方向 | 自动化机器学习、推荐系统

论文标题:

Automatic Multi-Task Learning Framework with Neural Architecture Search in Recommendations

论文地址:

https://dl.acm.org/doi/10.1145/3637528.3671715

代码连接:

https://github.com/PasaLab/AutoMTL



摘要

多任务学习(multi-task learning,MTL)旨在充分利用多个任务中包含的知识,提高所有任务整体性能,在推荐系统中已经得到了广泛应用。MTL 模型面临的主要挑战是负迁移问题。现有的 MTL 模型主要基于混合专家(mixture-of-experts,MoE)结构,通过特征选择和特定的专家共享模式设计来寻求性能提升。

然而,由于各种任务之间复杂的相关性和多样化的需求,单一的专家共享模式可能并不普遍适用。此外,这些模型中同质的专家架构进一步限制了它们的性能。

为了解决这些问题,本文提出了一种创新的自动化多任务学习框架 AutoMTL,利用神经架构搜索(NAS)设计最优的专家架构和专家共享模式。AutoMTL 的双层专家共享模式和架构导航(Dual-level Expert Sharing mode and Architecture Navigator,DESAN)搜索空间不仅可以高效地探索专家共享模式和特征选择方案,而且能够搜索专家子网的架构。

与此同时,作者引入了一种高效的渐进式离散化可微架构搜索(Progressively Discretizing Differentiable Architecture Search,PD-DARTS)算法用于探索搜索空间。
大量实验表明,AutoMTL 始终能够超越现有的、人工设计的 MTL 模型。此外,从发现的架构也可以为多任务推荐模型架构的设计提供宝贵的指导。



引言

推荐系统旨在为用户提供个性化的推荐项目,在人们的日常生活中扮演着越来越重要的角色。大部分推荐系统通常需要同时预测多个目标,以生成高质量的推荐。例如,短视频推荐系统通常需要预测包括观看、点赞、收藏视频等在内的多种用户行为。

因此,多任务学习(MTL)已经成为在线推荐系统中广泛使用的技术。通过在同一框架内联合学习多个任务,多任务学习不仅可以提高参数和计算效率,还可以充分利用多个任务所承载的知识来提升整体性能。

基于深度神经网络的 MTL 模型依赖于任务间的参数共享来转移知识。然而,这种参数共享范式在多任务学习中引入了一个固有问题,即负迁移问题。这个问题出现的原因是多个任务可能具有复杂的相关性,甚至可能相互冲突。因此,与相关性较小的任务共享信息可能会损害性能。

最近的方法主要从以下三个方面缓解负迁移问题并提高多任务学习的性能:

  1. 像 MetaBalance 这样的方法通过平衡不同任务的损失或梯度来最小化它们的干扰;

  2. 基于混合专家(MoE)的模型利用 MoE 结构实现更灵活的参数共享模式;

  3. 特征选择方法如 CFS 和 MultiSFS 引入了专家或任务特定的特征选择,以减少任务间的冲突。

多门控混合专家(MMoE)模型是第一个利用 MoE 结构实现更灵活参数共享模式的模型。MMoE 框架通过门控网络为每个任务聚合所有专家的表示。随后的方法如 PLE 和 AdaTT  等进一步分离了任务特定和共享专家,以更好地学习任务特定和共享知识。

如图 1 所示,与 MMoE 的全共享模式相比,PLE 和 AdaTT 为多任务推荐设计了更灵活的专家共享模式。任务特定和任务共享专家各司其职,从而缓解负迁移问题。

然而,在实践中,没有任何单一的共享模式在所有数据集上始终最优。这是因为基于 MoE 的多任务模型的最优专家共享模式取决于输入数据集和任务的特征。更高任务相关性的数据从共享专家中获益更多,而任务相关性较低的数据集则需要更复杂的专家共享模式。手动设计的专家共享模式不能保证最优性。

此外,现有的基于 MoE 的多任务学习模型总是包含具有同质架构的专家,这不利于模型的性能。基于 MoE 的模型假设不同的专家子网络能够学习不同的表示,从而捕获数据的多样化属性。
然而,为不同的专家设计不同的架构是一个非常复杂和耗时的任务。为了解决这些问题,作者提出使用先进的神经架构搜索(NAS)方法自动设计多任务推荐的最优专家架构、专家共享模式和特征选择方案。

然而,将 NAS 应用于多任务学习并非易事。为了解决上述问题,作者首先设计了一个通用且表示能力充足的搜索空间,称为双层专家共享模式和架构导航(DESAN),它可以涵盖现有的和未探索的多任务模型。

在 DESAN 中,其外层探索专家的共享模式和特征选择方案,而内层则针对专家子网络的架构。专家的共享模式被概念化为不同 MoE 层中专家之间的连接。具体来说,上层 MoE 层中的专家确定采用前一层中哪些专家的输出作为输入。值得注意的是,DESAN 搜索空间表现出强大的表示能力,涵盖了现有的基于 MoE 的多任务学习模型。

此外,专家的共享模式仅考虑专家之间的连接,并不增加搜索空间内的算子数量。因此,搜索空间的紧凑性保证了优越的搜索效率,使其适合大规模多任务推荐。

为了有效地探索 DESAN 搜索空间,作者进一步提出了一种渐进式离散化可微神经架构搜索(PD-DARTS)算法。在对网络架构进行建模时,作者采用了两种类型的架构参数。一种用于在专家内选择操作,另一种用于识别专家共享模式和特征选择方案。

此外,一些研究指出,与 DARTS 的原始双层优化相比,单层优化不仅提供了可比的性能,还提供了增强的搜索效率和稳定性。因此,PD-DARTS 采用单层优化而不是双层。此外,作者提出在搜索过程中逐步使用架构参数的归一化熵对超网络进行离散化,从而消除了重新训练的必要性。

在本文中,作者将这种为多任务学习提出的自动架构搜索方法称为 AutoMTL。在五个公开多任务推荐数据集上进行的广泛实验表明,AutoMTL 在所有数据集和大多数任务中都始终超越其他基于 MoE 的多任务学习模型。此外,由架构搜索引起的时间开销与训练单个模型所需的量级一致。这证明了将 AutoMTL 应用于现实世界多任务推荐场景的可行性。

总而言之,本文的主要贡献如下:
  • 作者提出了 AutoMTL,一种新颖的多任务推荐神经架构搜索方法,以数据驱动的方式自动设计最优的专家共享模式、专家架构和特征选择方案。
  • 在真实世界的基准测试中对 AutoMTL 进行了广泛的实验评估,它一致性地超越了现有的、手工设计的多任务推荐模型。
  • AutoMTL 发现的架构可以为从业人员提供宝贵的指引,帮助他们构建新的多任务推荐模型。



搜索空间设计

DENSAN 搜索空间基于混合专家结构,涵盖了现有的基于 MoE 的多任务学习模型。搜索空间分为两层。外层专注于探索专家共享模式和特征选择方案,而内层集中在搜索异构的专家子网络架构。遵循 NAS 中的权重共享范式,搜索空间被构建为一个超网络。

如图 2 所示,专家共享模式由相邻 MoE 层之间专家或门控网络的连接表示。此外,特征选择由输入特征与特定专家或门控网络之间的连接表示。专家子网络通过堆叠类似于 DARTS 中的 Mixture-of-Operation(MoO)块来构建。顶部的任务塔用于生成相应任务的预测。

需要注意的是,专家共享模式和特征选择并不会增加搜索空间中的算子数量,从而确保了超网络的紧凑性。总的来说,搜索空间可以分为三个模块:特征选择模块、混合专家(MoE)模块和专家模块。

2.1 特征选择模块该模块为专家或门控网络选择输入特征,目的是减少与任务无关的特征的负面影响。由于显式特征交互对推荐任务的性能有显著贡献,因此作者在特征选择模块中增加了一个额外的特征交互层,专门用于通过特征交互操作识别潜在特征。所选的单个特征与交互后的特征一起作为特定专家或门控网络的输入。

2.2 混合专家(MoE)模块。该模块在表示专家共享模式方面起着至关重要的作用,为上层专家、门控网络或任务塔提供输入。搜索空间可以容纳多层的 MoE 模块。MoE 模块选择要激活的专家,然后使用门控机制聚合它们的输出。

每个 MoE 模块都包括一个门控网络,负责聚合专家的输出,其输入来自特征选择模块。正式地,设 表示 MoE 模块中的 个专家, 表示门控网络, 是当前选定的专家的索引。MoE 模块的输出可以表示为:

其中 是专家 的输入, 是门控网络中的可训练权重矩阵, 是门控网络的输入, 表示专家 的聚合权重。

2.3 专家模块该模块用于为每个专家子网络生成架构。所有专家子网络共享相同的搜索空间,但可以生成不同的架构以捕获数据不同方面的特性。专家模块由多个 MoO 块堆叠而成。每个块都包含相应层中所有可用的算子,最终只选择一个算子。

作者在专家模块中选择不同隐藏维度的多层感知器(MLP)作为候选操作,并在每个操作混合块中插入一个“跳跃连接”操作,以适应性地确定架构的深度。注意,搜索空间可以通过合并其他操作(如卷积或注意力)来灵活扩展。



搜索算法
3.1 专家模块中架构的搜索策略在专家模块中采用连续放松的可微策略。设 表示块 中的 个候选操作。所有操作的混合输出可以表示为:

其中 表示输入,每个算子 对应一个系数 ,构成架构参数 。在离散化步骤中,选择每个块中架构参数最大的算子,并丢弃得分较低的算子以提取子网络。
3.2 专家共享模式和特征选择方案的搜索策略对于 MoE 模块中的专家激活和特征选择模块中的特征选择(即图 2 中的可选连接),作者提出了一种基于概率激活的搜索策略。以专家共享模式搜索为例。考虑一个专家 ,专家选择过程可以表示为 ,其中
可以视为选择函数。MoE 模块中的每个专家或每个特征选择模块中的特征都有一个参数 与之对应,形成架构参数 。在搜索过程中,每个专家或特征以概率 被激活。这种随机选择允许在搜索过程中全面训练超网络的所有权重。
在离散化步骤中,使用阈值 确定是否保留专家或特征。通常, 可以设置为 0.5。为了通过梯度下降优化 ,使用直通估计器(STE)在反向传播期间估计 的梯度,即:

这类似于模型剪枝文献中使用可学习阈值来剪枝神经网络。

3.3 架构参数和超网络权重的单层优化。最近的工作指出,DARTS 原始的双层优化面临显著的鲁棒性问题。而单层优化可以实现与双层优化相当的性能,但具有更好的效率和稳定性。因此,PD-DARTS 算法使用单层优化,同时在训练数据上优化超网权重和架构参数。这种方法显著提高了架构搜索的效率,使其适用于大规模推荐任务。

3.4 渐进式离散化在架构搜索过程中,超网将逐渐离散化,使其逐步收敛为常规网络。这种策略的优点是消除了从头开始重新训练导出的网络的必要性,从而减少了计算开销。由于导出的网络继承了超网学习到的知识,它通常比重新训练的子网络表现更好。

作者建立了一个“离散化得分”作为选择标准的依据,以确定每个步骤中要离散化的 MoO 块、特征或专家。对于 MoO 块,离散化得分定义为其相应的架构参数的归一化熵,即:
在 MoE 模块中的专家或特征选择模块中的特征的情况下,离散化得分定义为相应的选择概率,即

算法 1 简要描述了 PD-DARTS 算法。它包括两个预热阶段:第一阶段仅在训练数据上优化超网络权重,第二阶段联合优化超网络权重和架构参数 和  。这些预热阶段确保了超网权重和架构参数的全面训练。在随后的训练过程中,对超网进行渐进式离散化。获得标准网络后,执行微调过程以得到最终的 MTL 模型。



实验
(1)整体性能:

AutoMTL 可以在所有数据集和大部分任务上取得最优的性能,并且使用于拥有大量任务的 KuaiRand-Pure 数据集,以及大规模的推荐数据集 AliCCP。
(2)搜索效率

AutoMTL  的搜索成本几乎与训练单个模型的成本在同一个数量级;卓越的搜索效率使 AutoMTL 适用于大规模推荐系统。

(3)案例分析

从发现的架构中,可以得出以下见解:

  1. 在多任务推荐中,特征选择和特征交互几乎总是有效的,可以纳入架构设计考虑因素;
  2. 虽然手动设计异构专家面临重大挑战,但在不同的 MoE 层之间使用多样化的专家架构是可行的,例如在第一层或第二层使用更紧凑的专家架构;
  3. 架构的复杂性可以根据数据集特征或数据分布进行调整。




结论

作者提出了一种基于 NAS 的多任务学习框架 AutoMTL。通过基于 MoE 的 DESAN 搜索空间,AutoMTL 不仅可以有效地探索多任务学习模型的专家共享模式和特征选择方案,还可以通过生成异质专家子网络来提升多任务学习的性能。PD-DARTS 算法能够高效地探索这个搜索空间,产生高性能的多任务模型。

大量实验结果表明,AutoMTL 始终优于现有的最先进的人工设计的多任务学习模型。AutoMTL 获得的多任务架构可以为从业者提供设计更优多任务学习模型的宝贵见解。虽然 AutoMTL 主要用于多任务推荐,但它有潜力成为一种通用解决方案,通过修改或扩展搜索空间,可以推广到其他领域。


🌟本文内容已获论文原作者独家授权发布,如需转载请联系PaperWeekly工作人员微信:pwbot02,添加时请备注「转载」。

更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·
·


继续滑动看下一个
PaperWeekly
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存