多任务和多场景在华为推荐系统中的应用

首先来介绍一下华为多任务推荐的场景。

因此我们通过多任务联合建模的方式来缓解样本的稀疏性问题,同时也希望不同任务之间可以彼此协同提升。

1、多任务和多场景的对比

首先建模空间主要可以分为两部分,分别是目标空间和样本空间。多任务的目标空间是不同的,比如有点击率、激活率等,但是样本都是来自于同一个空间,比如相同的样本和特征空间。而多场景往往是相反的,其训练数据来自于不同的场景,样本空间也往往是不同的,会有着不同的数据分布和特征集合,但预测任务又都是同类型的,比如点击率。当然最近也有一些多场景和多任务联合优化的场景和算法,这里就不具体展开了。

2、算法分类

3、算法介绍

(1)多任务算法:TAML

第一篇是我们发表在www2023的一篇工作(TAML),这个工作主要是覆盖分类中的级联任务,还有联合训练以及一些训练机制。

TAML主要针对的挑战有两点,一点是转化样本稀疏,如果只是通过简单的任务级的专家网络融合,是无法提供足够信息的,而且这些信息会存在一些偏差。另外一点是模型预估的鲁棒性问题,我们表征以后的分类网络存在训练不够充分的问题,就会导致最终训练的预测结果不够鲁棒。

针对以上两个问题,TAML的框架主要包括两个模块,一个是多层级任务自适应表征提取模块,主要是通过多层级的专家网络提取多粒度的多任务知识表征;第二个模块是蒸馏多学习器模块,主要是通过构建多学习器,并通过蒸馏实现多学习器之间的知识共享,提高预估网络的稳定性。

接下来对这两个模块分别做一些简单的介绍。

第一个模块,多层级任务自适应表征提取模块,主要是用于底层表征的抽取。通过三种多级专家网络来构建,一种是共享的多专家网络,另一种是任务级别的特有专家网络,还有学习器级别的专家网络。这里的学习器是为了缓解任务的稀疏性问题,并提高任务表征的稳定性,为每个任务又单独构建了多个学习器,就可以从多个视角提取任务表征。最终三个表征会通过一个门控网络进行融合,输出最终的表征。

第二个是MLSD学习器模块,主要用于预估网络的优化,多个学习器可以从不同的视角学习同一个任务不同的信息,最终我们会用不同的学习器的均值作为融合学习器的知识输出。在此基础之上,我们会构建一个正则化的损失,约束每个学习器和融合学习器之间的距离,从而实现不同学习器之间的信息共享,也以此来提高预估网络的鲁棒性。

我们这个工作分别在公开数据集和华为的私有数据上做了一些验证,相比SOTA都取得了比较显著的效果增益。另外,从下图中左下角的图可以看到不同层级的专家网络对最终表征的贡献度,在不同任务以及不同的学习器中,三种专家网络所提取出来的信息的重要性是有所不同的。比如,对于CVR任务,它学出来的学习器级别的参数网络的权重会更重一些。

(2)多场景算法:CausalInt

第二个工作是我们发表在KDD2022的一个工作(CausalInt),这个工作主要覆盖分类中多塔分类器以及软共享,还有包含了一些负向信息迁移的梳理,以及动态权重网络的场景自适应参数的调节。

这里我们借助了因果图来对多场景建模的问题进行了分析。首先我们从用户的视角对多场景推荐进行一个描述。在图(a)中,xn是用户在场景n下的一个行为,yn是用户在场景n下的一个操作,比如点击。x表示与场景无关的一些用户偏好,用户在场景n下产生的操作yn其实是受到用户在该场景下的一些行为,以及用户本身的一些偏好所共同作用的结果。

我们再从建模的视角来对多场景的建模过程进行一个描述,可以看出在场景数据混合在一起进行建模的时候,不同变量的关系就会变得更加复杂。

