Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >【 SPA大赛 】数据测试与特征工程的优化思路

【 SPA大赛 】数据测试与特征工程的优化思路

原创
作者头像
马卓然
修改于 2017-06-19 10:55:49
修改于 2017-06-19 10:55:49
1.1K0
举报
文章被收录于专栏:马卓然的专栏马卓然的专栏

大家好,我们是吃茶少年团队,这是我们团队第一次参加比赛。由于没什么经验,走了很多很多的弯路,我们在比赛中跟随大佬亦步亦趋地摸索前进。目前成绩在24名,写下这篇比赛心得,希望能共同交流、进步。

数据方面

关于训练集、测试集的选取上:由于比赛数据是时序的数据,所以我们首先想到的思路是尝试用17-29日的数据预测30日,使用这样的训练集、测试集设置线下的对数损失很小,但是线上和线下的增减时而同步时而不同步。然后,经过我们多番尝试最终选择了随机70%生成为训练集、30%为测试集,调整随机数种子使得线上和线下尽可能同步。

关于本次比赛的数据,我们可以把比赛给定的14天中每3个小时的转换率画出来,如下图所示。我们可以明显看到最后几天转换率偏低,这是由于用户转换时间存在延迟造成的,对最后几天数据有影响,也就是说最后几天的数据存在噪音,转换率偏低。如果想要把最后加入训练集,那么需要最后对预测结果进行一个修正过程,可以通过Logistic反函数对预测概率进行修正。同样,在这个图中可以看到19号的上午和20号的中午存在两个转换率特别异常高的时段,我们可以分析为什么这两个时间段转换率特别高,这对我们数据清洗有一定帮助。

特征工程

关于特征工程方面,我们首先尝试了一些基本的组合特征,把各id类特征组合起来使用点击数、转换数、转换率来表达。通过这些基础的组合统计特征,使得分数上涨了2个千分点。我们把过程中尝试的特征过程展示如下表所示:可以看到每次成绩的大进步都是依赖于新的强特征的增加。

特征组合

线上成绩

ID类特征进行one-hot编码,使用LR进行分类

0.1072

把所有原始特征进行merge,使用xgboost进行分类

0.1036

原始特征+组合统计特征

0.1010

原始特征+组合统计特征+时间序列特征

0.0989

bagging+原始特征+组合统计特征+时间序列特征

0.0987

之后的找新特征过程,我们主要按照三个方面来找:

1 . 从业务的角度,即我们去猜测用户点击广告后是否发生转换可能与哪些因素有关。这部分通过猜测结合分析数据来实现,生成特征后使用groupby来确定这个新特征是否会对label的分布造成影响。比如在下面这张图中,我们通过groupby命令,connectionType这个变量不同的取值对label的分布有较大影响,可见connectionType这个变量对是否转换影响还是很大的。

2 . 从模型提供的信息,我们使用了xgboost这一模型来训练,通过xgboost给出的特征重要性,主要观察特征重要性在前面的特征,考虑这些特征是否可以有更好的表达。在下图xgboost给出的特征重要性中,我们可以看到ID类的特征都占据着十分重要的特征,对于这些重要性很高的特征,我们尝试把这些特征进行两两组合,而对特征重要性很低的特征比如app平台等我们可以考虑把他们去除。把这些无用的特征去除,可以加快训练模型的速度,也可以避免对模型产生干扰。

3 . 多与人交流。我们产生的很多新特征都来自于群里小伙伴的讨论中,从大家的讨论中得到一些灵感,积极借鉴大佬们的思路,借此生成新的特征。比赛中经常会出现较为隐蔽、但对分类效果提升很大的特征,这些magic特征往往来自于各个小伙伴的灵光一现,多关注群里的进展,往往可以获取这些magic特征,从而使成绩飞跃。

心得

  1. 多看比赛经验,我们参考了Kaggle上的一些比赛心得,特别从获胜者的代码中学到了很多技巧。比如从台大avazu获胜的代码中,用效率更高的词典来代替pandas的merge命令,这些代码技巧可以使得数据处理时间上大为减少。
  2. 多观察数据。原始特征的表达决定了成绩的上限,强特征往往来自于数据之间的隐含关系,找到强特征相当于把这件分类的事情以一个更好的表达方式告诉给算法。类似的比赛中往往有很多经典的特征,可以模仿前面比赛的思路。
  3. 多和其他参赛者交流。群里有很多大佬,提供着不一样的思路,借鉴大佬们的思路,相当于做一个stacking,参考大佬们的经验增加思路,会取得更好的成绩。

