【SPA大赛】菜鸟在数据挖掘中的体验

首先很感谢腾讯举办这次比赛,让我们学生党可以接触到这么丰富的数据。这是我们团队第二次参加数据挖掘的比赛,虽然在第一次的比赛中没能取得好的成绩,但也从中吸取了很多经验和教训,让我们尽快地开展了工作。抱着学习和交流的心态,我们参加了这次腾讯举办的广告社交大赛。

在参加比赛中,我们觉得以下几点可以帮助我们尽快融入比赛中的:

1、首先要理解业务场景。

刚看到题目时,我们并没有着急开始分析数据,而是,首先明确了任务要求和提供的数据。在这个比赛中,我们要预测的是31天的转化率,官方提供了17到30天的 历史行为数据,还有用户和广告的基本信息;对于业务的理解,我们需要知道提供的每张表格中那些信息,每种信息是怎样关联起来的。了解业务场景有助于我们提取优秀的特征,我们可以假设自己是一个点击的用户,从一个用户的角度来思考怎样的特点会吸引发生转化行为;

2、如何开展特征工程。

构造怎样的特征工程和你对业务理解有关,这是一个关于时间序列的问题,用户的过去行为反映了用户在31天的可能转化的情况,所以我们可以考虑用户过去时间里的点击后发生转化的比率来表征用户的特征,同时我们也用了APPid点击后发生转换的比率来表征app的特征;在构造特征的过程中,由于这是一个关于时间序列的问题,要防止“穿越”行为——用用户未来的数据表征当前用户的特征;同时,构造特征时,除了自己对了业务的理解外,还可以进行数据分析, 一个方法是按label进行分组统计的操作,看看哪一类特征在lable中有着不一样的分布,下面这一段代码统计lable在不同的positionID和age类型下的转化率。

per_positionID= traintestUser.groupby('positionID').apply(lambda df: np.mean(df["label"])).reset_index(name = 'per_positionID')
per_age= traintestUser.groupby('age').apply(lambda df: np.mean(df["label"])).reset_index(name = 'per_age')

这是我们的实验结果:

从结果可以看出不同的positionID在转化率上有着很大的差别,所以我们把positionID的转化率作为一个重要的特征,'age'在不同的类别上的转化率并没有很大的区别,所以‘age’的区分能力并不强;

对于表格数据表达信息不直观的问题,可以考虑做数据的可视化,下面是对age的转化率做可视化的结果:

同样展现了不同的age类型在转化率上没有较大差别,也就没有很大的区分能力。对于如何进行数据可视化,kaggle上有一个不错的分享:

https://www.kaggle.com/benhamner/python-data-visualizations

3、特征工程的重要性。

就像一句老话说的那样,“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已”,所以说,在比赛的前期阶段我们更加要重视特征工程的构建,一个好的特征就能使得损失下降很多。举一个例子来说明,在这个比赛中,组合特征就是一个很强的特征,用户点击后安不安这个APP和这个APP性质有很大关联,有些APP是针对男性的,有些APP是针对未婚人士的,所以我们提取了APP和性别、年龄、婚姻状态来做组合特征,加上这几维特征后,我们线上的损失直接下降了0.002,相对于调参和换其他算法,这样的提高来得更加直接些;当做特征工程没有很大的作用时,我们才开始考虑做参数调优和模型融合;

4、多和别人交流。

由于我们参加比赛的经验不足,在思路方面不是很开阔。在交流群上和别人进行交流能打开自己的思路,同时,也可以多多参考Kaggle上类似的比赛,除了能学习到别人的思路想法以外,还可以学到大神的代码风格,增强实现自己想法的能力。

抱着学习进步的心态参加这次比赛,学习很多大神分享的经验,就算没能获得很好的名次,也是一次很难得的经历。希望这次比赛越办越好,大家在这次比赛中有所收获。

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

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

编辑于

谭学仕的专栏

1 篇文章1 人订阅

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【让神经网络能够“通感”】MIT 和谷歌研究连接文字、声音和视频

【新智元导读】如何让神经网络学会完成一项任务后,不忘记已有的知识,再次学会另一项任务?日前,来自 MIT 和谷歌研究人员分别朝着这一目标做出了努力。MIT 的研...

4049
来自专栏null的专栏

[置顶] 《Python机器学习算法》的写作历程

前言 首先,感谢各位支持我博客的同学,你们的支持是我一直努力的动力,正是因为你们的支持,才有了《Python机器学习算法》一书的面世: ? 目前,该书已经可以在...

3885
来自专栏IT派

2018年十大人工智能技术趋势,人工智能的进步对未来的巨大影响

人工智能是前沿和中心,商界和政府领导人正在思考正确的举措。但是在实验室里发生了什么呢?在实验室里,学术和企业研究人员的发现将为未来一年乃至更长的时间设定人工智能...

971
来自专栏新智元

吴恩达谈深度学习:数据科学家需要知道的

【新智元导读】数据科学家需要什么深度学习知识?吴恩达 (Andrew Ng)用机器看图说话,机器问答等实例告诉大家。本文是吴恩达在2015年12月在Extrac...

3147
来自专栏机器人网

机器学习算法工程师必须掌握的七大技能

实话实说,目前大部分人上各种班来学习机器学习,学习大数据,归根到底还是希望能找到一个好的工作,拿到更高的薪水,当然还有一部分原因是自己对这一方面比较感兴趣,希望...

4237
来自专栏灯塔大数据

深度|一篇文章搞懂人工智能、机器学习和深度学习之间的区别

2015年11月9日,Google发布人工智能系统TensorFlow并宣布开源。这两年在不管在国内还是在国外,人工智能、机器学习仿佛一夜之前传遍大街小巷。 概...

38110
来自专栏非著名程序员

Google 小程序「猜画小歌」背后的 AI 技术和原理浅析

今天我想通过这款 Google 推出的微信小程序「猜画小歌」,来聊一聊它背后的机器学习的相关知识,我个人仅仅只是读过关于机器学习的资料和书,浅尝辄止,我不是专门...

1361
来自专栏AI科技评论

深度|整容式的美颜2.0技术如何实现?聊一聊背后的图像识别技术

雷锋网按:本文根据涂图CTO在七牛云架构师沙龙上的演讲整理,本篇主要谈谈人脸识别技术的原理与具体实践的一些问题,作者授权发布雷锋网。 在上篇文章的最后,我们提到...

3229
来自专栏新智元

深度学习巅峰之年:技术、开源、兼并和硬件发展全回顾(附论文合集)

【新智元导读】本文是对2016年深度学习领域的进展的综述和回顾,介绍了2016年该领域的一些重要研究成果,包括无监督学习、增强学习、生成对抗网络等,以及产业中的...

4006
来自专栏CDA数据分析师

关于 AI 丨不知道这些概念你就落伍了

? 作者 Adam Temper 编译 Mika 本文为 CDA 数据分析师原创作品,转载需授权 对所有事情都有一定了比拥有一项专业技能更实用。对于进入新...

4228

扫码关注云+社区