CTR预估AUC=0.99问题记录
项目场景:
最近在做CTR预估,同时有4个业务的一起做,之前在其他平台使用的机器学习没有问题。换到新的深度学习平台,用DNN和DeepFM做auc高的吓人。
问题描述:
模型从一开始就可以稳定收敛,无论是测试集还是训练集都可以稳定在0.99的auc。设定定时任务离线训练了数天后发现,偶尔会有几天auc突然变成0.5,之后有会变成0.99。
原因分析:
遇到这个问题头也是大的,之前没做过这块的工作。只能一个个原因排查:
- 是不是训练数据过拟合?
答:但是在测试集上也有很高的auc很显然不是过拟合。 - 是不是样本数据不均衡?
答:检查后正负样本比例是1:3,而且auc本身对正负样本比例是不敏感的,应该也不是这个问题。 - 是不是auc本身计算有错?
答:看了一下日志,auc计算是分布式的,按每个batch最后算平均,看起来都很正常。 - 是不是模型过于复杂?
答:尝试着减少层数,减少神经元,删除BN都无济于事,dropout也没有用。 - 是不是模型写错了?
答:用了别人的deepfm代码和自己写的DNN,都是一个效果,模型应该也没有问题。 - 是不是数据量太小了?
答:数据量每天100w左右,部分业务有500w,改用热更新之后几天依旧无法解决这个问题。
模型一圈看完了感觉还是数据本身的问题,上知乎搜到一个和我情况很类似的兄弟,提到了“特征穿越”。大概就是特征里面已经包含了样本标签。看了一下很可能是这个原因,决定对特征一个个下手。
解决方案:
暴力二分查找,从33个特征里面找到了一个“360天点击游戏id”的特征,发现单特征auc居然到了0.96!说明这个特征基本上就能确定标签了,对业务逻辑思考后发现,当天产生的该特征和当天产生的正样本会有高度的相似,导致了“特征穿越”。因此在离线训练的时候,需要利用前天的特征拼接昨天的样本,产生训练集。大致意思如下图所示:
CTR预估AUC=0.99问题记录相关推荐
- 2022华为推荐赛事——广告-信息流跨域ctr预估——0.79方案分享
本文目录如下: 一.赛事背景 二.解决方案 2.1 导入必要的库 2.2 数据读取 2.3 特征工程 自然数编码 目标域(广告域)穿越特征提取 内存压缩 源域特征构建 内存压缩 2.4 划分训练集和测 ...
- CTR预估专栏 | 一文搞懂阿里Deep Interest Network
作者 | 李宁宁 来源 | 机器学习荐货情报局(ID:ML_CIA) 编辑 | Vincent AI 前线导读:Deep Interest Network(DIN) 是盖坤大神领导的阿里妈妈的精准定向 ...
- 推荐系统CTR预估学习路线:引入注意力机制
推荐系统CTR预估学习路线:从LR到FM/FFM探索二阶特征的高效实现 推荐系统CTR预估学习路线:利用树模型自动化特征工程 推荐系统CTR预估学习路线:深度模型 推荐系统CTR预估学习路线:引入注意 ...
- 从FM推演各深度学习CTR预估模型
本文的PDF版本.代码实现和数据可以在我的github取到. 1.引言 点击率(click-through rate, CTR)是互联网公司进行流量分配的核心依据之一.比如互联网广告平台,为了精细化权 ...
- 广告CTR预估中用户行为学习和记忆建模
分享嘉宾:邹衡@阿里,并非花名"擎苍" 编辑整理:陈晟 出品平台:DataFun 导读:CTR 预估是计算广告的底层通用技术,在 CPC/OCPC 营销模式下,预估准确性对广告主流 ...
- 《推荐系统笔记(十)》CTR预估以及一般算法介绍(GBDT+LR)
前言 CTR预估是推荐系统中重要的问题,根据历史数据,我们需要预测用户是否点击.CTR预估同样可以运用到广告中,预测广告的点击率等. CTR数据形式 CTR预估问题的数据形式一般是这样的: 列名:特征 ...
- CTR预估算法(浅层模型)
1. 发展 在CTR预估中,Logistic Regression应该是最早被应用而且应用最广泛的模型了.输入是one-hot之后的特征,输出是点击广告的概率.对于类别型特征,one-hot之后,每一 ...
- NeurIPS'22 | APG:面向CTR预估的自适应参数生成网络
丨目录: · 摘要 · 背景 · Method · 实验 · 结语 ▐ 摘要 目前基于深度学习的CTR预估模型(即 Deep CTR Models)被广泛的应用于各个应用中.传统的 Deep CTR ...
- 【论文导读】2019阿里CTR预估模型---DIEN(深度兴趣演化网络)
前言 今天分享一篇阿里2019发表在AAAI上的CTR预估的论文<Deep Interest Evolution Network for Click-Through Rate Predictio ...
最新文章
- 如何实现容器透明,内容不透明?
- python语言单行注释符_云计算开发学习笔记:Python3注释
- PHP商城数据库安全事务处理方法
- Oracle推出支援.NET 3.5与Visual Studio 2008的开发工具
- 创建war类型的maven工程时报web.xml is missing and failOnMissingWebXml is set to true
- opencv 轮廓 缺陷检测
- apipost使用mock随机获取多组数据中的一组数据进行测试
- 当vue遇到pwa--vue+pwa移动端适配解决方案模板案例
- process.nextTick
- 还有一周就解放了,无心撸码,着急回家
- 电脑进程说明,常见,作用,说明,是否,查看,问题
- SpringSocial 开发 QQ 登录
- android获取按键键值,android中按键的扫描码和键值
- 别再问什么是数据库分库分表了,看这里!
- .NET Core 开源工具 IPTools - 快速查询 IP 地理位置、经纬度信息
- file 转换MultipartFile
- 华三H3C设备 公司网络外网变慢分析
- linux zip/unzip命令详解
- 显示error 1044错误代码
- 滑稽树下你和我Average distance(树形dp求任意两点距离之和)