项目背景
本赛题提供用户在2016年1月1日至2016年6月30日之间真实线上线下消费行为,预测用户在2016年7月领取优惠券后15天以内的使用情况。
评价方式
本赛题目标是预测投放的优惠券是否核销。针对此任务及一些相关背景知识,使用优惠券核销预测的平均AUC(ROC曲线下面积)作为评价标准。 即对每个优惠券coupon_id单独计算核销预测的AUC值,再对所有优惠券的AUC值求平均作为最终的评价标准。
查看数据
首先导入数据,上图是用户2016.1.1-2016.6.30的信息,接下来理解下每个字段的意思
User_id:用户id
Merchant_id:商户id
Coupon_id:优惠券id
Distance_rate:优惠情况
Distance:用户离店的距离
Date_received:获得优惠券的日期
Date:使用优惠券的日期
项目思路
优惠券特征处理
定义函数将优惠券折扣信息进行特征提取,满,减,折扣
2.查看用户购买使用优惠券的情况
发现有优惠卷购买的人数只占一小部分,可视化一下购买使用优惠卷的情况,发现使用率最低的为2,4月份,3月份最高
日期的特征的提取,提取是否为工作日和星期,这里需要用到one-hot编码,依旧定义函数来处理
添加label,用户在拿到优惠券后,15天内如使用为1,未使用则为0,依旧定义函数处理
这边可以说是顾客和商户的profile建立,通过客户和商户以前的买卖情况,提取各自或者交叉的特征。选择哪个时间段的数据进行特征提取是可以探索的,这里使用20160101到20160515之间的数据提取特征,20160516-20160615的数据作为训练集。
用户特征的处理
商户特征的处理
用户的特征
每个用户拿到的优惠券数量
每个用户购买含优惠券和无优惠券购买
用优惠券消费
距离商户的距离
使用优惠券购买与优惠券的数量的比值
使用优惠券数量与后,购买数量的比值
商户特征
来自商户的优惠卷数量
用户来商户的消费次数
距离用户的距离
用户来商户的消费次数 用优惠券
使用优惠券购买与优惠券的数量的比值
使用优惠券数量与后,购买数量的比值
定义函数来处理以上特征
模型的选择,这是个二分类问题,用的是逻辑回归和GDBT
最后的结果逻辑回归好些,结果也不理想,有许多可以改进的地方
总结
特征选取可以更多,不够全面,如15天内多次用优惠券消费的,使用概率会更高
可以划分更多的训练数据
模型的参数可以优化
尝试使用更多的模型
线上的数据可以用上,这次没有提取线上特征
学习资料点击这里