赛题需求:
本次比赛为参赛选手提供了两个数据集,即训练数据集(train)和测试数据集(test_A榜/test_B榜)。参赛选手需要基于训练数据集,通过有效的特征提取,构建客户进取类产品配置发生时点预测模型,并将模型应用于测试数据集上,输出测试集客户的资配行为预测:任务1:哪些客户会在任务1:来14天内发生进取类产品配置;(二分类,评价指标F2)
任务2:在任务1的基础上,进一步预测配置行为发生在未来的哪一天。(回归)
难点: 训练标签和测试标签样本不平衡
- 数据处理:
删除特征分布较大的特征;缺失值的样本较少(通过数据分析发现,信息缺失严重的用户未来购买理财产品比列很小); - 特征构造
客户历史购买数据表:- 按照购买金额的正负分别构造特征:
- 金额为负时:mean、min、max、sum、count、nunique。
- 金额为正时:mean、min、max、sum、count、nunique。
- 不分正负时:mean、sum、count、nunique。
- 客户最近购买时间、客户平均购买隔时长、客户购买最大间隔、客户购买最短间隔、客户
客户历史浏览数据表:
- 将日期分成时间段(所有浏览记录时是8.1-8.31号的,将其分成四段进行构造特征):
- 1-8日统计page_id(网页id):count、nunique
- 9-16日统计page_id(网页id):count、nunique
- 17-24日统计page_id(网页id):count、nunique
- 25-31日统计page_id(网页id):count、nunique
- 客户点击序网页列特征:利用word2vec进行训练得到特征向量 (强特)
- 客户最近点击时间、客户平均点击间隔时长、客户点击最大间隔、客户点击最短间隔
- 按照购买金额的正负分别构造特征:
- 模型和优化
- 模型:lightgbm、xgboost(最好)、catboost、三者平均
- 优化:利用对抗验证选择与测试集分布差不多的验证集、搜索最佳F2阈值