首页 Stacking集成学习在销售预测中的应用

Stacking集成学习在销售预测中的应用

举报
开通vip

Stacking集成学习在销售预测中的应用 &nbsh1;   Stacking集成学习在销售预测中的应用     尤璞,刘星甫 (江南大学商学院,江苏无锡 214122) 0 引言 需求预测在各行各业都有着重要作用,准确的需求预测能让管理者合理安排订货时间、生产计划等环节,减少库存成本和缺货损失,提升企业核心竞争力。但由于需求变化多样,掌握市场需求动态,作出准确的销售预测,是一项巨大的挑战。目前,国内外的许多学者对...

Stacking集成学习在销售预测中的应用

&nbsh1;

 

Stacking集成学习在销售预测中的应用

 

 

尤璞,刘星甫

(江南大学商学院,江苏无锡 214122)

0 引言

需求预测在各行各业都有着重要作用,准确的需求预测能让管理者合理安排订货时间、生产计划等环节,减少库存成本和缺货损失,提升企业核心竞争力。但由于需求变化多样,掌握市场需求动态,作出准确的销售预测,是一项巨大的挑战。目前,国内外的许多学者对销量预测做了大量研究,采用的 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 主要是时间序列预测技术和以大数据技术为支撑的机器学习预测技术。时间序列模型是比较常见的预测模型,许多学者对时间序列模型进行改进或者对不同模型进行组合,取得了较好的预测效果。时间序列模型在假设需求是一种线性变化趋势的基础上对下一阶段的需求进行预测,其操作简单、容易实现,如果历史销售数据的趋势性较强,就能够较好地拟合数据。但是传统时间序列模型的缺点也很明显,它要求时序数据稳定,无法对复杂的非线性系统进行有效拟合,且容易发生多重共线性,导致预测不准确。

近年来,得益于互联网技术的快速发展和物流服务水平的不断提升,运用数据挖掘技术和机器学习算法等解决销量预测问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 也成为研究热点。Loureiro等发现采用深度学习模型在预测时尚零售市场的销售方面具有良好性能;吴娟娟等针对大数量级的序列预测,提出基于记忆机理的LSTM模型并用销售额数据进行验证,实验结果表明LSTM模型表现优于传统时间序列模型。相较于时间序列模型,机器学习模型可以更好地估计高维数据集,把握住需求变化中的非线性因素,作出更准确的预测。为进一步提升模型性能,一些机器学习技术的组合模型也应用于销售预测。通过组合多个模型,单个模型的预测误差可以被其他模型所弥补,因此可以获得更好的预测效果。

上述研究虽然尝试通过多种方法预测销量,但至今没有主导的预测技术。对于企业管理者而言,如何从多种预测技术中作出选择也是一个难题。传统的时间序列方法需要掌握一定的统计学知识才能熟练运用,且往往受限于固定的模型框架和较为严格的假设条件,对于需要快速响应的商业环境并不适用。而许多机器学习方法应用于销售预测时,过于依赖历史数据,需要预训练大量数据才能达到良好的预测效果。此外,对于时间序列数据,在验证模型时,常规的交叉验证可能会造成数据泄露问题,影响模型在测试集上的表现。

针对销售预测研究现状,本文提出一种基于Stacking集成策略的销售预测方法,将Prophet算法和随机森林、BP神经网络作为基学习器构建Stacking预测模型。该算法充分考虑了不同模型的差异性,使得不同算法的优势得以结合,利用时间序列预测算法,即Prophet算法对数据的周期性进行拟合,再通过Stacking算法融合随机森林和BP神经网络对数据的非线性进行拟合,通过3种异质算法的融合取长补短。同时,将历史销售数据作为新特征,给数据加入了时序性,并采用日向前链的交叉验证方法,避免了数据泄露,提升了预测效果,取得了比单个模型更好的预测性能。

1 算法介绍

1.1 Stacking算法

Stacking算法是一种模型融合算法,通过融合不同的算法增强模型泛化性能,减少预测误差。Stacking算法首先利用原始训练数据训练若干基学习器,再将其预测结果作为新的训练集,训练一个新的元学习器,最后由元学习器输出最终结果。一个基本的两层Stacking算法 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 如图1所示。

Fig.1 Two-layer Stacking model图1 两层Stacking模型

1.2 学习器选择

对于Stacking算法,学习器的选择也是至关重要的一步,选择合适的基学习器和元学习器才能最大程度地发挥取长补短的效果。一般而言,学习器的选择有以下几点需要注意:①各学习器的预测效果要接近且较为优秀;②各学习器要保持一定差异性;③元学习器一般选择稳定性较好的简单模型。

对于销售预测而言,往往要在较短的时间内为商店的大量产品生成预测。传统的时间序列模型往往需要掌握统计学知识才能应用于实践,而且同时对大量时间序列建模需要耗费巨大精力,这对于中小企业的商业应用是一个难点。因此,首先选择Prophet时间序列算法作为基学习器进行预测,该算法无需构造特征,就能够对时间序列作出较好的预测,且可以通过编程实现大量商品的自动化预测。但Prophet算法的缺点也很明显,它无法对数据中的非线性特征进行利用。因此,可以通过Stacking算法融合其他模型以克服Prophet算法的缺点。

