JDD-2017 京东金融大数据竞赛-销量预测-15th解决方案
通过竞赛数据中店铺过往的销售记录,商品信息,商品评价,以及广告费用等信息来建立预测模型,预测店铺未来90天内的销售额。 训练数据包含2017-04-30日之前270天之内若干店铺的每日订单量、销售额、顾客数、评价数、广告费用等数据,下架时间在2017-04-30之后或者未下架的商品数据,以及这些店铺2016年6月-2017年1月每月末后90天内的销售额。
特殊的数据主要包含以下几部分
- 活动促销:比如双11和618
- 特殊月份:比如过年前后
- 店铺刷单:有些店铺平时销量很低,会有几天莫名其妙的很高
- 下降商品:某些店铺会在短时间内下架大量的商品
我们试过非常多的方案,最终选择了使用一个月作为训练区间,该月的前三个月作为特征提取区间
- 在售总商品数
- 平均每个商品的订单量
- 平均每个商品的实际销量
- 平均每个商品的退货订单数
- 未售商品占总商品的比例
- 总销售金额
- 平均每个订单销售金额
- 总优惠金额
- 平均每笔订单优惠金额
- 总优惠金额占总销售金额比
- 总订单量
- 总退货订单量
- 总实际订单量
- 总退货订单金额
- 退货金额占总销售额金额的比
- 总实际销售金额
- 平均每笔订单实际销售金额
- 总顾客数
- 平均每个顾客的订单量
- 平均每个顾客的购买金额
- 平均每个顾客的退货订单数
- 平均每个顾客的退货金额
- 总优惠笔数
- 总优惠金额占总退货金额比例
- 平均每笔订单总优惠金额占总退货金额比例
- 平均每笔优惠金额
- 平均销售金额增长率(每个月和前一个月算增长率,所有增长率取平均)
- 平均订单量增长率
- 平均退货订单增长率
- 平均退货金额增长率
- 总好评数
- 总中评数
- 总差评数
- 总评论数
- 平均好评数
- 平均中评数
- 平均差评数
- 好评率
- 差评率
- 中评率
- 平均好评率增长率
- 平均每个月的充值广告费用占总销售金额比
- 平均每个月的充值广告费用占实际销售金额比
- 平均每个订单的好评率
- 平均每个订单的差评率
- 平均每个订单的好评数
- 平均每个订单的差评数
- 总销售额
- 当月销售额
- 前一个月总销售金额
- 前两个月总销售金额
- 前三个月总销售金额
- 前一个周总销售金额
- 前两个周总销售金额
- 前三个周总销售金额
- 前一个月下架商品数
- 前两个月下架商品数
- 前三个月下架商品数
- 最近一周下架商品数
一开始加的特征比较多,因为效果还不错吧,所以也没有根据线上去判断一下哪些特征是否有用,而且这个比赛想构建一个比较稳定的线下验证是非常困难的,因为销量波动还是比较大的,所以更多的时候是以线上来验证我的一些想法。根据特征的重要性来看,跟销售金额有关的特征比较强一些,某些特征重要性非常低但是我也没删除。
因为某些店铺的销量波动实在是太大了,所以除了预测销量的模型之外,我还尝试构建了一个二分类模型,主要来区别销量比较平稳和销量波动很大的商铺,所以最终的模型为: