写点什么

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

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

    阅读完需:约 3 分钟

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


导读:我们在优化推荐效果的时候,很多时候不仅仅需要关注 CTR 指标,同时还需要优化例如 CVR ( 转化率 )、视频播放时长、用户停留时长、用户翻页深度、关注率、点赞率这些指标。那么一种做法是对每个任务单独使用一个模型来优化,但是这样做的缺点显而易见,需要花费很多人力。其实很多任务之间都是存在关联性的,比如 CTR 和 CVR。那么能不能使用一个模型来同时优化两个或多个任务呢?其实这就是 Multi-task 多任务的定义。本文主要总结了近两年工业界关于 Multi-task 模型在推荐场景的一些应用和工作。

1. 阿里 ESMM

Entire Space Multi-Task Model: An Effective Approach for Estimating Post-Click Conversion Rate


CVR 是指从点击到购买的转化,传统的 CVR 预估会存在两个问题:样本选择偏差和稀疏数据。



样本选择偏差是指模型用用户点击的样本来训练,但是预测却是用的整个样本空间。数据稀疏问题是指用户点击到购买的样本太少。因此阿里提出了 ESMM 模型来解决上述两个问题:主要借鉴多任务学习的思路,引入两个辅助的学习任务,分别用来拟合 pCTR 和 pCTCVR。



ESMM 模型由两个子网络组成,左边的子网络用来拟合 pCVR,右边的子网络用来拟合 pCTR,同时,两个子网络的输出相乘之后可以得到 pCTCVR。因此,该网络结构共有三个子任务,分别用于输出 pCTR、pCVR 和 pCTCVR。假设用 x 表示 feature ( 即 impression ),y 表示点击,z 表示转化,那么根据 pCTCVR = pCTR * pCVR,可以得到:



则 pCVR 的计算为:



由上面的式子可知,pCVR 可通过 pCTR 和 pCTCVR 推导出来,那么我们只需要关注 pCTR 和 pCTCVR 两个任务即可,并且 pCTR 和 pCTCVR 都可以从整个样本空间进行训练?为什么呢,因为对于 pCTR 来说可将有点击行为的曝光事件作为正样本,没有点击行为的曝光事件作为负样本,对于 PCTCVR 来说,将同时有点击行为和购买行为的曝光事件作为正样本,其他作为负样本。模型的 loss 函数:



另外两个子网络的 embedding 层是共享的,由于 CTR 任务的训练样本量要远超过 CVR 任务的训练样本量,ESMM 模型中 embedding 层共享的机制能够使得 CVR 子任务也能够从只有展现没有点击的样本中学习,从而能够极缓解训练数据稀疏性问题。


本文转载自 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:491550

评论

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

“元宇宙”时代,离我们还有多远?

澳鹏Appen

人工智能 大数据 AR vr 元宇宙

实践GoF的23的设计模式:SOLID原则(下)

华为云开发者联盟

设计模式 GoF 依赖倒置原则 接口隔离原则 SOLID原则

MySQL数据备份,恢复和验证

wong

MySQL mysqldump

BabaSSL 发布 8.3.0|实现相应隐私计算的需求

SOFAStack

开源 密码学 隐私计算 国密 BABASSL

微信小程序图片拖拽排序探索

云小梦

CSS 微信小程序 图片拖动 movable-area

如何在 Linux 中将主目录移动到新分区或磁盘?

Ethereal

网络安全kali渗透学习 web渗透入门 使用msf扫描靶机上mysql服务的空密码

学神来啦

网络安全 kali kali Linux 运维‘

44条工程管理经验教训

hongfei

项目管理 3月月更 工程管理 工程经验

患上“远见病”的VR,不得不走进动物世界

脑极体

开发提效小技巧分享(一)

编程三昧

3月月更 前端工具

如何在 eNSP 上保存配置?

Ethereal

恒源云(GPUSHARE)_超越预训练 NLP 的模型来喽

恒源云

自然语言处理 深度学习 算法

AWS S3 对象存储攻防

火线安全

云原生 云安全

搭建 VuePress 博客,你可能会用到的一些插件

冴羽

Vue 博客 vuepress 博客开发 博客搭建

让ICT飞鸟,长出数字能源的翅膀

脑极体

在线HTML转JSX工具

入门小站

工具

企业深入使用微服务后会面临哪些问题?云原生全链路灰度给了新思路

阿里巴巴云原生

阿里云 云原生 灰度 云原生微服务 链路

一周信创舆情观察(2.21~2.27)

统小信uos

分享几个你可能不知道的交互式Git 命令

华为云开发者联盟

git 交互式暂存 交互式 暂存

Linux之route命令

入门小站

Linux

360携手HarmonyOS打造独特的“天气大师”

HarmonyOS开发者

HarmonyOS 应用开发

性能测试中Disruptor框架shutdown失效的问题分享

FunTester

Disruptor 性能测试 接口测试 高性能队列 FunTester

pip手动升级

阿呆

Python pip

使用 Recast.AI 创建具有人工智能的聊天机器人

汪子熙

人工智能 机器学习 聊天机器人 CRM 3月月更

要把微博、贴吧变成即时聊天,总共分几步?

融云 RongCloud

如何搭建FAQ文档?只需四步

小炮

企业管理工具

SpringDataRedis序列化带有双引号

编号94530

redis spring 序列化 Jackson

三条命令搭建自己的博客平台

山河已无恙

WordPress 3月月更

Linux运维必知:如何从其 PID 中查找进程名称

Ethereal

小程序已成为超级APP必选项,逐鹿私域“留量”

Speedoooo

小程序 APP开发 软件开发、 轻量应用 小程序管理平台

译文 | 一文看懂技术债

LigaAI

场景应用 技术债务 非功能性需求

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