阿里移动推荐算法
前言
截止 2020-01-11 02:45:49,最高成绩 0.1145 ,在官方评测前5名内
report.md
文件里详细记录了我从开始做到最高成绩的思考与方案,包括特征方案和模型参数项目内只保留了 0.098 左右分数的代码文件(包括某些已知BUG和未优化代码)
如有任何问题和建议,欢迎联系 424276284@qq.com
赛题介绍
赛题背景
阿里移动推荐算法背景:赛题以阿里巴巴移动电商平台的真实用户-商品行为数据为基础,同时提供移动时代特有的位置信息,而参赛队伍则需要通过大数据和算法构面向建移动电子商务的商品推荐模型。希望参赛队伍能够挖掘数据背后丰富的内涵,为移动用户在合适的时间、合适的地点精准推荐合适的内容。
在真实的业务场景下,我们往往需要对所有商品的一个子集构建个性化推荐模型。在完成这件任务的过程中,我们不仅需要利用用户在这个商品子集上的行为数据,往往还需要利用更丰富的用户行为数据。定义如下的符号: U——用户集合
I——商品全集
P——商品子集, P⊆I
D——用户对商品全集的行为数据集合
,那么我们的目标是利用D来构造U中用户对P中商品的购买推荐模型。
赛题数据
赛题原数据大小(解压缩后)约为999M,包括以下两个文件及格式:
1.子集商品信息
字段 | 字段说明 | 提取说明 |
---|---|---|
item_id | 商品标识 | 抽样&字段脱敏 |
item_geohash | 商品位置的空间标识,可以为空 | 由经纬度通过保密的算法生成 |
item_category | 商品分类标识 | 字段脱敏 |
2.全集商品信息
字段 | 字段说明 | 提取说明 |
---|---|---|
user_id | 用户标识 | 抽样&字段脱敏 |
item_id | 商品标识 | 抽样&字段脱敏 |
behavior_type | 用户对商品的行为类型 | 包括浏览、收藏、加购物车、购买,对应取值分别是1、2、3、4 |
user_geohash | 用户对商品的行为类型 | 由经纬度通过保密的算法生成 |
item_category | 商品分类标识 | 字段脱敏 |
time | 行为时间 | 精确到小时级别 |
评估相关
评分数据格式具体计算公式如下:参赛者完成用户对商品子集的购买预测之后,需要将结果放入指定格式的数据表(非分区表)中,要求结果表名为: tianchi_mobile_recommendation_predict.csv
,且以utf-8格式编码;包含user_id和item_id两列(均为string类型),要求去除重复。
最后评估采用 F1值 为评估指标。
Precision = True Positive / (True Positive + False Positive)
recall = True Positive / (True Positive + False Negative)
F1 = (2 * Precision * recall) / (Precision + recall)