【经典论文阅读11】ESMM模型——基于贝叶斯公式的CVR预估

传统的CVR模型(也就是直接对conversion rate建模的模型)在实际应用中面临两个问题(样本选择偏差与数据稀疏性问题)。为了解决这两个问题,本文提出ESMM模型。该模型巧妙地利用用户行为序列去建模这个问题,从而证明(在淘宝的业务场景下)对Post-click conversion Rate 非常有帮助。其实,其实的真实思想就是基于贝叶斯公式去预估CVR。

在这里插入图片描述

1. 摘要

1.1. 问题

  • 选择偏差问题(sample selection bias):之前的cvr模型在训练的时候是在有点的数据集上训练,但是推理(真实场景应用的时候)是在整个空间(不知道这个广告会不会被点,也不知道这个商品会不会被点击)这个问题很常见
    在这里插入图片描述

  • 数据稀疏性(data sparsity)问题:让模型难以训练。

    • 与CTR相比,CVR的数据要少的多,所以训练CVR的模型相比有些困难。
      • CVR的数据量要比CTR的数据少1~3个数据级;
      • CVR的训练数据量大概只有CTR的4%。
    • 哪里的数据稀疏?为什么稀疏?
  • delayed feedback 问题
    这个问题也是CVR这个模型面临的问题,但是本文不再关注。

1.2. 解决方法

提出使用一种新的建模方法对CVR进行建模。这种建模方法模拟了用户的行为顺序模式,也就是:impression →click →conversion (展现、点击、转化),这里的转化指的就是购买、付费等行为。方法具体包括:

  • (1)在整个样本空间建模
  • (2)采用特征迁移策略(employing a feature representation transfer learning strategy)

2. Introduction

Introduction就是字数扩大版的摘要。

2.1. 介绍CVR这个任务

文章第一段、第二段在介绍CVR这个任务

CVR预估是排序系统中一个非常基础的工作,在在线广告、推荐系统中都非常重要。
CVR 建模指的就是:pCVR = p(conversion|click,impression)

2.2. 现存的问题

  • SSB问题
  • DS问题

2.3. 尝试的解法

这里不再啰嗦。

2.4. 提出的模型

提出ESMM 模型,这个模型包括:

  • 两个辅助任务:post-view click-through rate(CTR) + post-view click-through&conversion rate(CTCVR)
  • pCTCVR = pCTR * pCVRpCTCVRpCTR 都是在整个样本空间下进行估计。所以就缓解了SSB问题。
  • CVR网络的特征表示和CTR网络是共享,而CTR网络是在整个样本空间下训练的,所以就缓解了DS问题。

3. Method

pCVR 这个任务其实就是计算 p(z = 1|y=1, x),其中x是展现物品的特征向量表示,y=1表示有点击,z=1表示有转化(如购买、付费)

二者的递推关系式子:
在这里插入图片描述

3.1. 模型结构

模型结构,如下图所示:
在这里插入图片描述

  • 模型输入:~
  • 模型输出:在给出一个展现的前提下,输出pCTR, pCVR, pCTCVR。

3.2. 损失函数

只使用CTR and CTCVR 任务计算损失,在整个展现样本的空间下计算,没有使用CVR这个任务的损失。
在这里插入图片描述
使用的是交叉熵损失函数。

4. 数据实验

4.1. 数据集分布统计

在这里插入图片描述

4.2. 实验效果

  • 使用AUC指标,理解一下AUC指标是什么含义。
    在这里插入图片描述

5. 问题

5.1. pCVR 中的p是什么意思?

一定要意识到这个p代表的是post-click,否则直接说是CVR 不就得了?

5.2 模型的输入是什么?

Q:模型具体的输入是什么?也就是对应图中的user fileditem filed 分别可以是什么样的数据呢?能举个例子吗?

A:【TODO】可以从下面这个链接中访问作者给出的公开数据集:https://tianchi.aliyun.com/datalab/dataSet.html?dataId=408

5.3 跑一下模型【TODO】

5.4 SSB 问题的理解

在这里插入图片描述

6. 英语借鉴

  • borrowing the idea from multi-task learning… 从多任务学习借鉴方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/905409.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用Git进行版本控制的最佳实践

文章目录 Git简介基本概念仓库(Repository)提交(Commit)分支(Branching) 常用命令初始化仓库添加文件提交修改查看状态克隆仓库分支操作合并分支推送更改 最佳实践使用有意义的提交信息定期推送至远程仓库使…

Vision-Language Models for Vision Tasks: A Survey阅读笔记

虽然LLM的文章还没都看完,但是终究是开始看起来了VLM,首当其冲,当然是做一片文献综述啦。这篇文章比较早了,2024年2月份出的last version。 文章链接:https://arxiv.org/abs/2304.00685 GitHub链接:GitHu…

Oracle OCP认证考试考点详解082系列07

题记: 本系列主要讲解Oracle OCP认证考试考点(题目),适用于19C/21C,跟着学OCP考试必过。 31. 第31题: 题目 解析及答案: 关于 “SET VERIFY ON” 命令,以下哪两个陈述是正确的? A…

网络搜索引擎Shodan(7)完结

声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章 声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法律法规。 感谢泷…

【C++ 算法进阶】算法提升八