X1表示的是与场景无关的用户表征,但是它受到了场景感知表征Dn和用户在场景n下的表征的一些影响,表示的是模型对于用户在场景下点击行为的预估,但是它受到了其他场景感知信息的影响,还有其他场景的比如用户行为的影响,在预估的时候存在一些偏差,并且无法取得比较好的推荐效果。也就是在建模的过程中,我们没有考虑到一些偏差信息以及有效的信息迁移。

为了实现建模过程的视图更和用户视图的因果图更加匹配,也就是解决建模中的偏差问题,我们提取出了多场景联合建模时的三个关键挑战。第一个挑战是如何有效的提取场景之间的共性。第二个挑战是如何保留产品中的一些特定信息,同时消除其他场景引入的一些负向信息,主要是处理如何有效提取xn,第三个挑战就是如何探索并迁移场景感知的一些信息。

为了解决这些挑战,我们借助因果干预的策略。对这里的Dn对Xn,还有Xn对Yn实施干预。在我们真实的商业推荐系统中,其实我们很难从数据的角度或者实验的角度来采取真实的干预策略,因此我们这里是考虑使用学习的方式来对这种干预进行一个模拟,切断容易产生混淆的因果路径。

我们提出了三个模块。第一个模块是共性提取模块,也就是红色部分。第二个模块是中间的负向影响去除模块,就是灰色的部分。第三个是场景信息的迁移模块,就是黄色的这一部分。接下来对这三部分内容分别做一个具体的介绍。

首先是共性提取模块。我们主要是通过结构表征的方式来把场景感知场景敏感的一些信息分离至独立的分支网络里,然后通过构建4个不同的任务来提取场景特有表征或者场景不变表征。这4个任务中的第一个是最左边的generalclassifier,它主要是基于提取的场景无关的表征,剔除与场景敏感的一些信息后,所对应的一个统一分类器,也就是所有场景共享的一个ctr预估任务。第二个就是把场景敏感信息分离出来之后,用场景的敏感信息的表征去构建一个场景的判别器,也就是判别样本是来自于哪个场景。第三个任务就是将场景表征和场景感知表征联合在一起,再去构建一个ctr预估的generalclassifier。最终为了有效地提取这两个表征,并且让这两个表征做到尽量的正交,这里会有真正一个正则化的约束。通过这4种方式,进行无偏表征的提取,作为后续建模的基础。

第二个模块是负向影响去除模块。可以进一步划分为两部分,第一部分是场景特有的一些表征以及场景共有的一些表征之间的梯度冲突问题。比如场景的特有的分类器和回传的梯度,还有共有的分类器回传梯度,对于共享表征的一些冲突问题。

第二个冲突就是不同的场景自有的一些分类器所回传的梯度对于共有表征的一些影响。我们针对这两个不同的冲突使用了两种不同的策略。针对于第一种冲突,我们使用了meta-learning的MAML训练方式来解决场景特性表征和共性表征之间的冲突问题。针对第二种冲突,自有的共享表征之间的梯度冲突问题是采用一个施密特正交化的过程,然后实现一个梯度的正交基,来约束他们之间的一个梯度方向,从而解决这个维度的梯度冲突问题。

第三个模块是信息迁移模块。这个部分模拟了实验的干预策略,让单个场景中出现的user-item表征分别和不同场景的信息进行一个交互。

我们模拟的是如果场景的user-item交互出现的场景j中,它会有一个什么样的结果,这样一个反事实的问题,并将多个场景的评分网络,作为多个专家,对这一个交互进行打分。最终会用第一个模块学习到这个场景的表征所对应的场景的分类器,对当前样本进行一个加权,也就是预测有多大的概率去相信当前这个场景所对应专家的一个打分结果,从而实现专家网络输出的分数的融合,从而实现不同场景之间的信息迁移。

我们把模型在一份公开数据集和华为私有数据集上做了一些离线的AB实验,可以看到相比于单场景建模多任务模型,还有一些迁移学习的微调模型,包括多场景的一些基线模型,相对来说都会有比较明显的效果增益。

