【SPA大赛】关于APP广告预测转化率的经验分享

我们是参加腾讯社交广告算法大赛的队伍,这次想在这分享下我们队伍的经验。首先介绍下我们队伍,我们队伍3个成员是来自西安的高校生,在互联网上了解到这个竞赛,挺感兴趣,所以就参加了这个竞赛!

这次竞赛的要求是让选手预测出 App 广告点击后被激活的概率,也就是一种转化率的变形问题。对于这种问题,在提取特征的时候一般有3种有效的特征,一是原有的id特征,二是根据一些id特征做出来的历史转化率特征,三是相似度特征。对于我们这次竞赛,应该具体情况具体分析。

这次竞赛没有把所有的数据全部放在两个文件,也就是训练集和测试集中,而是给了8个数据文件,其中包括训练集、预测集、还有6个其他数据文件。在训练集和测试集中,共有的特征是:clickTime(用户点击时间,我想应该是点击广告中素材的时间,题目没明说);creativeID(广告素材的id),userID(用户id),positionID(广告位id,广告曝光的具体位置),connectionType(移动设备当前联网方式),telecomsOperator(运营商);训练集还多个 lable 列(我们要预测的列,二分类)和conversionTime(转化回流时间);训练集给了第17天到第30天的数据,也就是说点击时间是从第17天开始的,测试集是要预测第31天的情况。

其余的6个数据文件依次是:

1、user.csv (用户基础特征文件):有 用户 id、年龄、性别、教育程度、婚恋状态、是否有小孩、家乡、常住地;

2、app_categories.csv ( App 特征文件):有 Appid、app分类;

3、ad.csv (广告特征文件):有 广告主 id、推广计划 id、广告 id、素材 id、App的 id、App 所在平台;

4、position.csv (广告位特征文件):有 广告位 id、站点 id、广告位类型;

上面4个文件,我都可以根据 和训练集 预测集中相同的列,将他们的数据 merge 到训练集 预测集中,这样就完成了第一部分特征的提取,对于其他几部分特征,我之后就不再举这么详细的例子了!

5、user_installedapps.csv(用户 App 安装列表文件):截止到训练数据时间段中第一天用户全部的 App 安装列表,但是这个文件中只有 144万用户,和训练集中的 259万用户 相差些,和测试集用户的交集是 15万(测试集中一共有29万用户);

6、user_app_actions.csv (用户 App 安装流水文件):有3列,用户 id、安装时间、appid,但是这个文件只有 78万用户,和训练集中的259万用户 相差些,和测试集用户的交集是 8万(测试集中一共有29万用户)。

上面是所有的数据处理部分,接下来讲下我们的模型部分,在这次竞赛中很多选手都选用了 xgboost 和 ffm 这两种模型,初赛的数据量不是很大,用这两种模型还说的过去,但是在复赛的时候,数据量几乎达到了原先的10倍大小,只有在 xgb 上设置 gpu 加速模块,同时增加机器的核数,在参数设置中将这些设置好,才能达到一个不错的速度。

上面提到了基本配置,下面解释下我们为什么采用xgb这种模型。

首先因为它是一种树模型,属于 booster 的迭代算法,支持损失函数,支持L1L2正则可以防止过拟合,里面还有 scale_pos_weight 这个参数可以调节正负样本的加权训练。基分类器是 CART 树,每一棵树上的叶子节点都会有对应的判断,算法中采取投票器原则,得到最终的预测结果。而且在树分裂的时候,每一次分裂基于前一次分裂和目标函数 来计算信息增益,根据信息增益来选择最合适的特征,以及分割点。这是一种很完备的算法。当然建议其他选手也可以选择 gbdt lightgbm 这两种树模型,这几种模型最终的预测结果,他们之间的相关系数如果在 0.96之下,根据我的经验就可以进行融合,这也就是在比赛末尾有的选手利用多个模型 stacking 提分的原理!

参加这次竞赛最要感谢的就是我的师兄队友们,跟着他们学到了很多知识。这次也希望能将这些知识分享给大家!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

周恒的专栏

1 篇文章1 人订阅

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【智驾深谈】George Hotz 开源代码复现与分析(80G数据云盘下载)

【新智元导读】上周GeoHot开源代码那篇文章一发,反响还是很强烈的,好多兄弟问我这事儿靠谱么,代码怎么样,论文怎么样,索性上周末抽时间找了赵李二位无人车老司机...

36113
来自专栏美团技术团队

美团技术团队博客:推荐算法实践

前言 推荐系统并不是新鲜的事物,在很久之前就存在,但是推荐系统真正进入人们的视野,并且作为一个重要的模块存在于各个互联网公司,还是近几年的事情。 随着互联网的深...

42511
来自专栏语言、知识与人工智能

【腾讯知文】任务型对话机器人简介

1.5K7
来自专栏ATYUN订阅号

【学术】从一个简单的模型开始,可以让机器学习更高效

AiTechYun 编辑:xiaoshan ? 要创建通用人工智能,必须首先掌握逻辑回归 从基础开始 在试图发展对世界的科学认识的时候,大多数的领域在探索重要的...

4047
来自专栏PPV课数据科学社区

【学习】推荐算法实践

前言 推荐系统并不是新鲜的事物,在很久之前就存在,但是推荐系统真正进入人们的视野,并且作为一个重要的模块存在于各个互联网公司,还是近几年的事情。 随着互联网的深...

2823
来自专栏机器之心

TPU加AutoML:50美元快速训练高效的ImageNet图像分类网络

机器之心整理 参与:刘晓坤、思源 昨日,Jeff Dean 在推特上表示他们在 ImageNet 图像分类上发布了新的 DAWNBench 结果,新型 Amoe...

37311
来自专栏数据派THU

精选 Github 近期13款开源工具包!(附数据集、链接)

本文共1700字,建议阅读6分钟。 本文为你精选近期Github上的13款深度学习开源工具包和数据集,一起Star和Fork吧~

1308
来自专栏新智元

谷歌开源最大手动注释视频数据集和 TensorFlow 模型性能调优工具

【新智元导读】谷歌再度开放Youtube视频数据集——Youtube边界框(YouTube-BoundingBoxes),含23类共500万手动注释的、紧密贴合...

3788
来自专栏数据派THU

13张动图助你彻底看懂马尔科夫链、PCA和条件概率!

[ 导读 ]马尔科夫链、主成分分析以及条件概率等概念,是计算机学生必学的知识点,然而理论的抽象性往往让学生很难深入地去体会和理解。而本文,将这些抽象的理论概念,...

851
来自专栏PPV课数据科学社区

【数据分析】R语言中用自助法求统计量置信区间

当样本不符合理论分布假设时,求样本统计量的置信区间就成为一个难题。而自助法(Bootstrap)的思路是对原始样本重复抽样产生多个新样本,针对每个样本求取统计量...

4265

扫码关注云+社区