时间:2024-07-28
刘太明, 邓祖兵
(中国烟草总公司贵州省公司, 贵州, 贵阳 550001)
现阶段,经济发展是社会发展的核心,也是社会稳定的基本要求。高质量发展的前提是改善供给的高效性,达到供需动态平衡,这为我国经济发展起到推动作用,也指引了未来经济发展方向,具有现实意义。我国的高质量发展区域逐渐增多,经济决策成为发展的核心内容。在决策过程中,必须收集当地相关经济数据,从大量数据中寻找规律,发现经济数据异常,并对可能出现的异常趋势进行预测,避免不利事件的发生,进而做出更加合理的决策,确保地方经济健康发展。因此,对于经济数据的异常趋势预测已经成为值得深入探究的话题。
文献[1]探究一种将长短记忆网络与滑动窗口相结合的异常数据检测方法,利用长短记忆网络完成数据预测,获取预测值和真实值之间的差值,针对所有数据选取恰当的滑动窗口,并将窗口内全部差值进行建模,结合差值的概率密度分布情况获取出现异常的可能性,实现异常趋势预测。文献[2]提出基于深度学习的异常趋势预测方法,利用抽样法对数据进行预处理,确保处理后的数据尺度相同,将数据输入到具备4层隐藏层的卷积神经网络模型中进行异常检测,结合检测结果实现异常趋势预测。
上述两种方法发现的某些异常值是由于统计操作不当而导致的,并非实质意义上的异常值[3],在分析时应去除。由于数据预处理方式不当,导致最终的预测趋势不够准确,为此本文使用基于时间序列的决策树方法对高质量发展区域的经济数据异常趋势进行智能预测。本文通过数据集成、标准化与归一化处理等过程,完成预测前的数据预处理,提高预测精度,构建决策树预测模型,实现对异常趋势的预测。此方法对于防范异常事件发生具有现实意义,为高质量发展区域的经济提供保障。
对高质量发展区域的经济数据异常趋势进行分析需遵循经济学原理,采集的数据要能够反映出高质量发展。数据采集原则需遵循下述几点。
(1) 由于本文的分析目标是区域经济数据,因此必须采集能够全面体现高质量经济发展的数据,即所有数据需具有经济分析的实际意义。
(2) 高质量发展关系到众多指标,不同指标数据对其关联程度[4]不同,因此在采集数据时需获取相关性较强的数据。
(3) 确保采集到的数据类型具备周期性,这样能够保证指标稳定性,避免数据分析出现偏离状况,确保预测结果的精准。
(4) 为减少预测时间,避免数据类型重复,所采集的经济数据必须是最小集合,同时还能达到全面预测目的。
按照上述要求,对某区域高质量发展经济数据进行采集,得到的数据种类如图1所示。
图1 经济数据类型
在采集数据过程中,往往会获取一些冗余数据或出现缺失,导致数据出现人为的异常,为此需利用下述方法实现数据预处理。
数据预处理在数据分析过程中起到举足轻重的作用,可将原始数据处理成容易聚类、方便分组的数据。本文预处理过程分为数据集成、标准化与归一化处理等步骤。
(1) 数据集成
数据集成[5]的本质就是将不同格式、类型的数据集中为某个大数据,为其他预处理过程提供便捷服务。其可以解决的关键问题是减小数据的分散性与冗余性。
针对数据分散性特征可使用数据仓库完成。此技术的关键是使分布在不同数据源中的数据集中存放在数据库中,其优势在于能够对采集到的数据实现最优管理。
针对数据的冗余特征可使用数据清洗方式,找出重复数据,并对其过滤,能够减少储存空间,提高异常检测效果。
针对数据的异构特征可制定相关变换准则,使数据具有一致性特征,提高预测精度。
(2) 标准化处理
研究采集的数据类型较多,因此度量标准也存在一定差异,这会影响异常特征提取结果。为了将采集的各类经济数据进行标准化处理,将采集的初始数据从多元化空间变换到统一空间,消除分布产生的度量误差,且能够保持经济数据样本的间距,突出异常的经济数据。本文利用z-score标准化算法[6]完成预处理,算法步骤如下。
步骤一 计算数据集X={x1,x2,…,xn}的平均值x-,公式如下:
x-=1n∑ni=1xi
(1)
式中,x-代表全部数据的平均值,xi表示集合中第i个数据,n描述数据集合中全部数据数量。
步骤二 用式(2)对数据集合中的数据做标准化处理:
yi=xi-x-1n-1∑ni=1(xi-x-)2
(2)
式中,yi表示第i个数据经过标准化之后的形式。
标准化处理后的变量会在0上下浮动,如果高于0表明大于平均水平。
(3) 归一化处理
在对经济数据进行标准化处理后,由于量纲的不同,在统一计算时带来不便。为此,通过归一化[7]方式对存在量纲的公式进行转换,变为无量纲表达式。本文利用极大极小值方法完成数据的归一化处理,其主要过程是对初始数据做线性转换,令转换后的数据值在[0,1]范围内,具体的数据表达式如下:
zi=xi-minXmaxX-minX
(3)
式中,zi代表第i个数据经过归一化操作的形式,maxX和minX分别代表集合X中的极大值与极小值。
应用归一化操作的数据会提高收敛速度,减少预测时间。
对预处理后的经济数据进行异常特征提取[8],选取最具代表性的特征向量,根据该向量辨别正常和异常数据。特征提取的越精准,后续预测也会越准确。
本文采用主成分分析法实现特征提取,从经过处理的数据集合中选择少量但是具备代表性的数据,用其描述数据集合中的多数变量,此处代表性较强的数据即为要寻找的数据特征。该算法的经济数据异常特征提取过程如下:
(1) 输入经济数据样本集,进行SMOTE采样,对初始经济数据进行排列,构建经济数据矩阵T:
T=t11t12…t1n
t21t22…t2n
⋮⋮⋮
tm1tm2…tmn
(4)
其中,有n条经济数据,每条数据具有m个属性值。
(2) 针对矩阵T做均值化处理;
(3) 为保证均值Ψ等于0,令矩阵中全部经济数据均减掉均值,达到中心化处理目的;
(4) 计算均值Ψ的协方差矩阵F,表达式为
F=1n∑ni=1Ψ2i
(5)
(5) 根据线性代数原理,计算矩阵F的特征值e1,e2,…,en和其相对的特征向量v1,v2,…,vn;
(6) 对特征值e1,e2,…,en进行降序排序,正交化特征向量v1,v2,…,vn,得到正交化后的特征向量为V1,V2,…,Vn;
(7) 获取所有特征属性的贡献程度[9],并按照由小到大的顺序排列,提取前t个主分量;
在决策树[10]方法中具有根节点、决策节点与叶子节点三种重要节点。其中,根节点表示样本集合的初始分类,可训练集合中全部实例;决策节点能够对这些实例进行保存。根据某属性值进行分裂,能得到下一层次的决策节点,如果决策节点的数据属性都相同则停止分裂,此时为叶子节点,不同分支代表结果输出。
决策树能够体现出分类规则,通过由上至下的递归方式将上述提取的最佳特征当作根节点,完成属性比较,再结合各属性值从根节点进行分支,并在叶节点得到结果。该算法就是在建立决策树时,根据不同属性分裂到叶节点,进而发现分类规则,每条路径均与一条分类准则对应。
在构建决策树的过程中,将信息增益率当作度量,并通过信息熵完成数据的分类预测。熵(Entropy)是表示数据集合纯度的指标,对其定义如下:
Entropy(S)=∑n′i′=1pi′log2pi′
(6)
式中,S为样本数据集合,结合某属性将数据分为n′个子集,任意一种类型子集取得的概率表示为pi′。
如果根据属性A将样本集合S分解成v个种类,j为属性类别数量,则划分后的信息熵计算公式如下:
EntropyA(S)=∑vj=1SjSEntropy(Sj)
(7)
式中,SjS代表属性为Sj的数据集合在初始样本集合S中的占比。
某属性完成数据集合划分后,信息熵的理想差值称作信息增益,其可以衡量属性的划分能力。属性A对集合S进行划分的信息增益Gain(S,A)表达式如下:
大量研究表明,对文化的认识也离不开对交际的认识。文化和交流是不可分割的统一体。沙皮尔(Sapir)指出,文化是交际的同义词,实际上二者在很大程度上同构、同质[5]。语言交际与文化既共存于一体又相互依赖、相互制约形成一个对立统一的辩证关系。
Gain(S,A)=Entropy(S)-EntropyA(S)
(8)
判断属性分裂数据的均匀程度称作分裂信息度量,SplitInfo(S,A)表示利用属性A将样本集合S分割成v个输出时产生的信息,表达式如下:
SplitInfo(S,A)=∑vj=1Si′Slog2Si′S
(9)
样本集合S按照属性A进行划分后的信息增益率为
InfoGainRatio(S,A)=Gain(S,A)SplitInfoA(S,A)
(10)
综上所述,构造决策树的详细过程如下:
输入:经济数据属性集合V、分类属性C与样本集合S;
输出:决策树。
步骤一 建立某节点表示为N′;
步骤二 如果S中的数据属性均为C,此时节点N计作N′,即某个具有C类特征的节点,反之进行下一步;
步骤三 如果S属于空集,将N′当作叶节点,若S为非空集合,继续执行下一步;
步骤四 获取不同属性的信息增益率,并确定增益率最高的属性,通过该属性标出节点N′;
步骤五 获得属性V的任意一个属性Vi′,通过节点M得出一个V=Vi′的分支;
步骤六 如果Si′表示训练集合E内Vi′属性的集合,那么当Si′为空集,此时加入某叶节点,并将其当做集合S中的一类,反之加入某(V-Vi′,C,Ei′)返回节点;
步骤七 通过递归方法反复进行上述操作,即可构建出完整的决策树。
引入时间序列相关概念,利用上述构造的决策树建立异常数据趋势预测模型。预测模型构建过程如下:
(1) 建立时间序列矩阵D,D=(x′1,x′2,…,x′k),其中,k代表时间序列数量,由于j为属性类别数量,则akj描述一条数据。因此有:
x′1=(a11,a12,…,a1j)
(11)
x′k=(ak1,ak2,…,akj)
(12)
D=a11…a1j
⋮⋮
ak1…akj
(13)
(2) 任意挑选两个时间序列x′1与x′2,对这两个序列进行整合,变为序列对s=〈x′1,x′2〉,同时在序列对集合中保存;
(3) 直到序列对数量为设置的数量n′,构成候选序列对集合S′:
S′=(s1,s2,…,sn′)
(14)
(4) 对全部候选数据对的信息熵进行计算:
Entropy(S′1)=∑2k=1(Childk)·H(Childk)=
-∑cj=1x′1·log2(x′1)∑2k=1P(Childk)·H(Childk)
(15)
式中,Childk为子结点,H为序列熵。
(5) 对所有候选数据对存在的信息增益量运算:
Gain(D,S′1)=Entropy(D)-Entropyx′1(D)
…
Gain(D,S′n)=Entropy(D)-Entropyx′n(D)
(16)
(6) 利用式(17)获取所有数据对的信息增益率:
InfoGainRatio(D,S′1)=Gain(D,S′1)EntropyS′1(D)
…
InfoGainRatio(D,S′n)=Gain(D,S′n)EntropyS′n(D)
(17)
(7) 将信息增益率值最高的数据对当做分裂目标;
(8) 获取其余全部数据对和分裂数据对的动态时间规整距离DTW:
DTW(S′1=〈x′1,x′2〉)=min∑kk=1Dkk
…
DTW(S′n=〈x′a,x′b〉)=min∑kk=1Dknk
(18)
(9) 如果分裂数据对表示为S′r,根据距离值进行划分,d>DTW(S′r)表示无异常趋势,d (10) 重复操作(2)~(9),完成对决策树不同分支的划分,同时也实现了对全部数据类型的异常趋势智能预测。 为证明本文提出的预测方法性能,在SQL Server 2000数据库系统基础上进行仿真实验。仿真参数如表1所示,仿真环境如图2所示。 表1 仿真实验参数表 经济数据异常主要通过GDP数据体现出来,按照图1所示的数据类型,对2006—2012年某高质量发展区域的经济数据进行采集,并将采集到的数据作为训练样本,利用本文方法首先将经济数据存储于数据库中,经过标准化处理和归一化处理,获得统一格式的反映宏观经济趋势的低频信息;再利用主成分分析法提取数据异常信息,建立经济数据的决策树分类算法,并进行经济异常数据的预测。将本文方法与文献[1]和文献[2]进行比较,对2013—2019年时间段内的经济异常趋势进行预测,得出的结果如图3所示。 由图3可知,本文预测的结果与实际结果较为接近,均在2018年时出现异常趋势,其余年份随着社会经济水平的整体发展呈现上升趋势。在2018年时,因该地区失业率增加且货币政策收紧,影响了GDP总值的增量,因此经济数据出现异常。本文方法预测的结果与该地区实际状况相符,这是因为本文方法应用了决策树算法,可以更加全面地对所有类型的数据进行划分,通过主成分分析法判定数据的异常,并分为正常与异常两类,提高分类精度,进而使预测结果更加准确。 算法执行时间是体现智能化的重要因素,本文方法与文献[1]、文献[2]方法均表现出一定智能化,人工干预过程较少,因此对3种方法的预测时间进行对比,结果如图4所示。 通过图4可以看出,随着预测年份的增多,所需的训练数据也不断增加,如本文方法在预测2016年数据时需要8.2 s,而到2019年需要13.9 s,这是因为在分析当年份的经济情况时,需要参考之前年份的数据,随之需要分析的数据量逐年增加。因此3种方法的执行时间均呈上升趋势。但本文方法相对于文献[1]、文献[2]方法耗费的执行时间较少,这是因为本文方法在预测之前对全部经济数据进行预处理,通过标准化去除冗余,利用归一化统一格式,简化了数据的体量,能够为经济数据的处理减少计算量,进而大大减少了预测耗费的时间。 图4 不同算法执行时间对比图 高质量发展区域属于经济更加稳定的地区,稳定是每个国家发展的必然前提,如果经济无法稳定,则不具备发展的持久性。因此,本文利用决策树方法对高质量发展区域的经济数据异常趋势进行智能预测。仿真实验证明了所提方法预测出的异常趋势与实际状况相符,同时也体现出高度智能化优势。但本文研究还存在一定局限性,应从更多方面采集地区经济数据,扩展数据来源,让预测结果存在更大价值。3 仿真实验数据分析与研究
4 总结
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!