我们对模型的各个模块进行了一些消融分析。整体上看,各个子模块都带来了一些效果上的增量。比如表8中,我们进行了场景信息迁移模块中不同注意力网络的实现方式的对比,比如直接做multiply、或者直接用mmoe类似的这种端到端训练做一个gate网络去做多专家分数的融合,可以看到,还是我们通过构建判别模型训练出来的gate网络的效果会更好一些。

(3)多场景算法:DFFM

接下来第三个要介绍的是我们发表在今年CIKM的一个工作,叫DFFM,这块工作主要是面向单塔的多场景建模模型,利用动态权重网络,对特征交互还有用户行为进行场景自适应的学习。

特征交互和用户行为,做推荐的同学应该都比较了解,是CTR模型中很重要的两个概念。

特征交互是很多深度推荐学模型的基础,比如我们通常会通过手动的方式或者设计神经网络的方式来实现二阶、三阶的交互构建,或者直接通过MLP构建更高阶的隐式交互。

用户在不同场景下会产生不同的行为,体现在特征交互上,会根据场景而有所差异,也就是说不同的特征交互在不同场景上应该会有不同的权重。其次,用户行为可以反馈出用户的一些兴趣,用户在不同场景下产生的历史行为反映出用户在当时场景下的一些特定偏好,因此我们在多场景联合建模的时候也应该考虑这两点,即多场景下的共性和特性。

因此我们提出了一个面向特征交互以及用户行为场景感知的建模模型DFFM。它主要包含两个模块。第一个DFFI,是场景感知的特征交互模块,第二个DFUB,是场景感知的用户行为模块。

场景感知的特征交互模块以内积的交互方式为例,在不区分场景条件下,其实交互方式就是为两个特征向量直接做内积,在多场景下,我们会使用一些场景的表征,比如domainid,然后把这种场景表征进行一个转化和拆分,成立一个动态权重的网络,对原始特征进行一个转化。比如就是一个场景表征,通过转化和拆分,把它分解成一个权重网络和偏置,然后以此来对我们的一些原始特征,比如这里的ei和ej做一个转化,在此基础之上再进行二阶或者多阶的特征交互,最终和原始的向量concat到一起,获得DFFI模块的一个输出表征。这里交互方式肯定是不局限于内积,也可以是外积或者是DCN、autint的一些交互方式。

最终我们会综合DFFI和DFUB两个模块的表征构建一个分类器,这个分类器可以是一个简单的MLP,或者其他更高级的一些分类网络,还可以再叠加一些交互网络。

这里展示了DFFM在两份公开数据上的一些离线效果评估,可以看到其相对于已有的一些SOTA模型,可以带来比较明显的效果增益。

同时我们把这个模型在三方媒体的场景上去做了落地,因为它的场景数量相对来说比较多,而且不是很确定,我们这里使用了一个单塔的模型进行上线和验证。可以看到逐步上线了DFFI模块以及完整的DFFM模块,效果上都是有着比较明显的增益,这里展示的是ecpm收益。

最后,我们整理了近期发表的一些多场景和多任务方面的工作。

前两个是多任务方面的,第一个就是TAML,基于多粒度的专家网络和级联学习的多任务优化;第二个是面向多任务的特征选择框架。

下面五篇主要面向的是多场景建模,比如DFFM面向特征层面,主要包括一些特征的交互和用户行为的建模;HAMUR是面向交互网络的场景适配器网络;Instance主要是面向样本层面的,也就是多场景中的样本选择算法;刚才介绍的CausalInt,主要是面向多场景的训练框架,着重解决负向信息的迁移问题;PLATE是一个基于提示学习的迁移学习的新范式。

最后两个是做多任务学习的联合训练。综合了多任务、多场景,多模态、多行为、多兴趣,以及语言模型辅助推荐系统去做推荐的联合建模方案。

Q1:模型离线全量训练的时候,比如用90天样本,实验要比base好,但模型天级增量更新时实验比base的效果变差了,了解一下可能是哪些原因?