综合考虑以上几点,选择随机森林、BP神经网络、Prophet时间序列预测算法作为基学习器,其中随机森林算法采用Bagging的集成学习方式,泛化能力较强、模型调参方便,在实际应用中取得良好效果。BP神经网络算法能够捕捉到时间序列中的非线性因素和趋势,预测准确率高。3种异质算法的差异性保障了元学习器的的改善空间,使得模型的整体预测性能更加优异。第二层的元学习器选择线性回归Linear Regression,以确保稳定性和泛化性能。

1.3 PROPHET算法

1.3.1 模型构成及解释

Prophet模型将预测序列分解为3个主要组成部分:趋势、季节性和节假日。它们按式(1)进行组合。

其中,

g

(

t

)为趋势项,用于拟合时间序列中的分段线性增长或逻辑增长等非周期性变化。其表达式如式(2)所示。

其中,

C

代表容量,

k

代表模型的增长率,

b

代表偏移量。

s

(

t

)表示周期项,一般以周或者年为单位,具体表达式如式(3)所示。

其中,

T

代表周期,

N

表示周期个数,

n

表示周期,

a

b

均为学习参数。h(

t

)表示时间序列中具有非固定周期的节假日或重大事件时间节点对预测值造成的影响,用户可以手动输入。

其中,

D

为节日集合,

Z

(

t

)为指示函数,k表示节假日对预测的影响,

ε

为误差项,表示未在模型中体现的异常变动。

1.4 随机森林算法

随机森林基于Bagging算法对多棵决策树进行集成,每一棵决策树训练样本都由随机采样获得,且所选择的特征也是随机的,这使得随机森林不容易陷入过拟合,最后组合大量决策树的预测结果并将其作为一个整体输出。随机森林算法使用重采样技术,每棵决策树的分类性能都是独立的,可以采取并行学习方式,使得算法训练时间短,能够有效地运行在大数据集上。

1.5 BP神经网络算法

神经网络是机器学习中比较常用的模型,由于其强大的学习能力和非线性建模能力,而被广泛应用于时间序列预测中。而BP神经网络是一种多层前馈神经网络,一般由3部分组成:输入层、隐含层、输出层,每层神经元与下一层神经元全互连。在加入了激活函数之后,提高了神经网络对模型的表达能力,不再是输入的线性组合,而是几乎可以逼近任意函数。训练时首先由输入变量进行正向传播计算,再通过误差反向传播对网络的各连接权值进行修正。一个简单的三层BP神经网络结构如图2所示。

Fig.2 Three-layer BPneural network图2 三层BP神经网络结构

2 基于Stacking框架的销售预测建模流程

2.1 模型训练与调参

机器学习模型除有许多需要在训练过程中优化的参数外,还有大量在训练前需要人为调节的超参数。在实际应用中,一般通过交叉验证和网格搜索调节超参数。对于时间序列预测,传统的交叉验证方法可能会造成用未来数据预测当前数据的情况,不仅存在数据泄露问题,而且这样的预测也没有现实意义。因此,本文采用日向前链(Day Forward Chaining)的交叉验证方式,用前面的数据进行训练,后面的数据进行验证,逐步推进的方式避免了数据泄露问题,真实模拟时间序列的前后关系。日向前链交叉验证如图3所示。对于Prophet模型,不同商品的时间序列不同,需要为每一个商店—商品组合分别进行建模预测。因此,将测试集中商店—商品组合的历史销售情况组成时间序列作为训练集训练Prophet模型,输出预测结果。

Fig.3 Day forward chaining cross validation图3 日向前链交叉验证

2.2 基于Stacking框架的销售预测整体流程

预测方法整体流程大致如下:①对原始数据进行预处理后,利用特征工程构成新的特征集合,利用相关性 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 进行特征选择,删除冗余特征;②划分原始数据集,使用3次日向前链的交叉验证方式,对随机森林模型和BP神经网络模型进行训练和超参数调优,对于Prophet模型,利用商品的历史销售额作为训练集直接进行训练;③各基学习器分别在验证集和测试集上输出预测结果,分别作为元学习器的训练集和测试集;④对新生成的数据集进行数据 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 化处理,对元学习器进行训练,并在测试集上输出预测结果。

本文基于Stacking框架的销售预测流程如图4所示。

3 实验与结果分析

本文模型采用Python的scikit-learn包加以实现。实验在矩池云云平台与Python3.7环境下完成,实验环境为Intel(R)Xeon(R)CPU E5-2678 v3@2.50GHz,8GB RAM设备。实验数据来源于kaggle数据科学平台上公开的商店商品需求预测竞赛。实验数据包含10家店铺在2013-2017年的商品销售数据,共计913 000条数据,由于数据已经过处理,并不存在缺失值和异常值,因此无需进行数据清洗。预测目标是2017年7月至12月10件商品的月销售数据。为全面衡量预测模型的准确性,同时考虑以下3个评价指标:

(1)RMSE均方根误差,如式(8)所示。

(2)MAE平均绝对误差,如式(9)所示。

Fig.4 Flow of Stacking framework图4 Stacking框架流程

(3)MAPE平均绝对百分比误差,如式(10)所示。

其中,y为实际销售额,

y

^为预测值,预测指标越小表示预测得越准确。3个预测指标越小,说明模型性能越好。

3.1 特征工程

本文档为【Stacking集成学习在销售预测中的应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
资教之佳
暂无简介~
格式:doc
大小:27KB
软件:Word
页数:14
分类:互联网
上传时间:2023-11-27
浏览量:0