第一次参加比赛,收获很多,最后感谢腾讯提供的比赛、感谢队友、感谢群里的大佬。

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

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【SPA大赛】预测广告转化率实战心得
肖洋
2017/06/07
1.7K0
腾讯算法大赛-社交广告APP转化率预测总结与源码分享(决赛第26名)
本文个别公式为正常显示,详细请查看原文: https://jiayi797.github.io/2017/06/07/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E5%AE%9E%E8%B7%B5-CVR-Tencent_CVR%E9%A2%84%E4%BC%B0%E5%88%9D%E8%B5%9B%E6%80%9D%E8%B7%AF%E6%80%BB%E7%BB%93/ 本文代码获取: 回复公众号 datadw 关键字"腾讯"即可。 正文: “这一段奔波太过匆忙,有时来不及回
机器学习AI算法工程
2018/03/15
2.8K0
腾讯算法大赛-社交广告APP转化率预测总结与源码分享(决赛第26名)
【SPA大赛】广告数据挖掘的经验分享
本文介绍了团队参加数据挖掘比赛的经验和总结。首先介绍了数据挖掘比赛的情况,然后介绍了团队在数据清洗和特征工程方面的做法,包括数据集构造、模型构建和特征工程等方面。最后总结了本次参赛的收获和教训,并感谢腾讯提供的平台和服务。
王晓娟
2017/06/08
1.2K0
【SPA大赛】腾讯比赛的一些分享
本文介绍了如何利用机器学习和深度学习解决CTR预估问题,包括数据清洗、特征工程、模型选择、模型融合等方面。作者还结合实际业务场景,分享了在腾讯广告算法大赛中的实战经验和思考,并给出了相应的模型算法和框架设计的建议。
深蓝DeePBluE
2017/06/15
9690
【SPA大赛】腾讯比赛的一些分享
【SPA大赛】菜鸟在数据挖掘中的体验
本文介绍了自己在数据挖掘领域的学习和实践经验,包括参加腾讯广告算法大赛、数据可视化和特征工程等。作者认为,在比赛中,理解业务场景、开展特征工程和多与他人交流是非常重要的。通过参加这次比赛,作者希望能够学习到更多的经验和技巧,提高自己的实际能力。
谭学仕
2017/06/06
1.1K0
【SPA大赛】菜鸟在数据挖掘中的体验
2019腾讯广告算法大赛入门-Part1(竞赛小白晋升之路)
这试腾讯的第三届广告算法大赛,也是我第二次参加,18年很意外的拿到第十一名,虽然距离决赛只差一步,不过结果还是很令我满意的,毕竟去年的我只是初打比赛不久的小白。作为过来人,我想在此分享下我的基本解题思路。让我们一起打比赛吧!!!
Coggle数据科学
2019/09/12
1.1K0
2019腾讯广告算法大赛入门-Part1(竞赛小白晋升之路)
Kaggle搭积木式刷分大法:特征工程部分
專 欄 ❈本文作者:王勇,目前感兴趣项目商业分析、Python、机器学习、Kaggle。17年项目管理,通信业干了11年项目经理管合同交付,制造业干了6年项目管理:PMO,变革,生产转移,清算和资产处理。MBA, PMI-PBA, PMP。❈ 这两天在忙着刷Kaggle梅塞德斯奔驰生产线测试案例,刚刚有了些思路,还是用管道方法达了个积木。这才有空开始写第二篇文章。(吐个槽,Kaggle上面的很多比赛,比的是财力。服务器内存不行,或者计算速度不够就是浪费时间。) 上回说道,用搭乐高积木的方式就可以多快好省的
Python中文社区
2018/02/01
2.1K0
Kaggle搭积木式刷分大法:特征工程部分
【SPA大赛】分享推荐类大数据的相关经验
该文介绍了关于推荐类大数据的相关比赛经验,包括京东算法大赛、腾讯广告高校算法大赛等。作者强调了特征工程的重要性,提出了在比赛中挖掘特征、建立稳定的线下模型、细致的特征设计等方面的建议。同时,作者分享了自己在比赛中的经验和教训,并鼓励新手积极参与比赛,一起学习交流。
李智
2017/06/02
8780
【SPA大赛】分享推荐类大数据的相关经验
可能是全网特征工程实操最通透的...
目前网上能搜到的讲特征工程方法基本都是教材里的那一套:缺失值填充,归一化,category特征one-hot,降维等等。但是指望靠这些提升模型性能是远远不够的,特别是对强大的xgb/lgb上述方法几乎是毫无意义。也有一些文章总结了特定业务的特征工程,但是对其他任务也没有泛化能力。
算法进阶
2022/06/02
3810
可能是全网特征工程实操最通透的...
【SPA 大赛】简述一些平滑方法在 CTR 预估中的应用
本文介绍了CTR预估中平滑方法的应用,包括Add-Lambda Smoothing、Additive Smoothing、Add-One Smoothing以及针对天数不同可以做的额外处理。平滑方法可以降低噪音,提高模型的鲁棒性,在CTR预估中发挥着重要作用。
连庆
2017/06/13
4.3K1
【SPA 大赛】简述一些平滑方法在 CTR 预估中的应用
【 SPA大赛 】关于数据处理和特征工程的一些分享
本文介绍了关于数据处理和特征工程的一些分享,主要包括数据探索、数据预处理、特征工程和技巧等内容。作者通过参加腾讯社交广告高校算法大赛,在比赛中尝试了不同的数据处理和特征工程方法,最终取得了良好的成绩。同时,作者也分享了一些在实验过程中积累的经验和技巧,对于参赛者具有一定的参考意义。
方舒
2017/06/08
1.1K0
【SPA大赛】腾讯社交广告大赛心得分享
本文介绍了如何通过分析腾讯社交广告大赛中的数据来提高CTR预估准确率。首先,作者讲述了数据处理和特征工程方面的内容,包括数据清洗、特征选择、特征构造和特征贝叶斯平滑等。然后,介绍了模型选择和模型融合方面的内容,包括模型选择、模型训练和模型融合等。最后,作者分享了比赛心得,包括训练集构造、特征提取和模型调参等方面,希望对读者有所帮助。
申星
2017/06/08
2.1K0
【SPA大赛】腾讯社交广告大赛心得分享
【SPA大赛】移动app广告转化率预估算法优化思路及解决办法
本文介绍了关于腾讯社交广告算法大赛的参赛经历,包括数据获取、特征提取、模型选择、调参、模型融合等方面的内容。同时,也对未来进行了展望,包括复赛阶段的挑战和新的技术趋势。
何颖
2017/06/05
3K0
【SPA大赛】移动app广告转化率预估算法优化思路及解决办法
【 SPA大赛 】数据模型与特征工程
本文介绍了一个广告点击率预测比赛,选手们使用xgboost、gbdt、nn等模型进行预测,通过特征工程、模型选择、模型调优等方法,最终取得了不错的预测效果。在比赛过程中,选手们也遇到了很多问题,如特征工程、模型选择、调优等,需要不断尝试和改进。通过比赛,选手们不仅提高了自己的技术水平,也为今后的比赛积累了宝贵的经验。同时,也希望更多的选手参与到比赛中来,共同提高技术水平,为广告点击率预测做出更大的贡献。
郭安静
2017/06/06
1.5K0
【 SPA大赛 】数据模型与特征工程
用户贷款风险预测:Stacking模型融合
近7万贷款用户的基本身份信息、消费行为、银行还款等数据信息,需要参赛者以此建立准确的风险控制模型,来预测用户是否会逾期还款。
机器学习AI算法工程
2019/10/29
1K0
用户贷款风险预测:Stacking模型融合
【 SPA大赛 】关于数据挖掘的理论与实践
本文讨论了数据挖掘的理论与实践,通过参加数据挖掘比赛,学习数据预处理、特征工程和模型融合等方面的知识。在比赛中,作者通过实践应用,学会了如何处理稀疏特征值、构建有效的验证集以及特征筛选和模型融合等技术。通过参加这次比赛,作者对数据挖掘有了更深入的理解,并提高了自己的实践能力和技术水平。
窦凯丽
2017/06/08
1.1K0
【 SPA大赛 】关于数据挖掘的理论与实践
特征工程的方法论,一般都这么做
向AI转型的程序员都关注了这个号👇👇👇 机器学习AI算法工程   公众号:datayx AI算法工程师交流群 一.为什么要做特征工程 1.选对模型有用的特征,让模型达到尽可能大的性能(准确率); 2.剔除掉无用特征,减少模型的过拟合,增加模型泛化能力; 2.对有用特征做相应变化处理,减少模型复杂性,增加模型的性能; 二.特征工程都要做什么 1.特征采集评估 主要是评估需要采集的成本,特征的完整性,特征的有效性 2.特征预处理 做特征的定性分析,缺失值、异常值,基本特征编码和变化 3.特征无量纲化 将特征从
机器学习AI算法工程
2022/06/10
1.1K0
特征工程的方法论,一般都这么做
【 SPA大赛 】数据特征处理技巧
本文介绍了第一届腾讯社交算法大赛中的leakage和trick处理技巧,以及参赛队伍在比赛中如何利用这些技巧提高线上成绩。作者认为,通过不断挖掘比赛中的技巧和信息,可以进一步提高模型的表现。同时,作者也分享了一些在比赛中遇到的挑战和解决方法,以及如何避免信息泄露等问题。
李宗阳
2017/06/05
3.9K0
【 SPA大赛 】数据特征处理技巧
【SPA大赛】数据处理经验以及特征选择方法
本文介绍了TripleLift团队在数据特征工程方面的经验,包括特征选择、特征交叉、特征衍生以及特征重要性评估等。作者认为,特征工程是成功的99%,而特征选择是特征工程中最重要的一步。作者还介绍了如何制造交叉特征,并给出了具体的例子。最后,作者分享了一个关于点击率预估方面的特征工程实践,通过贝叶斯平滑来处理点击率数据,并取得了较好的效果。
晁涌耀
2017/06/08
1.3K0
【SPA大赛】数据处理经验以及特征选择方法
2018腾讯广告算法大赛总结/0.772229/Rank11
liupengsay/2018-Tencent-social-advertising-algorithm-contest​github.com
Coggle数据科学
2019/09/12
1.4K0
2018腾讯广告算法大赛总结/0.772229/Rank11
推荐阅读
相关推荐
【SPA大赛】预测广告转化率实战心得
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文