复杂计算 (括号问题相关递归套路 重要) 题目 给定一个字符串str str表示一个公式 公式里面可能有整数 - * / 符号以及左右括号 返回最终计算的结果 题目分析 本题的难点主要在于可能会有很多的括号 而我们直接模拟现实中的算法的话code会难写 要考虑…

​IOT NTN 与 NR NTN​

NTN(Non-Terrestrial Network)),即非地面网络通信,通过不同轨道高度的卫星对地面上的终端提供网络连接的服务。利用卫星通信网络与地面蜂窝网络的融合,可以在不受地形地貌的限制和影响下,连通空、天、地、海…

44-RK3588s调试 camera-engine-rkaiq(rkaiq_3A_server)

在RK3588s平台上调试imx415 camera sensor 过程中,已经识别到了camera sensor ID,并且可以拿到raw图和isp处理后的图像,但是isp处理后的图像偏绿,来看查看后台服务发现rkaiq_3A_server没有运行,然后单独运行rkaiq_3A_s…

【深度学习中的注意力机制10】11种主流注意力机制112个创新研究paper+代码——交叉注意力(Cross-Attention)

【深度学习中的注意力机制10】11种主流注意力机制112个创新研究paper代码——交叉注意力(Cross-Attention) 【深度学习中的注意力机制10】11种主流注意力机制112个创新研究paper代码——交叉注意力(Cross-Attention) 文章目录 【…

springboot响应文件流文件给浏览器+前端下载

springboot响应文件流文件给浏览器前端下载 1.controller: Api(tags {"【样本提取系统】-api"}) RestController("YbtqYstbtqController") RequiredArgsConstructor RequestMapping("/ybtq-ystbtq") Slf4j public class YbtqYstbtqController …

DAY67WEB 攻防-Java 安全JNDIRMILDAP五大不安全组件RCE 执行不出网

知识点: 1、Java安全-RCE执行-5大类函数调用 2、Java安全-JNDI注入-RMI&LDAP&高版本 3、Java安全-不安全组件-Shiro&FastJson&JackJson&XStream&Log4j Java安全-RCE执行-5大类函数调用 Java中代码执行的类: Groovy Runti…

vue下载安装

目录 vue工具前置要求:安装node.js并配置好国内镜像源下载安装 vue 工具 系统:Windows 11 前置要求:安装node.js并配置好国内镜像源 参考:本人写的《node.js下载、安装、设置国内镜像源(永久)&#xff…

书生实战营第四期-第四关 玩转HF/魔搭/魔乐社区

一、任务1:模型下载 使用魔搭社区平台下载文档中提到的模型 1.创建开发机 2.环境配置 # 激活环境 conda activate /root/share/pre_envs/pytorch2.1.2cu12.1# 安装 modelscope pip install modelscope -t /root/env/maas pip install numpy1.26.0 -t /root/env/m…

【Blender】 学习笔记(一)

文章目录 参考概念原点 Origin游标 轴心点坐标操作默认快捷键两个比较好用的功能渲染器元素不可选(防止误选)关联材质 参考 参考b站视频:【Kurt】Blender零基础入门教程 | Blender中文区新手必刷教程(已完结) 概念 模型、灯光、摄像机 原点…

Java中的反射(Reflection)

先上两张图来系统的看一下反射的作用和具体的实现方法 接下来详细说一下反射的步骤以及之中使用的方法: 获取Class对象: 要使用反射,首先需要获得一个Class对象,该对象是反射的入口点。可以通过以下几种方式获取Class对象&#x…

号码认证是什么意思?有什么用?

随着通信环境越来越复杂,各种骚扰、推销电话层出不穷。许多企业为了取信于客户,提高电话的接听率,纷纷选择了申请号码认证,试图通过这种方法来与客户建立更加高效的沟通。 不可否认,这种方法是极其有效的。号码认证可…

Android 圆形进度条CircleProgressView 基础版

一个最基础的自定义View 圆形进度条,可设置背景色、进度条颜色(渐变色)下载进度控制;可二次定制度高; 核心代码: Overrideprotected void onDraw(NonNull Canvas canvas) {super.onDraw(canvas);int mW g…

Java基础0-Java概览

Java概览 一、Java的主要特性 Java 语言是简单的: Java 丢弃了 C 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,而是引用。并提供了自动分配和回收内存…

信号(四)【信号处理与捕捉】

目录 1. 信号的处理1.1 内核态 && 用户态1.2 进程地址空间第三弹1.1 内核态 && 用户态 (续) 2. 信号捕捉 1. 信号的处理 我们一直在说,进程收到信号了,可能会因为各种原因无法即使处理信号,而后选择一个合适的时机去处理。所…

Kafka 与传统 MQ 消息系统之间有三个关键区别?

大家好,我是锋哥。今天分享关于【Kafka 与传统 MQ 消息系统之间有三个关键区别?】面试题?希望对大家有帮助; Kafka 与传统 MQ 消息系统之间有三个关键区别? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 …

基于局部近似的模型解释方法

在机器学习领域中,模型解释性是一个越来越重要的议题,尤其是在复杂的深度学习模型和非线性模型广泛应用的今天。解释性不仅帮助我们理解模型的决策逻辑,还能提高模型在敏感领域(如医疗诊断、金融分析)中的可信度。基于…