《阿里云天池大赛赛题解析》——O2O优惠卷预测
代码下载:https://github.com/luxuantao/alibaba_tianchi_book
请自己阅读赛题描述和下载代码
1.数据探索
1.1数据说明
本赛题提供用户在2016年1月1日至2016年6月30日之间真实线上线下消费行为,预测用户在2016年7月领取优惠券后15天以内的使用情况。
- Table 1: 用户线下消费和优惠券领取行为

- Table 2: 用户线上点击/消费和优惠券领取行为

- Table 3:用户O2O线下优惠券使用预测样本

- Table 4:选手提交文件字段,其中user_id,coupon_id和date_received均来自Table 3,而Probability为预测值

我们的目标是要预测用户优惠券的线下使用情况,线上数据我们重点关注与用户相关的特征(是作为线下数据的一个辅助),线下我们关注的特征数据就比较多了。
首先我们先看看整理好的Table 1.2.3 的数据大概都长什么样儿。
- Table 1:线下训练数据

- Table 2:线上训练数据

- Table 3:测试数据

1.2数据边界
这里我们需要确定每个数据的数据边界,也就是从几年几月几号到几年几月几号,这样方便后续的数据整理对应,于是需要对数据日期范围情况进行初步探索。
- 数据集领券日期范围

- 查看训练集的用卷日期范围

通过探索可以发现训练数据的用券数据是到6月30日,而领券日期并不是到6月30日,而是到6月15日,这在设计滑窗结构的时候需要注意(滑窗结构后续会讲解)。
1.3训练集与测试集的相关性
在机器学习比赛及实际应用的时候,不同数据的价值是不一样的,同时也并不是所有得到的数据都是有用的。对测试集和训练集数据的重合情况进行探查对于后续的特征构建的思路有很大的指导作用。
- 对用户(user_id)在训练集和测试集的重合情况进行探索发现:

- 对商家(merchant_id)在训练集和测试集的重合情况进行探索发现:

- 对优惠券(coupon_id)在训练集和测试集的重合情况进行探索发现:

最后我们总结如下:
- 测试集的用户ID与Offline训练集重复占比0.999以上,与Online训练集重复占比0.565。
- 测试集的商家ID与Offline训练集重复占比0.999以上,与Online训练集没有重复。
- 测试集的优惠券ID与训练集都没有重复。
结论:Online数据价值比较低,后续特征提取将以Offline训练集为主。在提取优惠券统计特征的时候不能通过ID进行合并。 在后续可视化分析中将主要在Offline训练集及测试集之间进行。
《阿里云天池大赛赛题解析》——O2O优惠卷预测的更多相关文章
- 【天池大数据赛题解析】资金流入流出预测(附Top4答辩ppt)
http://mp.weixin.qq.com/s?__biz=MzA3MDg0MjgxNQ==&mid=208451006&idx=1&sn=532e41cf020a0673 ...
- 智慧航空AI大赛-阿里云算法大赛总结 第一赛季总结
[以前的文章]最后一公里极速配送 - 阿里云算法大赛总结 总结一下新的教训 1.由于都是NP难题,获得最优解用常规的方法非常困难,对于不是算法科班出身的人来说,首先应该到网络上寻找一下论文,是否有一些 ...
- 阿里云HttpClient跨天之后解析不了域名
也许这是一个少见的情况,我使用HttpClient写了一个调用第三方服务的请求,在本机测试和腾讯云上测试都没有问题,但是放到阿里云之后,刚启动的时候是没有问题的,但是每次过零点之后,就会报异常: ja ...
- 【新人赛】阿里云恶意程序检测 -- 实践记录10.13 - Google Colab连接 / 数据简单查看 / 模型训练
1. 比赛介绍 比赛地址:阿里云恶意程序检测新人赛 这个比赛和已结束的第三届阿里云安全算法挑战赛赛题类似,是一个开放的长期赛. 2. 前期准备 因为训练数据量比较大,本地CPU跑不起来,所以决定用Go ...
- O准备如何苟进复赛圈?华为软挑开挂指南(附赛题预测)
事先声明,这不是华为软挑的软广,我也不是海军. 这篇文章纯粹是心血来潮,原因是去年上传到github的参赛代码,前几天又有两个人star和fork了. 记得star热潮还是去年4月复赛刚结束的那几天, ...
- 高德携手阿里云发布“LBS云”,账户打通只是第一步
位置.游戏.视频,是公认的基于云计算的三大移动端应用方向.而今,LBS云有了更多进展,在高价值应用与云平台之间实现了资源打通和融合,高德迈出了实质性的一步. 高德地图副总裁郄建军(左)与阿里云业务总经 ...
- 开发者必看!探秘阿里云Hi购季开发者分会场:海量学习资源0元起!
摘要: 开发者分会场致力于帮助开发者学习了解阿里云最新技术,为开发者设计全方位的技术成长与进阶之路. 2019阿里云云上Hi购季活动已经于2月25日正式开启,从已开放的活动页面来看,活动分为三个阶段: ...
- 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 阿里云+wordpress搭建个人博客网站
[正文] 在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识 ...
随机推荐
- echarts饼图禁止鼠标悬浮区块突出
禁止悬浮突出,在series内添加hoverAnimation:false即可 代码如下: option = { color:['#3498db','#EEEEEE'], series: [ { na ...
- vue3响应式模式设计原理
vue3响应式模式设计原理 为什么要关系vue3的设计原理?了解vue3构建原理,将有助于开发者更快速上手Vue3:同时可以提高Vue调试技能,可以快速定位错误 1.vue3对比vue2 vue2的原 ...
- 8个免费、高质量PPT素材网站,建议收藏
免费还高质量的PPT素材网站我只推荐这8个. 不仅能让你的PPT提升一个档次,还能让你从菜鸟秒变大神. 废话不多说,直接上网站,几点收藏起来哦. 1.爱PPT 直达链接:https://www.2p ...
- .net core 配置swagger
首先要现有一个asp.net webApi项目 这里就不赘述了,接下来就按下面的步骤进行即可(本文是基于swagger 1.0.0-rc3版本的配置) 1.在project.json中添加 swag ...
- ONNXRuntime学习笔记(一)
一. DL模型落地步骤 一般情况下,一个DL任务落地的流程一般包含训练和部署两大部分,具体细分我认为可以分为以下几个步骤: 1. 明确任务目标:首先要明确我们最终要达到一个什么样的效果,假设我们的DL ...
- Node.js 中的进程和线程
线程和进程是计算机操作系统的基础概念,在程序员中属于高频词汇,那如何理解呢?Node.js 中的进程和线程又是怎样的呢? 一.进程和线程 1.1.专业性文字定义 进程(Process),进程是计算机中 ...
- 从防御者视角来看APT攻击
前言 APT防御的重要性毋庸讳言,为了帮助各位师傅在防御方面建立一个总体认识,本文会将APT防御方法分为三类,分别是:监控.检测和缓解技术,并分别进行梳理,介绍分析代表性技术.这一篇分析现有的监控技术 ...
- 3.Docker常用命令
帮助启动类命令 启动docker: systemctl start docker 停止docker: systemctl stop docker 重启docker: systemctl restart ...
- Unity-Adressable打包热更
Addressable是Unity推出的打ab包方案,自动依赖: 不需要手动写AB打包方案,不需要关心依赖; 提供本地远程服务异步加载: 打包粒度可调节: 1.Group Addressable打包需 ...
- 905. Sort Array By Parity - LeetCode
Question 905. Sort Array By Parity Solution 题目大意:数组排序,偶数放前,奇数在后,偶数的数之间不用管顺序,奇数的数之间也不用管顺序 思路:建两个list, ...