2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

多任务学习在推荐算法中的应用(三)

  • 2020-01-07
  • 本文字数:2313 字

    阅读完需:约 8 分钟

多任务学习在推荐算法中的应用(三)
  1. 阿里 ESM2


Conversion Rate Prediction via Post-Click Behaviour Modeling


前面已经介绍过一种基于多任务学习的 CVR 预估模型 ESMM,但对于 CVR 预估来说,ESMM 模型仍面临一定的样本稀疏问题,因为 click 到 buy 的样本非常少。但其实一个用户在购买某个商品之前往往会有一些其他的行为,比如将商品加入购物车或者心愿单。如下图所示:



文中把加购物车或者心愿单的行为称作 Deterministic Action ( DAction ),表示购买目的很明确的一类行为。而其他对购买相关性不是很大的行为称作 Other Action ( OAction )。那原来的 Impression→Click→Buy 购物过程就变为:



Impression→Click→DAction/OAction→Buy 过程。


ESM2 模型结构:



那么该模型的多个任务分别是:


❶ Y1:点击率


❷ Y2:点击到 DAction 的概率


❸ Y3:DAction 到购买的概率


❹ Y4:OAction 到购买的概率


并且从上图看出,模型共有 3 个 loss,计算过程分别是:


❶ pCTR:Impression→Click 的概率是第一个网络的输出。


❷ pCTAVR:Impression→Click→DAction 的概率,pCTAVR = Y1 * Y2,由前两个网络的输出结果相乘得到。


❸ pCTCVR:


Impression→Click→DAction/OAction→Buy 的概率,pCTCVR = CTR * CVR = Y1 * [(1 - Y2) * Y4 + Y2 * Y3],由四个网络的输出共同得到。其中 CVR=(1 - Y2) * Y4 + Y2 * Y3。是因为从点击到 DAction 和点击到 OAction 是对立事件。


随后通过三个 logloss 分别计算三部分的损失:



最终损失函数由三部分加权得到:



  1. YouTube 多目标排序系统


Recommending What Video to Watch Next: A Multitask Ranking System


本文主要解决了视频推荐场景下普遍存在的两个问题:


❶ 视频推荐中的多任务目标。比如不仅需要预测用户是否会观看外,还希望去预测用户对于视频的评分,是否会关注该视频的上传者,否会分享到社交平台等。


❷ 偏置信息。比如用户是否会点击和观看某个视频,并不一定是因为他喜欢,可能仅仅是因为它排在推荐页的最前面,这会导致训练数据产生位置偏置的问题。


模型结构:



从上图可知,整个模型需要预测两大类目标,分别是:


❶ Engagement objectives:主要预测用户是否点击和观看视频的时长。其中通过二分类模型来预测用户的点击行为,而通过回归模型来预测用户观看视频的时长。


❷ Satisfaction objectives:主要预测用户在观看视频后的反馈。其中使用二分类模型来预测用户是否会点击喜欢该视频,而通过回归模型来预测用户对于视频的评分。


模型中有两个比较重要的结构:Multi-gate Mixture-of-Experts ( MMoE ) 和消除位置偏置的 shallow tower。


MMoE 的结构为:



Shallow tower 的结构为:



通过一个 shallow tower 来预测位置偏置信息,输入的特征主要是一些和位置偏置相关的特征,输出的是关于 selection bias 的 logits 值。然后将该输出值加到子任务模型中最后 sigmoid 层前,在预测阶段,则不需要考虑 shallow tower 的结果。值得注意的是,位置偏置信息主要体现在 CTR 预估中,而预测用户观看视频是否会点击喜欢或者用户对视频的评分这些任务,是不需要加入位置偏置信息的。


  1. 知乎推荐页 Ranking 模型


上图是知乎在推荐场景下使用的多目标模型,预测的任务包括点击率、收藏率、点赞率、评论率等,共 8 个目标。可以看出知乎的做法也是底层 embedding 和 DNN 前几层权重设置成共享。损失函数可设置成这几个 task 的简单线性加权和。上线后线上性能:点击率基本不变,而其他的几个指标,比如点赞,收藏大幅提升。


  1. 美图推荐排序多任务


模型结构:


如上图,Multi-task NFwFM 模型的前几个隐层是共享的。在最后即将预估多个目标时通过全连接层进行拆分,各自学习对应任务的参数,从而专注地拟合各自任务。在线上预估时,因为模型尺寸没有变化,推理效率和线上的点击率预估模型一致。考虑到我们是在点击率任务的基础上同时优化关注转化率,融合公式上体现为优先按照点击率排序再按照曝光→关注的转化率排序。Multi-task NFwFM 已在美图秀秀社区首页 Feeds 推荐、相关推荐下滑流全量上线。首页 Feeds 点击率+1.93%,关注转化率+2.90%,相关推荐下滑流人均浏览时长+10.33%,关注转化率+9.30%。


  1. 小结


当我们在推荐场景需要同时优化多个目标时,多任务学习就可以派上用场。那反过来思考一个问题,在什么样的情况下,多任务学习会没效果呢?其实也很容易想到,当多个任务的相关性没那么强时,这些任务之间就会相互扰乱,从而影响最后的效果。


最后总结下现在多任务学习模型的主要使用方式:


❶ 底层 embedding 和 mlp 参数共享,上层演化出各个任务的分支,最后 loss 函数是各个任务的简单加权和。


