一、 赛题说明
1. 竞赛题目
在真实的业务场景下,我们往往需要对所有商品的一个子集构建个性化推荐模型。在完成这件任务的过程中,我们不仅需要利用用户在这个商品子集上的行为数据,往往还需要利用更丰富的用户行为数据。定义如下的符号:
- U:用户集合
- I :商品全集
- P:商品子集,P ⊆ I
- D:用户对商品全集的行为数据集合
那么我们的目标是利用D来构造U中用户对P中商品的推荐模型。
2. 数据说明
数据主要包含两个部分。第一部分是1000万用户在商品全集上的移动端行为数据(D),包含如下字段:
字段 | 字段说明 | 提取说明 |
---|---|---|
user_id | 用户标识 | 抽样&字段脱敏 |
item_id | 商品标识 | 字段脱敏 |
behavior_type | 用户对商品的行为类型 | 包括浏览、收藏、加购物车、购买,对应取值分别为1,2,3,4 |
user_geohash | 用户位置的空间标识,可以为空 | 由经纬度通过保密的算法生成 |
item_category | 商品分类标识 | 字段脱敏 |
time | 行为时间 | 精确到小时级别 |
实例如:
141278390,282725298,1,95jnuqm,5027,2014-11-18 08
这些字段中behavior_type字段和time字段包含的信息量最大,user_geohash字段由于缺失值太多,基本没法使用。
第二个部分是商品子集(P),包含如下字段:
字段 | 字段说明 | 提取说明 |
---|---|---|
item_id | 商品标识 | 抽样&字段脱敏 |
item_geohash | 商品位置的空间信息,可以为空 | 由经纬度通过保密算法生成 |
item_category | 商品分类标识 | 字段脱敏 |
实例如:
117151719,96ulbnj,7350
训练数据包含了抽样出来的一定量用户在一个月时间(11.18~12.18)之内的移动端行为数据(D),评分数据是这些用户在这个一个月之后的一天(12.19)对商品子集(P)的购买数据。参赛者要使用训练数据建立推荐模型,并输出用户在接下来一天对商品子集购买行为的预测结果。
3. 评估指标
比赛采用经典的精确度(precision)、召回率(recall)和F1值作为评估指标。具体计算公式如下:
其中PredictionSet为算法预测的购买数据集合,每条记录包含用户id和商品id两个字段,即表示预测某用户会在12月19日购买某商品;ReferenceSet为真实的答案购买数据集合。
二、 数据集分割
1. 日期分割
我们总共获得了1000万用户在一个月的行为数据(11.18~12.18),需要预测的是在12月19日用户的购买情况,因而我们采用滑窗的形式来构造训练集和预测集。
线下
Train Feature Span :11.18