MMOE多目标学习

本文探讨了MMOE(Multi-gate Mixture-of-Experts)在多目标学习中的应用,解释了其在网络结构上的优化如何解决不同目标差异化问题。通过MMOE模型,可以在多个业务目标中实现更好的性能,尤其是在正样本稀疏的情况下。论文和实际场景优化展示了MMOE在处理大规模实时数据时的有效性,如使用不同网络结构的expert和引入公用与私有expert机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


(致力结合理论知识与互联网前沿应用场景,给读者全方位的收获)


摘要:

最近多目标模型越来越受到重视,特别在工业界有很好的应用。本文通过讲解MMOE的原理,并根据笔者在工作中应用MMOE的经验,来给大家引出这篇博文。


多目标模型的意义:

现实世界中,我们的业务目标往往不是单一的。
比如购物APP中,我们不仅仅希望你浏览商品,也希望你购买商品,甚至分享商品,评论商品。
比如短视频推荐,我们不单希望你看视频,也希望你点赞、评论、分享视频,还希望你能关注发布的作者。
因此多目标模型的出现,就可以让我们的场景同时服务到这些目标。于此同时,对于一些正样本稀疏的目标,多目标模型甚至可以让他们的目标实现远超预期。


为什么要使用MMOE实现多目标:

1、MMOE通过特殊的模型结构达到了一个模型实现多个目标的能力
2、MMOE通过模型结构的优化使各项目标都很好的实现
3、MMOE可以通过网络共享帮助正样本稀疏的目标更好地达成


论文标题和链接:

论文地址先供上,想硬撸原文的同学请享用:
标题:Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts
链接:https://dl.acm.org/doi/10.1145/3219819.3220007


MMOE网络结构

在这里插入图片描述

MMOE的网络结构衍化图,衍化的过程是为了更好地解决多目标问题。图( a ) 到

### MMOE 多目标场景下的实际应用效果 MMOE(Multi-gate Mixture-of-Experts)模型是一种有效的架构,在处理多目标任务时表现出色。该模型通过共享底层特征表示并允许不同任务之间的协作来提高性能。 #### 模型结构与工作原理 MMOE 架构由多个专家网络组成,这些专家网络负责捕捉输入数据的不同方面。每个专家网络可以专注于特定类型的模式识别。对于不同的目标任务,存在独立的门控机制,用于决定哪些专家的知识应该被利用于特定的任务预测中[^1]。 ```python import tensorflow as tf from tensorflow.keras.layers import Input, Dense def build_mmoe_model(input_dim, num_experts=8, expert_units=64, tasks=['task1', 'task2']): input_layer = Input(shape=(input_dim,)) # Experts layer experts_outputs = [] for _ in range(num_experts): expert_output = Dense(expert_units, activation='relu')(input_layer) experts_outputs.append(expert_output) outputs = [] for task_name in tasks: gating_network = Dense(len(experts_outputs), activation="softmax")(input_layer) weighted_sum = sum([gating_network[:, i:i+1]*experts_outputs[i] for i in range(len(experts_outputs))]) output_for_task = Dense(1)(weighted_sum) outputs.append(output_for_task) model = tf.keras.Model(inputs=input_layer, outputs=dict(zip(tasks, outputs))) return model ``` 这种设计使得 MMOE 能够有效地应对复杂的现实世界问题,其中可能涉及多种相互关联的目标变量。例如,在推荐系统中,除了点击率之外还可以优化转化率;在广告投放领域,则可同时考虑CTR(Click Through Rate)、CVR(Conversion Value Rate)等多个指标。 #### 实际应用场景中的表现 研究表明,在许多情况下,采用 MMOE 方法能够显著提升整体系统的效率和准确性。特别是在那些具有高度相关性的子任务上,由于参数共享带来的正则化效应以及更丰富的表征能力,往往可以获得更好的泛化能力和更高的精度[^2]。 然而值得注意的是,尽管 MMOE 提供了一种强大的框架来进行多目标学习,但在具体实施过程中仍需仔细调整超参数设置,并针对具体的业务需求定制相应的损失函数形式以达到最优解。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值