❷ 通过多任务之间的关系来建模出新的 loss 函数,比如阿里的 ESSM,ESSM2。


❸ 通过 Multi-gate Mixture-of-Experts ( MMoE ) 这种特殊的多任务结构来学习出不同任务的权重,比如 YouTube 的多任务模型。


参考链接:


https://arxiv.org/pdf/1804.07931.pdf


https://www.jianshu.com/p/35f00299c059


https://arxiv.org/pdf/1805.10727.pdf


https://www.jianshu.com/p/aba30d1726ae


https://tech.meituan.com/2018/03/29/recommend-dnn.html


https://zhuanlan.zhihu.com/p/70940522


https://arxiv.org/abs/1910.07099


https://www.jianshu.com/p/c06e9ed08dd1


https://www.jianshu.com/p/2f3dbbfc16a6


https://zhuanlan.zhihu.com/p/89401911


知乎推荐页 Ranking


原文链接:


https://zhuanlan.zhihu.com/p/78762586


https://zhuanlan.zhihu.com/p/91285359


本文转载自 DataFunTalk 公众号。


原文链接:https://mp.weixin.qq.com/s?__biz=MzU1NTMyOTI4Mw==&mid=2247496333&idx=1&sn=da03f8db68e5276cffe73e090ac271ec&chksm=fbd740e1cca0c9f76da90a713311bac81e9890c1f9fd69976705e167dd30e4135db6ea297d6b&scene=27#wechat_redirect


2020-01-07 09:501470

评论

发布
暂无评论
发现更多内容

AI 英语学习 App 的开发

北京木奇移动技术有限公司

AI教育 软件外包公司 AI英语

火山引擎发布Data Agent新能力,推动用户洞察进入“智能3.0时代”​

字节跳动数据平台

洞察先机:如何从全球媒体监测数据中捕捉下一个市场趋势?

沃观Wovision

舆情监测 出海媒体监测 媒体监测 全球媒体监测

大模型推理服务架构

陈一之

大模型 应用架构

accept err=24:Too many open files 问题解决

webrtc developer

大数据-144 Apache Kudu:实时写 + OLAP 的架构、性能与集成

武子康

大数据 spark 分布式 kudu Apache Kudu

移动应用APP开发搭建自动化测试框架经验分享

禅道项目管理

程序员 自动化测试 移动端测试

黑帽大会与DefCon29演讲:UEFI固件供应链与RISC-V芯片故障注入技术

qife122

漏洞挖掘 固件安全

极氪与火山引擎深化合作,Data Agent赋能车辆数据管理效率

字节跳动数据平台

BendSQL v0.30.3 Web UI 功能介绍

Databend

如何构建 AI 智能体(2025 完全指南)

码界行者

AI智能体

MyEMS:开源时代下的智能能源管理新选择

开源能源管理系统

开源 能源管理系统

真实迁移案例:从 Azkaban 到 DolphinScheduler 的选型与实践

白鲸开源

大数据 开源 大数据任务调度 Apache DolphinScheduler Azkaban

AI实盘交易实验:大模型金融应用潜力与落地挑战深度剖析

EasyLink_ai

人工智能 金融科技 非结构化数据 OCR 大模型

信息安全建设文档,信息安全评估方案

金陵老街

信息安全

区块链U 卡 App 的开发

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

开源破局!MyEMS 如何让企业能源管理告别 “高价闭源”,轻松踩中双碳节奏?

开源能源管理系统

开源 能源管理系统

国科云全面解析DNS解析不生效的原因和解决方法

防火墙后吃泡面

区块链 DApp 开发流程

北京木奇移动技术有限公司

dapp开发 区块链开发 软件外包公司

怎样为你的 RAG 应用选择合适的嵌入模型?

Baihai IDP

AI LLM 检索增强生成 嵌入模型 RAG 系统

京东拍立淘API开发指南:从零开始构建图像搜索应用

Datafox(数据狐)

京东API 京东图片搜索接口 京东拍立淘API 京东图片数据采集 京东图片识别接口

【案例分享】灯塔低代码平台助力高校数字化转型

中烟创新

低代码流程发起全攻略:4 种方式 + 数据规则,审批流程快速落地

引迈信息

哪些产品设计软件值得推荐?3个主流设计工具盘点

职场工具箱

产品经理 产品设计 设计师 figma ui设计

AI 英语学习 App 的开发流程

北京木奇移动技术有限公司

AI教育 软件外包公司 AI英语

有奖征集,聊聊「5 周年,你与龙蜥的故事」

OpenAnolis小助手

操作系统 龙蜥社区

直播预告 | 如何运用Scrum打造一个高绩效的团队

ShineScrum

敏捷 高效 团队成长 敏捷活动 敏捷之旅

在AI技术唾手可得的时代,挖掘新需求成为制胜关键——某知名AI应用构建平台需求洞察

qife122

开源项目 需求分析 AI应用开发

出海舆情监测服务商终极选择:2025年TOP 5综合实力对比

沃观Wovision

舆情监测 海外舆情监测 出海舆情 舆情服务

第四届人工智能与教育国际学术会议(ICAIE 2025)

搞科研的小刘

人工智能

购买正版Abaqus提供培训吗?Abaqus对设备有要求吗?达索代理商思茂信息帮你一次理清!

思茂信息

abaqus 有限元分析 有限元仿真

多任务学习在推荐算法中的应用(三)_文化 & 方法_Alex-zhai_InfoQ精选文章