文摘
物联网的快速发展,云计算框架的缺点暴露,如延迟高、网络拥塞和低可靠性。因此,出现了雾计算框架,扩展云计算和终端之间的雾层。为了解决实时预测电力需求,我们提出一个方法基于XGBoost和ARMA雾计算环境。通过雾计算框架的优点,我们首先提出一个基于原型的聚类算法把企业用户分成几类基于他们的总用电量;然后,我们提出一个模型选择方法通过分析用户的历史记录的用电量和识别最重要的特性。一般来说,如果历史记录通过测试的平稳性和白噪声,用ARMA模型用户的用电量时间序列;否则,如果不通过测试的历史记录,以及一些离散的特性是最重要的,如天气和是否周末,XGBoost将被使用。实验结果表明,我们建议的方法相结合的优点ARMA和XGBoost比经典的模型更准确。
1。介绍
近年来,随着云计算的兴起(1,2),越来越多的计算和存储处理发生在云,云的巨大就业不可避免地导致高延迟,网络拥塞和低可靠性。同时,物联网服务的广泛应用,各种各样的家用电器和传感器将连接到互联网和产生大量数据3- - - - - -5]。据估计,通过物联网设备连接的数量将达到500亿到1000亿到2020年,这意味着将会有越来越多的数据没有现有的控制技术在数据处理和分析,可能会造成隐私泄露,服务质量将会下降(6,7]。在这方面,物联网的快速发展已经加深了云计算的难题。雾计算的出现弥补了这些缺点,也带来了新的机遇和挑战,传统产业的转型升级。电力系统,旨在为企业提供安全、可靠和高质量的电力,已成为不可缺少的一部分在国民经济建设和人民生活,所以它的影响。在目前的技术条件下,它仍然是不可能实现大规模存储电能;因此,它需要根据发电系统负载在任何时候,否则电力供应的质量和使用可能会受到影响,甚至系统的安全性和稳定性可能濒临灭绝。已经成为一个紧迫而重要的研究问题,提高电力需求预测的准确性在雾计算框架。
在电力需求预测领域,学者们进行了广泛的研究。在早期阶段,学者们基本上遵循技术领域的经济预测,关注规则负荷序列的时间序列的形式本身。建立了预测模型通过分析定性的历史负荷和相关因素之间的关系,根据历史数据和参数估计。然而,基于时间序列的方法需要历史数据精度高,天气和节假日等因素不敏感。实际上,很难表达输入和输出之间的非线性关系用一个明确的数学方程由于电力数据非线性,时变和不确定。为了进一步提高电力需求预测的准确性,人工智能方法应用了自1990年代以来,如神经网络、专家系统和小波分析。然而,现有的方法通常可以被应用到一个有限的场景,只有有效的简单电力系统与少量的因素。
存在的主要不足包括以下工作:电力数据样本已被证明有异常但很少现有解决方案的检测和处理异常数据。用户和他们的数据分类时,需要指定集群的数量,和密度分布在集群用户用电量通常被忽视。在建模的过程中,数据的时序特性并不完全挖掘,和之间的交互特性没有充分考虑。大多数的解决方案只是采用单一模型,不能充分发挥每个模型的优势。
为了克服现有解决方案的缺陷,在本文中,我们提出一个短期电需求预测方法相结合的优点XGBoost和ARMA雾计算框架。首先,传感器收集电力消耗的实时数据,然后雾节点企业用户划分为不同的组根据电力消耗的数量和执行异常和异常数据检测和队伍为每个组。其次,模型选择过程将被执行,也就是说,基于一系列测试包括平稳性,白噪声和皮尔逊相关系数的数据,以及观察到的电力消费规则;我们将决定是否使用时间序列模型或基于决策树模型建模的每个企业集团。最后,每个企业用户的预测价值相结合获得最终结果。验证该方法的准确性为20%高于经典模型的实验。
剩下的纸是组织如下:部分2回顾了预测短期电力需求相关工作。部分3描述了框架建议的解决方案,以及相关关键技术的细节。部分4介绍了实验和分析结果。部分5总结了我们的工作,并提供未来的研究计划。
2。相关工作
由于非线性、时变和不确定性特点的电力数据,很难准确地把握相关因素,电力消费变化的规则。如何有效提高电力需求预测的准确性研究人员已成为一个重大的挑战[8]。目前,用于短期电力需求预测的方法主要有时间序列(9- - - - - -11),回归分析(12,13),支持向量回归(14- - - - - -16),神经网络(17- - - - - -20.],贝叶斯[21],模糊理论[20.,22),和小波回声状态网络23]。每一种方法都有自己的适用场景,和没有模型能实现所需的令人满意的结果。
为了提高预测的准确性,当前的研究工作主要集中在三个方向。第一个是探索单一的优化模型。朱et al。24]提出通过ARMA预测日负荷大约第一,然后获得序列的差异noncyclical和强烈受到天气的影响,最后提出一种改进的ARIMA预测模型与适应性强的天气。电力消费的影响因素识别和关键因素之间的映射关系和电力消耗是开采(25,26]。Ghelardoni et al。27)使用经验模态分解方法将时间序列分成两部分,描述这一趋势和本地振荡的能量消耗值,分别,然后使用它们来训练支持向量回归模型。格瓦拉et al。28]使用人类知识为每个相似的子群构造模糊隶属度函数,然后建立一个基于自组织映射的自适应模糊综合模型,支持向量机和模糊推理预测。电力负荷模型建立了基于改进粒子群优化算法和遗传算法29日,30.]。
第二个方向是通过整合不同模型提高预测的准确性。Haque等人提出一种混合智能算法基于小波变换和模糊自适应共振理论(31日]。在[32- - - - - -34),使用小波分解项目负荷序列分解到不同尺度,不同的模型被用来预测不同的组件,最后获得的最终结果是重建组件。Pindoriya et al。35提出一种自适应小波神经网络(AWNN)电力市场的短期价格预测。公司和戈沙尔(36]提出一种局部线性小波神经网络(LLWNN)模型而不是电价预测的小波神经网络。格瓦拉和王37提出一个混合模型,结合了SVR的独特优势和ARIMA模型在非线性和线性建模。
第三个方向是探索综合预测模型。加权平均的结果通过各种算法通常使用,有两种方法来确定权重。第一种是提高拟合精度的历史用电量通过最小化拟合误差。主要方法包括单调迭代算法(38),进化编程(39),和二次规划40]。王等人。41)建议使用自适应实际群优化算法来优化集成模型的重量。第二种是通过评估算法的评分来确定权重。艾略特和Timmermann42]介绍损失函数的概念,量化不同的预测错误造成的负面影响,然后期望损失最小为目标,并执行优化权重。姚明et al。(43,44)采用层次分析法(AHP)在多目标决策分析的相对优势每个算法拟合精度,模型适应性,和结果的可靠性,得到了判断矩阵,然后计算的权重结合每个矩阵的主特征向量。Petridis等人研究的使用概率模型来确定每个模型的权重,结合每个算法得到最终结果的值(45]。没有足够的定量理论基础,此类模型的权重只反映了算法的优缺点。
总之,有很多研究工作对短期电力需求的预测,预测和探索复合模型是主要的趋势。然而,现有的方法仍然有局限性。在智能电网的快速发展的背景下,在本文中,我们提出一个基于XGBoost短期电力需求预测方法和ARMA。
3所示。预测短期电力需求
3.1。问题定义
给定一个数据集 ,是th用电量记录特定的企业用户,和可以表示为一个包含,= ,record_date代表日期时间,user_id企业用户的ID, power_consumption代表了企业用户用电量的那天。
我们使用来自天池的数据集,其中包含1454年的历史记录企业Yangzhong江苏省高新技术产业开发区的从2015-01-01到2016-11-30,以下说明和实验。数据集的例子如表所示1。
给定数据集在未来,一个月时间,我们的目标是预测的总量这个地区的电力需求所需的月的基础上的历史记录。
3.2。建议的方法的框架
3.2.1之上。智能电力系统在雾中计算
雾计算框架具有低延迟,节省带宽,核心和高可靠性46,47]。雾节点位于较低的网络拓扑,因此他们有更少的网络延迟和更多的反应。作为一个云计算和终端之间的中间,雾层可以过滤和聚合企业信息和云只发送必要的信息,从而减少了核心网络的压力。为了满足企业在不同地区,相同的服务将被部署在雾中节点在每个区域。一旦服务在一个特定区域异常,可以快速的请求转发到其他附近相同的服务,这使得框架高度可靠。
框架作为一个云计算的扩展,企业数据进行预处理,使实时决策和提供临时存储,增强用户的体验。在当前的电力系统中,啤酒花的数量从企业终端云一般3到4或更多,那么系统将不得不面对网络延迟实时决策。图1显示了雾的智能电力系统计算的框架。电表收集数据作为传感器,对一些企业重大变化的数据和实时要求高,我们可以在雾节点进行实时决策以满足实时电需求预测的需要;否则,数据可以在雾缓冲节点,压缩以节省网络带宽,然后传输到云上。
3.2.2。电力需求预测方法的过程
图2显示了电力需求预测的过程方法基于multimodel融合算法,其中包括五个主要步骤。
(1)数据预处理。数据收集后,缺失值将和他们的形式将统一。
(2)企业用户集群。为每个企业用户电力需求的大小是衡量计算其历史电力消耗的总量。然后企业用户将被分成不同的组集群根据其大小的电力需求。
(3)模型选择。然后我们的目标来确定一个适当的培训模式为每个组的企业用户。首先,电力消耗的规则对于不同企业用户组,分析了模型选择的预先判断。如果电力消耗改变随着时间的推移,显示周期性变化或一个明显的上升/下降趋势,我们认为通过XGBoost模型用户的数据。如果电力消耗显示了一个不规则的改变随着时间的推移或围绕某一常数波动和波动幅度是有限的,我们认为模型的用户数据时间序列模型。
其次,将进行一系列的测试来验证预先判断,最后确定每个用户组的选择模型。特性相关性分析和功能重要性分数会选择XGBoost建模之前执行。固定和白噪声测试将被执行之前选择ARMA建模。如果适当XGBoost和ARMA,意味着模型将被使用。
(4)模型构建。在模型选择对于一个给定的用户组,执行数据清理,包括检测和异常和异常值的处理。XGBoost建模、异常和异常值将被删除,时间因素的影响和温度的预测将会着重考虑,皮尔逊相关系数将被用来识别冗余特性,选择和适当的特性建立模型结合特性pretraining输出的重要性。地置大概建模,为AMRA地区异常和异常值将被修改的平均价值,和参数和将优化的基于信息的最小数量BIC原则。
(5)预测电力需求。建模对不同企业集团后,每组的预测价值将总结得到最后的日常本地区的电力需求所需的月。
3.3。关键技术
在本节中,我们将详细说明详细的关键技术在电力需求预测方法的五个步骤。
3.3.1。数据预处理
(1)收集外部天气数据。考虑温度对电力消费的影响,我们首先收集外部天气数据http://lishi.tianqi.com。样本如表所示2。
(2)处理缺失值。天池中我们发现有一些缺失值的数据集,那么我们填补缺失值的平均值三天之前和之后的日期缺失值。详细的计算如下所示: 在这代表用户失踪的记录上今年的一天。
(3)统一的数据形式。电力消费记录重组促进下处理。每一列代表企业用户的档案,完全有1454用户。每一行代表某一天的记录,和日期是按升序排序。每个网格代表一个特定用户的用电量在某一天,它可以表示为 。统一数据表如表所示3。
3.3.2。集群用户基于原型K则算法
聚类分析可以找到本地强烈相关的对象组。孤立点检测可以检测对象明显不同于大多数对象通过检测数据的离散性。基于两种技术的特点,在本文中,我们使用一个基于原型的聚类方法来检测数据离散性的程度,以了解数据的分布,然后确定的范围首先,和下一个使用K算法则集群企业用户为了实现企业集团。
基于原型的聚类方法的原理是集群的所有对象,然后评估对象属于集群的程度根据距离。在传统的方法中,对象之间的距离和集群中心是用来测量对象属于集群的程度。在本文中,我们考虑数据分布的密度和采用相对距离。基于这个想法,我们设计企业集团划分的聚类算法如算法所示1。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
我们将天池数据集作为一个例子来说明基于原型的过程K——聚类算法:
首先,我们计算每个企业的历史用电量01/01/2015 10/31/2016,通过使用基于原型的算法和集群的所有样品。我们采取的相对距离测量样本的离散程度,选择阈值20,所以样品相对距离大于20被视为局外人。图3显示了离散点相对距离。
每一个点在图3有一对,这表明企业集群ID和其相对距离中心。有7分高色散,是1416年,175年,174年,90年,129年,1262年、1307年和1310年从高到低。根据图3,数据通常分布在四段的距离。用户1416位于图的顶部,其相对距离大于400,远高于其他点,应该是第一类分类。在图的中间,175年和174年,对150年和200年之间的相对距离,应该划分为第二类。用户ID为90,129,1262,1307,到1310年,100年到20之间的相对距离,应该是第三类。剩下的1447企业用户的相对距离低于20,应该是第四个类别。所以我们组k= 4在使用K则算法。和最终用户聚类的结果如表所示4。
3.3.3。模型选择
模型选择是下一步的基础,它尤其重要。图4显示了模型选择的过程和规则,主要包括四个部分。
(1)数据准备。现在的数据主要包括企业用户ID、组ID,历史用电量,天气数据从2015/1/1 2016/11/30。
(2)模型预先判断基于周期性/趋势分析和非线性/弱平稳
(2)周期性/趋势分析。周期性分析是找出用电量用户是否会随时间周期性变化。如果用户的用电量显示正常波动,双方增加速度是相似的波的峰值,峰值的出现是密切相关的,也就是说,=权力 ,在那里是时间跨度;然后我们可以预先判断XGBoost模型适合这个角色。
趋势分析是找出改变的电力消费模式是否会展示一些趋势。如果一个用户的用电量显示上升或下降的趋势,峰值随时间变化的外观和显示了正面和负面的关联关系,那么我们也可以考虑使用XGBoost这个角色的模型。
(2 b)非线性/弱稳定分析。如果用户的用电量呈现不规则的改变或突变或没有明显的变化,结果表明,序列的用电量是非线性的。如果用户的用电量显示围绕某一常数波动和波动大约是在相同的范围内,可以看出数据的均值和方差都是常数,这表明数据没有明显的趋势。如果均值无关随着时间的变化,和序列之间的影响变量延迟后几乎是相同的时期,它反映了弱平稳的数据。所以我们可以预先判断,像ARMA时间序列建模适合于这种数据与弱平稳。
(3)对XGBoost模型验证。如果XGBoost作为一种合适的选择用户预先判断,一系列的测试包括皮尔森相关系数和功能的重要性分析将最后决定使用XGBoost之前执行。
(3)功能生成。功能是信息从数据中提取有用的预测。特征提取主要是基于现有的背景知识,这样的特性可以发挥更好的作用在机器学习算法。基于深入分析的特性,我们主要是提取时间和天气特征作为输入的特性。
(3 b)相关性分析。然后我们使用皮尔逊相关系数测试分析功能之间的相关性和预测价值。我们使用的结果特性生成和电力消费数据进行测试。如果预测目标之间的相关性和一些离散的特性,比如天气,节假日,工作日/ nonworkday强,最好使用XGBoost建模。
(3 c)特性分析的重要性。功能分析是指分析重要性每个特性之间的关系和目标价值和重要性研究每个特性的影响变化的目标。通过输出所有功能的重要性的pretraining XGBoost模型中,如果不能在时间序列特征的因素,如天气,假期,和工作日/ nonworkday,有很高的分数,它可以决定使用XGBoost模型。
如果两个测试得分较低,表明用户的数据不适合XGBoost模型,我们可以转向测试是否适用于时间序列模型(ARMA)。
(4)对ARMA模型验证。如果ARMA预测报告作为一种合适的选择用户,或者如果XGBoost并不合适,然后执行一系列测试包括皮尔森相关系数、稳定性测试,和白噪声测试来验证ARMA是否合适。
(4)相关性分析。(3 b)一样,我们测试特性之间的相关性和目标价值利用皮尔森相关系数。如果目标和离散特性之间的相关性很低,我们可以考虑使用时间序列模型(ARMA)初步。
(4 b)稳定性测试。平稳性是时间序列建模的先决条件。如果数据是静止的,通过样本时间序列可以获得的拟合曲线仍然惯性继续在未来一段时间。如果数据不是静止的,它表明样本拟合曲线的形状没有“惯性”的特点延续;即根据样本时间序列曲线拟合获得在未来会有所不同从当前样本拟合曲线。测试数据的平稳性,我们使用的单位根检验。如果电力消耗数据单位根序列,数据是静止的。
(4)白噪声测试。白噪声序列是平稳随机序列没有任何信息。如果是白噪声序列,它表明,序列的值之间没有关系,这是一个纯粹的随机序列。自相关系数等于零,也就是说, , 。如果通过白噪声测试,结果表明,序列是一个非白人噪声序列。
如果平稳性和白噪声的测试都通过了,我们可以确定ARMA模型适用于建模用户的数据。
(5)平均值模型。如果XGBoost和ARMA适用于建模,然后用均值模型作为最后的选择。均值模型以历史用电量数据的均值作为预测价值。
然后我们通过两个例子显示模型选择的过程:一个是一个小的企业,另一个是企业与ID 1307。图5显示了每日用电量的第1307届企业1/1/2015 10/31/2016,的设在的表示15天的时间。
从图5的曲线,我们可以发现1307企业波动均值线从2015年到2016年,波动振幅几乎是一样的,这是符合弱稳定性和非线性的特点。所以它可以预先判断采用ARMA建模。
图6显示一个小的数据的企业。
从图6可以看出,曲线呈现出周期性的波动随着时间的变化。通过分析,我们可以发现曲线提出了一个“W”的形状,它在1/1/2016是对称的,每个小单元的峰值波动的一周。波的数据在每个星期就像一个凸线,显示高中间低。它可以判断,小型企业的用电量深受年份和星期。所以它可以预先判断使用XGBoost建模。
从上面的分析中,我们可以发现,大多数企业是高度与时间相关特性,因此我们可以提取时间特性(48]属性功能建设。刚刚et al。49]介绍了温度电力消耗的影响,所以我们还要考虑温度的影响。然后我们使用皮尔逊相关系数测试之间的关系从每组企业用电量和特性。
这可能导致电力消费变化的主要因素是专门见表5。
图7是1307的皮尔森相关系数测试结果的企业。
相关系数矩阵是一个对称矩阵。之间的相关特性和目标可以被视为功能的重要性,更重要的是如果是接近1或−1。从图7,我们可以发现大量的时间特性获得第1307届企业相对较低,因此可以推断它的电力消费特征与时间无关的特性。接下来,我们对数据进行平稳性检验和白噪声测试的1307企业。
表6第1307届企业显示了测试结果。
从表6平滑处理后,我们可以发现单位根检验统计量的值(0.0089)的系列显著小于0.01,所以最初的假设是严格拒绝,法官系列是平稳序列。的白噪声测试的价值明显低于0.01,所以我们严格拒绝原假设,即法官对数处理系列是一个静止的非白人噪声序列。结合预断和三个测试的结果,我们可以确定选择ARMA建模的数据1307企业。
从图8,我们可以发现大量的时间特性为小型企业是相对较高的,所以它可以推断出,小型企业的电力消费特征与时间特性高度相关。特别是功能“假日”最强烈的相关性,而时间序列模型不能充分利用温度和假日的特性。所以时间序列建模不适合小型企业。
然后我们计算功能重要性分数为小型企业通过在XGBoost pretraining,结果如图9。
训练后,XGBoost排序功能的重要性从高到低,结果是机灵,daydis,陶氏,maxt,薄荷,dom,假日,woy (f2、f7 f0, f9, f10, f1, f6,和f3)。我们可以发现小机灵企业影响,陶氏,daydis, maxt,大大和薄荷,与之前的分析是一致的。
结合测试的预断皮尔逊相关系数和功能的重要性分数,我们可以确定XGBoost建模更适合小企业。
3.3.4。异常数据处理
数据质量对模型的性能是至关重要的。大量的原始数据中的异常数据可能会导致结果的偏差,所以有必要清理数据。缺失值的处理已经完成数据预处理,然后,在这一部分中,我们主要是执行异常数据的检测和处理。
为了检测异常数据,异常值检测通常是用来发现的值明显偏离大部分的样品。对于一些企业,我们用pretraining建模标记偏离太多的突然点拟合曲线作为离群值。基于原型用于聚类的孤立点检测方法检测的异常值明显偏离重心。这个异常值检测算法还采用类似于算法的相对距离1。有一个小的区别;即异常值检测算法基于聚类原型滤波器使用适当的阈值的异常值在第四步骤并输出检测离群值。
图10显示了原始企业日常用电量的175。
从图可以看出10175的电力消耗企业有巨大的第一年和第二年之间的区别,所以将使用分段检测。我们以年为单位进行分段检测。图11显示了孤立点检测的基于原型的聚类的结果。
为了方便数据检测、数据是根据日期、编号1/1/2015距离那一天。第一年,我们使用阈值 ;即与相对距离大于5点视为离群值。第二年,我们使用阈值 ;即分相对距离大于2.6作为异常值检测。从图11,我们可以看到,红点明显偏离重心的数据,这是异常数据,和绿色的斑点是正常的数据。
对于异常数据,我们采用不同的策略对不同的模型。如果使用XGBoost,异常值将直接被删除;否则,如果使用ARMA或平均值模型,异常值将被修改之前和之后三天的平均价值的异常值。
175企业,因为它是决定使用XGBoost模型,我们直接删除异常值。图12显示了175企业的日常用电量数据清洗。从图12,我们可以看到,数据清理后的曲线变得光滑。很明显,电力消费模式变化轻轻地在第一年。在第二年,有一个明显的小高峰,显示用电量的增加。
3.3.5。建立ARMA模型
ARMA的基本思想是,根据平稳时间序列,这可能是微分或对数处理一系列静止的必要时,建立一个模型来描述随机过程,然后最好的预测未来时间的价值是通过建立模型和观测时间序列值。
的ARMA建模过程如图所示13。它主要由四个步骤组成。
(1)根测试(ADF)是用来测试系列的平稳性。如果系列是静止的,白噪声测试将被执行。否则,微分或对数操作将被用来制造一系列静止。
(2)白噪声测试执行。如果系列是一个平稳随机序列,没有信息提取,我们退出过程。如果系列通过白噪声测试,显示了系列是一个静止的非白人噪音系列,它可以由ARMA建模。
(3)使用参数优化,我们确定 , 基于最小信息量BIC原则。
(4)预测使用地置大概模型构建AMRA地区的电力需求。
正如我们之前提到的,数据1307企业适合的ARMA模型。在数据处理中,对数处理。对数处理可以使数据平滑,使数据更固定在不改变数据的趋势。根据ADF检验的结果,我们认为1307企业的系列是一个平稳非白人噪声序列,然后使用参数优化确定p, q基于最小信息量BIC原则。
的拟合结果1307企业通过ARMA如图14。蓝色曲线代表其实际用电量。红色代表拟合线的ARMA(2,0),从图14,我们可以看到ARMA模型的预报值基本上是一致的,和拟合性能好。
3.3.6。构建XGBoost模型
一个集成的过程构建XGBoost模型如图所示15。它主要由四个步骤组成。
(1)功能相关性测试:相关测试是一种统计测试的变量是否相关和相互关联的程度。我们使用皮尔逊相关系数来衡量特征之间的相关性。如果两个特性之间的关系是相对的高,这表明它们之间的线性相关性存在,和必须有功能冗余。
(2)功能重要性测试:功能模型是很重要的,但是太多的特性会导致冗余和过度拟合。因此,我们需要过滤功能。根据功能重要性的分数,分数越高,更重要的功能是,成绩较差的特性可以被丢弃。
(3)建模培训:处理的特性后,我们可以构建模型。选择XGBoost训练模型和使用5倍交叉验证方法验证模型在培训过程中。
(4)使用建立XGBoost模型预测电力需求。
小型商业企业的数据作为一个例子来说明XGBoost建模的过程。数据已经被打扫过了。表中列出的功能5首先,我们应该过滤特性。
图16皮尔逊相关系数测试的结果显示功能的小型企业。分数的相关系数矩阵可以被看作是特征之间的相似性,如果低。如果两个特性的相关性非常高,这意味着其中一个是多余的。从图16机灵,我们可以看到,woy, moy (f2、f3、f4);daydis和mondi (f7和f8);maxt和薄荷(f9和f10);机灵、woy moy (f2、f3、f4);和季节(季)高度相关,这意味着有功能冗余。同时,结合分数的功能重要性pretraining XGBoost模型图的输出9保留最后的特性是陶氏,dom,机灵,woy,节日,daydis, maxt,薄荷。
图17给出了拟合曲线的小型企业5倍交叉验证后,蓝线代表的实际值和红色代表XGBoost模型的拟合曲线。可以看出XGBoost模型的拟合曲线与实际曲线基本上是一致的。
4所示。实验
我们使用1454年的用电量数据企业Yangzhong高新技术产业开发区江苏省从2015-01-01到2016-11-30的实验。2015-01-01和2015-01-01之间的数据作为训练集,以及2016-11-01和2016-11-01之间的数据作为测试集验证模型。实验主要包括两个部分:参数优化,可以指节4.3提出的模型的有效性验证,可在部分4.4- - - - - -4.6。详细的结果分析之前,我们将介绍评估指标和古典模型比较的部分4.1和4.2,分别。
4.1。评价指标
(1)美。我们用美来的一个指标。美指之间的平均绝对误差预测值和真实的。公式如下所示: 在哪里指的是价值观和预测指的是真实的。小美价值,更精确的模型。
(2)得分。为了测量预测之间的平均误差值和实际,我们用分数作为第二个指标,详细的计算显示为以下:
分数是一个函数来计算相对误差。分数值越大,更精确的模型。
4.2。模型比较
我们选择以下四个经典算法进行比较。
(1)ARMA。该算法将数据序列的电力消耗随着时间的变化作为一个随机序列,并使用一个特定的数学模型来描述序列。
(2)GBDT模型。功能是首先从原始数据中提取,然后选择皮尔逊相关系数和功能的重要性分数。GBDT pretraining获得的分数。最后,通过培训获得的预测价值和GBDT建模。
(3)随机森林模型。功能是首先从原始数据中提取,然后选择皮尔逊相关系数和功能的重要性分数。随机森林的pretraining获得的分数。最后,通过培训获得的预测价值和建模与随机森林。
(4)XGBoost模型。功能是首先从原始数据中提取,然后选择皮尔逊相关系数和功能的重要性分数。XGBoost pretraining获得的分数。最后,通过培训获得的预测价值和XGBoost建模。
4.3。参数优化
树的深度XGBoost模型。深度XGBoost模型的主要参数,所以我们第一次工作在XGBoost优化深度模型。
图18基于XGBoost模型显示了梅的变化当深度不同的值。水平坐标指的是深度的值,纵坐标是指美价值,与不同的颜色代表不同的企业和曲线。一般来说,美变成了更小的深度增加时。但深度足够大时,美不会改变。有问题时,会导致过度拟合深度太大,过于细分类将扩大计算。根据图18为小型企业,当深度是3,美是最小的;也就是说,性能是最好的。同样的,企业的最佳深度的ID是174,175,90,129,和1262 3,3,1,2,分别和2。
在ARMA模型。对于ARMA模型,最重要的参数和 。表7是企业的BIC信息1307什么时候p, q在ARMA 有不同的价值观。
据的信息量最小的原则,找到最好的ARMA参数在所有成对的p, q。从表7,两人为1307的信息量最小的企业,所以参数对吗适合1307企业更好。
4.4。验证用户聚类的合理性
在我们建议的方法,我们提出集群用户第一。因此,在本节中,我们的目标是验证步骤的合理性。我们比较美和分数值两种情况,有或没有用户聚类,5岁以下模型、ARMA, XGBoost GBDT,随机森林,我们提议XGB-ARMA。结果如表所示8。
从表8垂直,通过比较美和评分值,五个模型的表现除了XGBoost集群企业用户时有所改善。它证明了步骤的合理性。通过比较美和分数值水平,XGB-ARMA的性能是最好的,因为它有最小的美和得分最高的。
4.5。不同模型的比较
在本节中,我们的目标是做一个详细的对比提出了模型和4经典模型。图19显示了美价值变化与月当我们使用ARMA, GBDT,随机森林,XGBoost或XGB-ARMA分别从2015年1月至2016年10月。在图19,设在表示月;设在代表美价值。不同的颜色代表不同的模型的曲线。
从图可以看出19美XGB-ARMA值是最低的22个月的大部分时间里,随着时间的推移和XGB-ARMA的美值逐渐降低,表明模型是越来越多的静止时间的增加。另一方面,可以看出,各种型号的美值在2月(春节附近)相对较高,表明该模型是被春节。总的来说,XGB-ARMA优于其他模型,进一步证明了模型的有效性。
4.6。结果测试集
在本节中,我们使用测试集上的预测结果来验证我们提出的模型的可靠性。图20.显示了基于XGB-ARMA模型拟合曲线在2016年11月。
在图20.,设在代表2016年11月,每天设在代表了力量。红色曲线代表拟合结果;蓝色曲线代表了真正的价值。从图20.我们可以看到,拟合曲线是光滑的和具有良好的泛化。它与真实值有相似的趋势。蓝色曲线突然滴在26日,27日和28日,第1416届以来企业占用的1/4用电量停止工作三天。
据统计分析,预测的美基于XGB-ARMA 2016年11月为171641.423967,得分为92.61。它证明了该模型具有良好的拟合性能。的结果,我们可以得出结论,不同的模型有不同的优点和缺点,当数据从不同的角度解释。一些作品利用单一预测模型,因此放弃更好的机会,因为一些企业可能有更好的模型。不同的企业有不同的用电模式。最好是根据自己的特点选择不同的模型,而不是采用单一模型。XGB-ARMA模型结合了ARMA模型和XGBoost模型的优点,所以它可以捕获用电量的变化规律不同的企业更全面拥有不同模型的优势。
5。结论
在本文中,我们提出一个XGB-ARMA模型来预测短期电力需求相结合的优势XGBoost和ARMA雾计算框架。它可以充分利用雾节点的存储和计算能力,实现质量流量和低延迟需求的智能电力系统数据预处理、本地计算和实时决策。本文的主要贡献主要包括以下。
(1)提出基于基于原型的集群企业用户K则算法,聚类结果显示用电量的密度分布和清晰的语义。它是符合帕累托原则;也就是说,20%的企业用户消耗了80%的电力能源。
(2)我们建议选择不同模型对不同用户根据历史用电量的特点。提出了刚性模型选择过程,包括模型预先判断和模型的决心。预先判断是通过分析周期性/趋势和非线性/弱静止的历史曲线,而模型的确定是通过一系列的测试,包括相关测试,功能重要性分数,静止不动的,和白噪声测试。
(3)模型构建之前,我们提出一个处理异常数据对不同模型的策略。此外,我们构建一个丰富的功能集通过扩展的单一列日期时间,如天气,周末和节假日。
未来的工作包括以下几点:首先,我们的目标是介绍当地经济和人口流动数据研究其他因素对电力消费的影响;第二,我们要探索一种新的方法的企业用户聚类分类用户根据数据分布和不同premodeling结果;第三,我们希望采用可视化技术(50在展示我们的解决方案。
数据可用性
数据用于支持本研究的发现是天池许可下提供的,所以不能免费提供。访问这些数据将被作者要求,天池的许可。
的利益冲突
作者宣称没有利益冲突有关这篇文章的出版。
确认
国家自然科学基金支持的研究是中国没有。61772560),湖南省自然科学基金(没有。2016 jj3154),科研项目在中南大学教授,中国(没有。904010001),为在中南大学研究生创新项目(没有。1053320181628)。