移动推荐算法是阿里天池赛2015年赛题之一,题目以移动电商平台的真实用户-商品行为数据为基础来构建商品推荐模型。该题现已成为新人入门的经典演练对象,博主也希望基于该题场景,加深对机器学习相关知识的理解,积累实践经验。关于题目回顾与数据初探,可参考:天池离线赛 - 移动推荐算法(一):题目与数据解析,本文讨论如何进行特征构建,为之后基于模型的方法实现提供支持。
特征工程回顾
特征工程是机器学习方法在工业界得到有效应用的基础。业界普遍的认为:数据和特征决定了学习的上限,而模型和算法只是在逼近这个上限。所以,做好特征工程,是高效实现机器学习和数据挖掘任务的基础。关于特征工程的详细内容,可参考:特征工程到底是什么? - 知乎。
特这构建与选取是特征工程的重要内容,包括:
- 结合业务对象和数据可用性确定所需特征(包括特征的定义、数值特性、特征组合衍生…);
- 基于原始数据构建特征数据并作基本预处理(SQL、数据清洗…);
- 针对不同模型进行特征预处理,包括采样、单个特征预处理(归一化、离散化、缺值处理…)、多个特征的处理(PCA、LDA、Clustering、卡方检验、相关系数、正则化…);
- 在模型训练中分析选取特征(有效性、重要性);
- 。。。
特征构建
预研思路
首先给出特征构建时的一些思路:
由于用户行为对购买的影响随时间减弱,根据分析,用户在一周之前的行为对考察日是否购买的影响已经很小,故而只考虑距考察日一周以内的特征数据。
由于数据来源于垂直电商,其特点是线上购买线下消费,猜测其购买行为具有一定的周期性,进一步猜测行为周期为一个星期。待预测目标考察日为 12.19 ,是星期五,所以分割出11.18~12.18数据中的四段以星期五为考察日,一周为考察期的数据,一共有4组,其中一组涉及双十二异常期,故而省区,还剩下三组数据如下:
part 1 - train: 11.22~11.27 ->