广点通的数据挖掘 2013-07@ADC shawnxiao@tencent.com
目录 产品 简介 问题 分析 解决 之道 系统演进 在线模型 特征设计 两大 平台 5大部分: 1、简单介绍,演示一下广点通是一个什么样子的产品。 2、碰到的一些问题做一些分析 3、介绍一下我们的应对,做法 4、做法中用到了哪些数据 5、下一步的方向
产品简介 官网 http://e.qq.com/ 广点通是一个可提供给广告商多种广告投放平台的效果广告系统。
产品简介 广告位 展现形式 投放策略 计费方式 Qzone空间 朋友网 QQ PC端 QQ音乐 手机Qzone 图片 CPC GSP 文字 CPM GSP 面向中小企业广告主的效果广告系统,精准投放是核心竞争力。 调出 Qzone, 客户端的广告位场景演示。 CPC 用户点击一次,收费,否则,不收费 GSP 是什么?---第二名计费,pctr2*cpc2/p 广义二价拍卖(Generalized Second-Price Auction) 重点交待:高并发低延迟的效果广告系统是一堆负责的系统构成,这里重点分享在广告点击率预测,数据挖掘方面的经验。
目录 产品 简介 问题 分析 解决 之道 系统演进 在线模型 特征设计 两大 平台 5大部分: 1、简单介绍,演示一下广点通是一个什么样子的产品。 2、碰到的一些问题做一些分析 3、介绍一下我们的应对,做法 4、做法中用到了哪些数据 5、下一步的方向
挑战 – 广告位 上下文较少 广告位众多 没有明显的意图带入 没有固定的页面内容 网页 客户端 手机 等 和搜索广告的区别,也不会有搜索引擎的refer带入。 区别与内容广告,有比较明确的页面内容。 用户到Qzone,更多只是逛一下,做一些好友互动等活动。 图片规格多,适应页面UI,主要是照顾用户体验。
挑战 – 用户 点击数据非常稀疏 曝光数据偏态(以某个广告位为例) 大部分用户,一个月内都没有点击 平均1000次曝光,点击 1~8 40%的用户,一天内,曝光 = 1 80%的用户,一天内,曝光 < 3
挑战 – 广告 素材内容对点击影响很大 8X 0.20% 1.70% 相比广告位,用户带来的问题;广告侧带来的挑战也比较多。 2. 0.20% 1.70%
挑战 – 广告 新广告的冷启动 每天新增几十万新广告 没有用户反馈信息 类目不均衡 从广告的生命周期来看问题。
挑战 – 系统 用户体验,<50ms 数据的偏差 用户误点击 恶意点击等 海量数据建模、预测
目录 产品 简介 问题 分析 解决 之道 系统演进 在线模型 特征设计 两大 平台 5大部分: 1、简单介绍,演示一下广点通是一个什么样子的产品。 2、碰到的一些问题做一些分析 3、介绍一下我们的应对,做法 4、做法中用到了哪些数据 5、下一步的方向
系统演进 1、不会直接讲现在怎么做的,而是会分享从雏形到目前做法的进化历程。
实时 查询 场景 广告位少 广告少 线下全量预测,线上查询 HADOOP ,RDT:可解释,少迭代,训练&预测都很快 预测结果存储量巨大 8亿用户*TOP100个订单*广告位 = 1.6T * #广告位 互联网的特点,短平快,快速上线。 能够使用到的成熟的技术平台:hadoop 0.8G*100*(8+8+4)=1.6T
1、RDT
2、快速聚类 Simhash,保留输入数据的相似性,hash之后仍然是相似的。所有预测广告得到一个指纹。如何对相似性做一个聚类的问题? Minhash 通过对多次hash结果的最小值相等概率判断,得到jaccard的相关值。很方便并行,减少了传统k-means这样算法的迭代,可以快速完成。得到群体后,再计算其中心点作为其推荐列表。 8亿用户的广告预测计算,大约只需要1个小时完成。 成果:8亿用户映射 -> 到几百万规模
实时查询 全量预测 排序 快速聚类 N*AD N*<AD,weight> M*<AD,weight> AD QQID:类ID 类ID:M*<AD,weight> 注:M<<N 16
更好的方案? 极大浪费计算资源,90%的用户不会到来 新广告不在候选集,无法预测 实时性不好,策略不够灵活 扩展性受限 注意承上启下,抛出问题:现在的方案解决了存储了问题,但是还存在很多其他问题。 8亿用户,每天过来的到的用户只有1亿用户 离线预测,新广告没有在计算列表里面。 扩展性有限: 广告从几百到几十万,更多 广告位从几个到几百,更多
实时计算 线下训练模型;线上实时预测 新广告线上直接预测 动态SO的技术,更加灵活的实验 数据染色,便于后续分析 算法 + 领域知识 相结合 1、不来的用户,不用预测; 2、广告在前端经过业务逻辑过滤,不在候选集里面的,也不用预测。 数据染色,对策略埋下标记,线下统计分析 逻辑更加灵活,
主要问题 用户响应时间 < 50ms 输入: “树”类的算法的不足 线上一次请求,100个广告的实时预测计算 需要查询用户,广告等多种特征800+次 “树”类的算法的不足 输出规则,串行计算 树的层数和规模限制 预测模块,需要简单的计算逻辑。所以选择LR 另外,用户存在行为上的差异,有些用户有实时行为,但有些没有。
Regularized logistic regression min w 𝑓(𝑤)=𝐿 𝑤 +𝜆 𝑤 𝐿1 Regularized LR 的问题定义,大家应该比较熟悉。 L1,L2通过实验去选择。
融入用户行为的混合模型
实时计算 Scoring 过滤 pCTR 排序 reRanking 策略 N*AD M*<AD,weight> 注:M<<N 22
实时计算 – 不足 Model离线training 数据分布变化很快 模型还是离线build,线上的变化不能很快得到反映。比如说,有个新广告的效果突升或者突降。。。 广告生命周期很短,竞价对广告效果的影响等因素。
Online Model 15分钟更新 天更新 线下的模型只是一天(or更长)更新一次。 线下全量模型,定期训练+线上增量模型
目录 产品 简介 问题 分析 解决 之道 系统演进 在线模型 特征设计 两大 平台 5大部分: 1、简单介绍,演示一下广点通是一个什么样子的产品。 2、碰到的一些问题做一些分析 3、介绍一下我们的应对,做法 4、做法中用到了哪些数据 5、下一步的方向
数据才是“大米” 巧妇难为无米之炊
定制化用户画像 用户 基础属性 行为属性 细分人群 人口属性 兴趣属性 自定义标签 年龄 千余种兴趣类目 单身人群 百万级独立标签 苹果 索尼 安踏 宝马 … 性别 新婚人群 女装 女饰品 女鞋 男装 IT产品 … 地域 母婴人群 学历 … 上网场景 …
图片feature 爬取广告素材的图片 计算图片的色彩特征 亮度 饱和度 色彩度 对比度 尖锐度等
哪个图片点击率最高? 示例: 中间图片点击率最高 图片亮度在8左右点击率最高 亮度标准差=3 亮度标准差=8 亮度标准差=16
亮度(Brightness)-标准差,density图 亮度标准差在[6,10]更倾向于点击 图片亮度在8左右点击率最高
图像相似度 计算方法 输出 好处 对每个图片的gist特征512维的 float & dense 向量直接计算其simhash值 ADid -> img_group_id 好处 快 不需要指定聚类中心个数 SimHash值越接近的图片越相似 Simhash :64 Bit 的 Murmur Hash
图像相似度-example 聚类id: 1711127890547892055 包含3106 个这样的类似广告素材 对于同一人群,相似图片CTR接近 广告ID click impression CTR 8509989 88 55,560 0.16% 8509980 116 62,091 0.19% 8509912 166 93,099 0.18%
目录 产品 简介 问题 分析 解决 之道 系统演进 在线模型 特征设计 两大 平台 5大部分: 1、简单介绍,演示一下广点通是一个什么样子的产品。 2、碰到的一些问题做一些分析 3、介绍一下我们的应对,做法 4、做法中用到了哪些数据 5、下一步的方向
核心平台之一:腾讯分布式数据仓库(TDW) 基于开源hadoop和hive进行大量优化和改造 单集群4400台(业界顶级规模),存储容量100PB 月活跃用户(数据提取分析)2800人,覆盖7大BG88个部门 查询引擎 Lhotse 任务统一调度 IDE 集成开发 计算引擎 MapReduce 存储引擎 HDFS HADOOP 数据采集 TDBANK Hive 关键技术 Hadoop Master(NN/JT)节点实现并行扩展,支持灾难时自动热切 Hive&Pig功能丰富,支持传统数据库的标准语法,提供可视化集成开发环境 TDBank准实时数据采集,支持5分钟及时数据分析 Lhotse一站式任务管理,每天支撑10万级任务调度,可平行扩展
核心平台之二:实时推荐平台(APOLLO) 泛平台支撑,满足腾讯各类个性化推荐需求 海量数据在线处理,日推荐请求300亿,流式计算30000亿 算法精准,平台高效,毫秒级响应 关键技术 多种算法模型灵活适配,LR、RDT、SVD等 简单高效的扩展能力,数据动态伸缩,上层无感知 多副本数据容灾,服务可用度99.995%以上 多级缓存技术,有效解决分布式计算的数据CoLocation问题 数据接入量:50亿/天 实时计算量:1000亿/天 数据访问量:800亿/天 数据存储量:2T/天 提升推荐效果:30%
个人感悟 1、数据为王,垃圾进垃圾出 2、用户行为最有效 3、简单实时方法好过复杂离线 4、线下的模型指标只是参考,一定要做在线的AB TEST 5、AB TEST前先做AA TEST 6、在BADCASE中不断提升
THANKS