A1:主要是工程和算法的影响,工程上增量训练依赖实时特征获取以及实时样本回流,主要涉及到样本的准确性;算法层面上,增量更新时,也会有一些策略影响模型更新的效果,比如学习率,样本从一个batchsize到一个小批量的增量训练,学习率通常需要做一些调整,比如衰减或者更小的量级。然后是特征的准入和淘汰上也会影响模型效果。然后不同的算法在增量训练过程中会有不同的策略,比如蒸馏模型的滚动蒸馏,这些也都会影响模型效果,具体问题需要具体排查了。

Q2:多任务学习中有没有一个额外的学习信号?就是通过什么方式来让这三种不同类型的专家学到不同的知识?

A2:现在很多包括我们像MMOE,还有PLE这些基于多专家网络,然后加上稀疏性门控网络的这种模型,其实都会采用这种方式非常隐式的方式去学习他们权重之间的一个分布。一点是参数的初始化方式和随机种子。第二点是专家权重网络的输出上增加一些扰动,扰动可以岁训练过程逐渐减少。

Q3:主场景可能样本比较多,可能会支配整个学习过程,有没有试过多个场景做一个自适应的规划,就类似阿里star模型,类似的一些方式有没有用过?

A3:其实我们之前和他们作者有过一些交流,就是这种方式可能在同一个batch内,如果是有不同的场景的数据,特别是场景数据比较多,然后你batch又比较小,这种情况下效果其实不是特别好。但是如果是像阿里这边直接使用那种交替式训练,比如说一个batch只有一个场景的数据,其实还是有一定的效果的。针对于这个之支配参数,其实刚才有介绍过一个梯度主导的问题,其实这篇这块也有一些工作,然后我们其实之前也尝试过,其实一个最简单方法就是类似于grandnorm,直接从梯度的量纲去做一对梯度做一些惩罚,对梯度大的,根据训练的step去调节当前这个任务所对应loss的权重。

