1. 引言
现如今传统行业的竞争愈演愈烈,超市的形态也更加多样化,智能化,若要在大数据的营销环境中,争取一席之地,必须将数据化技术引入其中,建立与客户的密切联系,实现精准的销售营销策略 [1] 。目前,可用于购买行为预测的模型与方法很多,包括决策树方法,贝叶斯分类算法、支持向量机、神经网络方法以及时间序列预测方法等 [2] 。预测的方法和预测的数据不同,产生的效果也不同。预测方法各有其优点和缺点,但都是对数据从不同角度来进行的解读,因此各个模型的相互组合能够发挥不同方法的优势,对数据有全面综合的理解。目前很多企业已经将数据挖掘与传统的预测方法相结合,极大的改变了超市销售预测的局面 [3] 。许多大型零售商倾向于使用时间序列方法进行预测。这需要大量的销售数据作为数据支撑。对于数据量较少或者小型零售商,则倾向于用使用经验法定性分析 [4] 。
对于时间序列预测模型而言,本文所采用的数据为短期销售数据,时间跨度小,不能很好的体现销量的周期性变化。支持向量机回归(SVR)是根据结构风险最小化原则提出的 [5] ,具有很好的泛化能力。因此针对短期数据的特点,本文通过滑动时间窗口增加时间序列特征,并采用支持向量回归模型进行动态特征提取,通过组合模型,最终建立合理有效的预测模型,从而进行准确的销量预测。该模型较单一的模型具有更好的稳定性和更高的预测准确率。
2. 基本模型概述
支持向量回归模型介绍
支持向量回归模型其核心思想是通过引入非线性映射
,将原始的低维特征空间映射到高维的特征空间,在高维特征空间中构造最优分类超平面 [5] 。假设
,
,
,
,目标是求解下列回归函数
其中,w是权值向量,x表示模型的输入,b是误差值,而
则表示核函数。对于样本
,传统的回归模型通常是基于模型输出
与y的值的差值来计算损失支持向量回归 [6] 的一般形式可表示为:
被称为核函数。只要符合Mercer条件的函数均可用作核函数。尽管可供选择的核函数很多,其中最广泛使用的核函数是径向基函数(RBF)。径向基函数可由下述方程得到:
其中
表示RBF的宽度。本文选择高斯径向基函数作为核函数 [7] ,让C和
在一定的范围内取值,将取定的C和
不断用于训练集,通过网格搜索法最终使得训练集拟合程度最好的一组参数即作为最优参数。
LightGBM模型介绍
LightGBM是一个梯度提升框架,使用基于学习算法的决策树 [8] 。该算法是对随机森林的进一步改进,在模型的树模型中包含了分类树和回归树 [9] 。决策树常用来处理分类问题,在商品销量预测中可以对商品的离散性特征进行有效的处理和预测,回归树常用来处理预测问题,对商品的时间等连续性特性更加敏感。LightGBM采用梯度提升的方式 [10] ,将分类树和回归树进行有效的叠加,该算法在对商品销量预测中,可以有效的将商品的基本属性,如类别,周期性指数等离散体征与按时间滑动窗口获取的连续销量的连续特征有效的结合,使得商品销量预测的多方面特征有一个更加综合的使用。
3. SVR与LightGBM相结合的购买行为预测模型
本次设计所采用的数据是取自于2015年某城市的超市日常交易数据,该超市在一个地市级的小连锁超市,数据为1~7月份完整的交易数据。本文取1~7月份的79,116条交易记录作为训练数据。被购买过的商品类别有849种,中类类别有189种。
本文模型构建主要分为以下阶段,见图1。
3.1. 预处理
预处理阶段主要完成两个工作,一是清理数据中的冗余数据和脏数据;二是提取商品某一段时间的销售行为。由于超市数据的特殊性,逻辑数据不存在问题,但易出现人员操作导致数据错误问题。根据现有资料及数据自身特点,用相关数据进行填写 [11] 。对于商品某段时间的销售行为,选取7天,30天分别为一个时间窗口,根据用户编号和商品编号对窗口期的数据进行提取,形成以时间为顺序的用户对特定商品的购买行为数据 [12] 。
3.2. 训练集和验证集
由于数据量的限制,在做数据处理事,利用滑窗法增加数据量,构造3个数据集进行验证,分别如下表1所示。
3.3. 特征工程构建
征体系由消费者特征组,商品特征组,其他特征组组成。特征提取阶段是对预处理之后的购买行为数据和购买行为对应的商品进行。该过程分为如下2个阶段:
1) 静态特征提取:对商品的特征提取是根据购买行为特征数据中商品编号 [12] ,从已有的商品信息中提取该商品的类别信息、功能分类信息和商品的属性信息。商品的特征数据与购买行为特征数据组合,形成用户购买行为的静态特征。在商品销售特征行为中,分别对预测期前7天,30天的商品的销量,回购量,售卖人数等求最大值、最小值、和值、均值等的统计值 [13] ,来作为用户近一段时间的商品行为特征。
2) 动态特征提取:根据对商品销量趋势数据 [14] 的分析,发现95%以上的商品在时间窗口内的销量
大于10。通过将商品的基本特征和销售特征作为训练数据,利用时间滑动窗口,用SVR模型进行处理,提取商品销售的商品销量周期性指数,用来作为商品销量的动态特征。
4. 实验结果与评价
4.1. 评价标准
预测回归类预测模型精度评价的方法 [15] 常用的有平均绝对误差(mean absolute error, MAE),均方根误差(root mean squared error, RMSE),平均百分比误差(mean percentage error, MPE)和平均绝对百分比误差(mean absolute percentage error, MAPE)。本文选择RMSE来作为判断标准,RMSE的大小表示预测值与真实值之间的差异 ,RMSE值越小,模型最后预测结果的精度就越高。预测模型精度等级分类见表2所示。
4.2. 实验结果
实验中分别采用随机森林、支持向量回归模型,梯度提升回归模型上文中的数据进行预测。实验显示,对于支持向量回归模型,惩罚系数C = 0.1,损失函数中的
参数 = 10,rmse = 2.50119595807;对于LightGBM,feature_fraction' = 0.8,'bagging_fraction': = 0.8,leaves = 24,learning_rate = 0.3,rmse = 2.236。
对比发现,单一模型的情况下,支持向量回归模型的模型效果,次于LightGBM。说明LightGBM在处理连续性特征和离散性特征的效果更优于SVR模型。通过对SVR和随机森林的模型融合,得到的rmse = 1.23209。说明较单一模型而言,组合模型能更好的发挥各模型的优势,较单一模型有更好的提升。

Table 1. Segmentation data set by sliding window method
表1. 滑窗法切分数据集
5. 结束语
在对超市商品销量预测的过程中,先前发表的论文大多是基于长时间的销量预测,采用时间序列进行分析。本文针对短时域的销量预测,创新的采用动态特征提取的方式,通过模型组合的方式,证明以动态特征为基础的组合模型的预测效果,明显高于各单一模型的预测。但预测结果仍受社会因素,促销活动,天气状况等非线性变量因素的影响。接下来的实验,通过利用聚类分析,挖掘商品销售的潜在分类,研究其对销量的影响。