一、 赛题简介
本赛题的比赛背景:随着移动设备的完善和普及,移动互联网+各行各业进入了高速发展阶段,这其中以O2O(Online to Offline)消费最为吸引眼球。据不完全统计,O2O行业估值上亿的创业公司至少有10家,也不乏百亿巨头的身影。O2O行业天然关联数亿消费者,各类APP每天记录了超过百亿条用户行为和位置记录,因而成为大数据科研和商业化运营的最佳结合点之一。以优惠券盘活老用户或吸引新客户进店消费是O2O的一种重要营销方式。然而随机投放的优惠券对多数用户造成无意义的干扰。对商家而言,滥发的优惠券可能降低品牌声誉,同时难以估算营销成本。个性化投放是提高优惠券核销率的重要技术,它可以让具有一定偏好的消费者得到真正的实惠,同时赋予商家更强的营销能力。本次大赛为参赛选手提供了O2O场景相关的丰富数据,希望参赛选手通过分析建模,精准预测用户是否会在规定时间内使用相应优惠券。
二、 数据
本赛题提供用户在2016年1月1日至2016年6月30日之间真实线上线下消费行为,预测用户在2016年7月领取优惠券后15天以内的使用情况。
字表段:
Table 1: 用户线下消费和优惠券领取行为
Table 2: 用户线上点击/消费和优惠券领取行为
Table 3:用户O2O线下优惠券使用预测样本
三、 数据分析
(1)在线下训练集约48.1%的用户参与了线上活动;2.9%的优惠券出现在线上训练集;线下商户与线上商户完全没有交集。
(2)测试集中用户与优惠券均来自线下训练集。
(4)测试集中商家97.22%被训练集中线下商家全部覆盖
(5)测试集中全部是全新的优惠券,与线上与线下训练集的优惠券是完全不同的,所以优惠券的使用情况与优惠券ID无关。
(6)根据经验,我们知道活跃用户更可能使用优惠券,活跃商家所发出的优惠券更可能被使用,用户对某个商家的喜爱程度越高越可能使用这个商家发的优惠券。用户在周末更有时间更可能使用优惠券。
四、 特征提取
1。商户相关:
(1)销售使用优惠券。总优惠券
(2)转移率=销售使用优惠券/总优惠券数。
(3)商家距离用户的平均距离。
(4)商家距离用户最小距离。
(5)商家最大距离用户的最大距离
(6)使用优惠券总销售额:优惠券票率=销售使用/总销售。
(7)优惠券使用比率=销售使用总额/总销售。
2。优惠券相关:
(1)被领取数
(2)消费数
(3)消费率,弃用率
(4)消费平均距离
(5)领取再消费平均距离
3。用户相关:
(1)用户使用优惠券的平均距离。
(2)用户使用优惠券的最小距离。
(3)用户使用优惠券的最大距离。
(4)购买使用优惠券次数。
(5)无领券消费次数。
(6)购买使用优惠券次数。
(7)收到相同优惠券的时间平均间隔、最小间隔、最大间隔。
4.日期
(1)每个月用户收到所有的优惠券计数。
(2)每个月用户收到相同的优惠券计数。
(3)每个月用户收到相同的优惠券最后一个。
(4)每个月用户收到相同的优惠券第一个。
(5)每一天用户收到所有的优惠券计数。
(6)每一天用户收到相同的优惠券计数。
5.折扣率
(1)转换为折扣率。
(2)数据离散化,分为5个区间。
(3)满多少,减多少。
6.距离:
(1)区间离散化,分为10个区间
(2)对每个区间计算领券数,消费数。
(3)领券平均距离。
(4)消费平均距离。
五、 训练模型(xgboost, sklearn)
1.设置基本参数
(1)params={‘booster’:’gbtree’,
‘objective’: ‘rank:pairwise’,
‘eval_metric’:’auc’,
‘gamma’:0.1,
‘min_child_weight’:1.1,
‘max_depth’:5,
‘lambda’:10,
‘subsample’:0.7,
‘colsample_bytree’:0.7,
‘colsample_bylevel’:0.7,
‘eta’: 0.01,
‘tree_method’:’exact’,
‘seed’:0,
‘nthread’:12
(2)num_boost_round=3500
(3)evals =watchlist
2.使用xgb.train()方法进行训练集进行训练,得到模型model
3.使用model.predict()方法对预测集进行预测,得到它们在领取优惠券后15天以内的使用情况。
六、 总结与收获
1.做数据分析,确定分析目的与方法论很重要。本题中的数据分析的目的是:是预测用户领取优惠券后15天以内的使用情况,而使用情况的只有两种:即使用与未使用。是二分类问题,考虑到是求解使用概率,使用xgboost算法较为合适。
2.模型的准确性,特征的提取很关键。
3.对使用python进行数据分析、特征提取、模型训练的理解更进一步。
原文链接:https://blog.csdn.net/weixin_41867765/article/details/79955382?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165277499316781432921534%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165277499316781432921534&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-25-79955382-null-null.nonecase&utm_term=%E4%BC%98%E6%83%A0