THE END
1.海尔智家APP的智能家居嘲推荐功能如何开启?4、开启场景推荐功能: 一旦设备成功添加,海尔智家APP通常会自动开启一些基础的场景推荐功能,但为了更深入地定制和探索,你可以在APP的“场景”或“智能场景”板块寻找更多选项,这里可能会有一个“智能场景推荐”或“发现场景”的选项,点击进入后,APP会根据已添加的设备推荐相应的自动化场景,离家模式”、“回家模式”、https://www.sousou.com/wd/1127304.html
2.360安全卫士嘲感知推荐提醒如何开启360安全卫士场景感知推荐提醒如何开启 打开360安全卫士主界面,点击右上角的主菜单选项(即三横线的图标),如图所示。 在菜单界面中选择“设置”这一选项,如下图所示。 进入“弹窗设置”选项后,勾选“开启场景感知推荐提醒”,最后点击“确定”即可,如图所示。http://www.360doc.com/content/24/0312/11/79262026_1116923854.shtml
3.淘宝嘲推广如何设置?设置淘宝嘲推广有什么好处?4、设置完成后,点击“提交”或“保存”按钮,即可完成场景推广的设置。 5、值得注意的是,淘宝场景推广的设置并不是一成不变的,卖家可以根据自己的需求和实际情况随时进行调整和优化。淘宝平台也会根据市场变化和用户需求不断更新和完善场景推广的功能和设置方式,卖家需要及时关注并学习新的操作技巧和方法。 https://www.jiulangdianshang.com/kaidianliucheng/6791.html
4.奕派嘲大师功能推荐eπ007不过语音操控虽然确实更加方便,但开车时对于一些每天经常要使用的功能,次次单独用语音操控确实也很麻烦…不过好在!奕派有个智能定制化极高的功能:场景大师!来专门解决这个痛点! 场景大师的基本逻辑是,车主自定义所需要的功能触发场景,当某个条件环境满足触发条件,相对应的功能就会自动开启!所以只要设置好场景,连任何多https://club.m.autohome.com.cn/bbs/thread/91194c136e26baf4/109256307-1.html
5.360嘲推荐功能是什么意思推荐软件。360场景推荐功能就是结合多场景分发模式,让用户在任何场景都能轻松获取自己所需要的APP,因此360场景推荐功能的意思是推荐软件。360手机助手是360推出的手机助手,拥有海量软件和游戏轻松下载。https://zhidao.baidu.com/question/401678582525159605.html
6.智慧嘲设置全攻略!这里有多个原创或优化过的官方场景供你选择 甚至可以根据你的需求进行私人定制哦 以下是一些超实用的智慧场景推荐 1 关爱男鹏友模式 在高温下 自动开启座椅通风 温度越高风量越大 确保你的座椅始终保持凉爽 2 下车关座椅通风加热 当你离开车辆时 自动关闭座椅通风和加热功能 https://m.yoojia.com/pages/dongtai/index?id=1911607002&from_src=magic
7.UnityMetaQuestMR开发(三):SceneAPI配置+实现虚拟与现实之间的碰?开启场景理解功能和应用访问空间数据的权限 ?OVRSceneManager ?制作 Plane Prefab 和 Volume Prefab ?运行场景 ?添加透视材质 虚拟与现实物体的碰撞(弹球 Demo) Mesh API 获取完整课程以及答疑,工程文件下载: https://www.spatialxr.tech/ https://blog.csdn.net/qq_46044366/article/details/135930423
8.轻松打造理想家,淘系家居如何为用户创造嘲化的导购体验?好看的场景图 我们设计了搭配内容展示规则,分别从:风格、视角、布局、灯光、生活等维度来制定。 (1)风格。结合行业装秀趋势,设计15套+主流风格,便于用户选择后推荐相关的商品搭配; (2)视角。分别从场景的正面和侧面,依据人的视角与高度,选取https://mp.weixin.qq.com/s?__biz=MjM5MTg2NDA3MQ==&mid=2652221170&idx=1&sn=221cde7667b8278ed78d4a8b00cec1b9&chksm=bc307f5f47e7f352f8d1d8928b29f4a268a5adeaa16a8491055997b4323eadd60f6bd22beeda&scene=27
9.小红书行业推荐功能如何使用?基于小红书内容消费和行业合作趋势,行业博主推荐功能为品牌挑选与所在行业更适配的蒲公英博主,并精选其中「内容风格更匹配」、「数据表现更靠前」、「行业受众更喜爱」的账号。以下是具体功能介绍: 一、核心特色: 一键操作:零理解成本,一键筛选操作。仅需勾选品牌所属的行业,即可获得专属博主包推荐,使用门槛更低; https://www.shuaishou.com/school/infos65865.html
10.速卖通广告“灵犀推荐”功能即将上线03、即将上线,目前已开启内测 灵犀推荐即是在此类场景触发用户下单的广告工具,将塑造更多“边逛边买”场景,让商品与潜在购买者心有“灵犀”,除了被动等待用户搜索到商品,商品也可以主动出现在用户的面前。 速卖通“灵犀推荐”服务出发点是希望能够满足到商家对主动营销的诉求,在整体买家的核心链路上都会提供给商家丰https://m.cifnews.com/article/68148/
11.33.1版本更新公告新闻※ 此公告中提到的各项新功能和更新事项可能会由于BUG、游戏内问题、玩家社区反馈等原因发生改动或删除。下文中使用的图片是在开发版本中拍摄的,与正式服中的实际样貌可能会有不同,仅供大家参考。 场景:萨诺 可破坏地图 继环境破坏的首个章节 – 荣都地形破坏功能之后,我们将在第33赛季第1轮更新中对萨诺进行改造https://pubg.com/zh-cn/news/7988
12.开启全嘲智慧生活揭秘EMUI10四大新功能EMUI10公测以来受到了广泛的好评,其中很多新功能都受到了消费者的认可。EMUI10主打全场景智慧生活的概念,期望突破设备间隔,实现智慧全连接,让你尽享全场景智慧生活。 EMUI10 畅连 EMUI10畅连可以实现全场景便捷通话,无需安装应用拨号即可与其他华为设备进行1080P高清视频通话。用户不但可以使用华为的手机、平板等智能终端https://wap.cqcb.com/shangyou_news/NewsDetail?classId=3448&newsId=2046674