基于用户模式与深度学习联合模型的用水量预测方法及系统与流程

文档序号:33325707发布日期:2023-03-03 23:05阅读:56来源:国知局
基于用户模式与深度学习联合模型的用水量预测方法及系统与流程

1.本发明涉及城市供水管网技术领域,尤其公开了一种基于用户模式与深度学习联合模型的用水量预测方法及系统。


背景技术:

2.随着社会的发展及人们生活水平的提高,用水量日益增长,水资源短缺问题日益突出。科学、准确的预测用水量,对于开展合理的供水规划具有重要的意义。
3.用水量数据本质上是一个时间序列,因此对用水量的预测方法通常采样时间序列分析预测方法,即挖掘历史时间序列数据特点,推断未来发展趋势。从实现预测的方法角度而言,目前主要分为基于统计的预测方法:如基础的简单平均法、移动平均法等,到目前常用的ar(auto-regressive,自回归)、ma(movingaverage,模型移动平均)、arma(auto-regressive moving average,模型自回归移动平均)、arima(auto-regressive integrated moving average model,自回归移动平均模型),包括facebook推出的prophet等;另一类为机器学习算法:利用随机森林、支持向量机等的回归模型进行预测,或基于神经网络和深度学习,如bp(back propagation,反向传播算法)神经网络、卷积神经网络、长短期神经网络等。
4.目前研究者们常借鉴时间序列方面的研究方法用于用水量预测。张君雅、yasar、mombeni等主要运用基于统计的时间序列预测方法如回归分析、arima、sarima(seasonal autoregressive integrated moving average,季节性差分自回归滑动平均模型)等,专利cn113947240a中,运用了基于最小二乘的预测方法。专利cn109146196a中,运用了蜻蜓-高斯过程耦合算法。李彦彬《基于改进gm-lssvr模型的郑州市用水量预测》、王梓涵《基于tck-lstm-att模型的城市用水量预测》、朱兴统《基于改进粒子群优化bp网络的城市用水量预测》、郭强《基于贝叶斯bp神经网络的区间需水预测方法》、专利cn112488392a、以及专利cn114757330a等中公开了基于机器学习、深度学习方面的方法,例如lstm(long short-term memory,长短期记忆网络)、bp(back propagation,反向传播)神经网络、tcn(temporal convolutional network,时域卷积网络)等,对预测模型进行改进,侧重于参数优化和计算速度提升等方面。在专利cn112036668a中,考虑了周期性分解的方法加入对周期性数据的考量。
5.然而,现有的技术方法中,较多关注于某一种预测模型方法上的性能优化,解决如算法收敛速度、预测的实时调度问题等,而往往忽略用户类别这一先验知识,未充分挖掘不同用户的用水特点,从而影响预测模型的性能。与此同时,不少预测方法将温度、湿度、风向、降水量等数据作为特征输入模型,增加了模型复杂度;某天的温度、湿度、风向等存在变化且只能在当天获取或预测,影响了预测效率。
6.因此,针对现有用水量预测方法中,对用水量数据的用户用水模式考虑相对较少,是目前亟待解决的技术问题。


技术实现要素:

7.本发明提供了一种基于用户模式与深度学习联合模型的用水量预测方法及系统,旨在解决现有用水量预测方法中,对用水量数据的用户用水模式考虑相对较少的技术问题。
8.本发明的一方面涉及一种基于用户模式与深度学习联合模型的用水量预测方法,包括以下步骤:
9.利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项;
10.利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。
11.进一步地,利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项的步骤包括:
12.利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正;
13.进一步地,对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好的用水量时间序列分解为趋势项、周期项和噪声项。
14.对于已经处理好的用水量时间序列,分解的三个部分为:
15.x
t
=t
t
+s
t
+n
t
16.其中,x
t
为已经处理好的用水量时间序列,t
t
为用水量序列的趋势部分,表示用水量的朝着某一方向变化的趋势;s
t
为周期性部分,主要表示用水量的周期性特征;n
t
为噪声项,为用水量时间序列的随机部分。
17.进一步地,利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项,最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测的步骤包括:
18.提取用户用水模式并融合周期性序列;
19.运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。
20.进一步地,长短期记忆人工神经网络的选择性记忆功能通过遗忘门、输入门和输出门三个门结构实现,
21.遗忘门的门结构为:
22.f
t
=σ(wf·
[h
t-1
,x’t
]+bf)
[0023]
其中,f
t
为遗忘门计算结果,σ为sigmoid函数,h
t-1
为上一个lstm单元输出的用水量值,x’t
为当前时刻用水信息输入向量,wf为遗忘门的权重矩阵,bf为遗忘门的偏置项;
[0024]
输入门的门结构为:
[0025]it
=σ(wi·
[h
t-1
,x’t
]+bi)
[0026][0027]
其中,i
t
为更新信息,为更新的细胞状态计算结果;wi、wc分别为输入门的相应权
矩阵;bi、bc分别为输入门的相应偏置项;细胞状态的更新公式为:
[0028][0029]
输出门的门结构为:
[0030]ot
=σ(wo·
[h
t-1
,x’t
]+bo)
[0031]ht
=o
t
*tanh(c
t
)
[0032]
其中,o
t
表示细胞状态的输出部分,σ为sigmoid函数,h
t-1
为上一个长短期记忆人工神经网络单元输出的用水量值,wo为输出门的相应权矩阵,bo为输出门的偏置项;h
t
为长短期记忆人工神经网络单元输出的用水量值。
[0033]
本发明的另一方面涉及一种基于用户模式与深度学习联合模型的用水量预测系统,包括:
[0034]
提取模块,用于利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项;
[0035]
预测模块,用于利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。
[0036]
进一步地,提取模块包括:
[0037]
预处理单元,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正;
[0038]
分解单元,用于对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好的用水量时间序列分解为趋势项、周期项和噪声项。
[0039]
进一步地,分解单元中,对于已经处理好的用水量时间序列,分解的三个部分为:
[0040]
x
t
=t
t
+s
t
+n
t
[0041]
其中,x
t
为已经处理好的用水量时间序列,t
t
为用水量序列的趋势部分,表示用水量的朝着某一方向变化的趋势;s
t
为周期性部分,主要表示用水量的周期性特征;n
t
为噪声项,为用水量时间序列的随机部分。
[0042]
进一步地,预测模块包括:
[0043]
提取单元,用于提取用户用水模式并融合周期性序列;
[0044]
预测单元,用于运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。
[0045]
进一步地,预测单元中,长短期记忆人工神经网络的选择性记忆功能通过遗忘门、输入门和输出门三个门结构实现,
[0046]
遗忘门的门结构为:
[0047]ft
=σ(wf·
[h
t-1
,x’t
]+bf)
[0048]
其中,f
t
为遗忘门计算结果,σ为sigmoid函数,h
t-1
为上一个lstm单元输出的用水量值,x’t
为当前时刻用水信息输入向量,wf为遗忘门的权重矩阵,bf为遗忘门的偏置项;
[0049]
输入门的门结构为:
[0050]it
=σ(wi·
[h
t-1
,x’t
]+bi)
[0051][0052]
其中,i
t
为更新信息,为更新的细胞状态计算结果;wi、wc分别为输入门的相应权矩阵;bi、bc分别为输入门的相应偏置项;细胞状态的更新公式为:
[0053][0054]
输出门的门结构为:
[0055]ot
=σ(wo·
[h
t-1
,x’t
]+bo)
[0056]ht
=o
t
*tanh(c
t
)
[0057]
其中,o
t
表示细胞状态的输出部分,σ为sigmoid函数,h
t-1
为上一个长短期记忆人工神经网络单元输出的用水量值,wo为输出门的相应权矩阵,bo为输出门的偏置项;h
t
为长短期记忆人工神经网络单元输出的用水量值。
[0058]
本发明所取得的有益效果为:
[0059]
本发明提供一种基于用户模式与深度学习联合模型的用水量预测方法及系统,通过利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项;利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。本发明提供的基于用户模式与深度学习联合模型的用水量预测方法及系统,对于基于时间序列分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm(long short-term memory,长短期记忆人工神经网络)算法相对于bp(back propagation,反向传播算法)、cnn(convolutional neural networks,卷积神经网络)网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn(recurrent neural network,recurrent neural network)网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
附图说明
[0060]
图1为本发明提供的基于用户模式与深度学习联合模型的用水量预测方法一实施例的流程示意图;
[0061]
图2为图1中所示的利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项的步骤一实施例的细化流程示意图;
[0062]
图3为图1中所示的利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的所述周期项进行融合,成为修正后的用水模式项,最终将提取的所述趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测的步骤一实施例的细化流程示意图;
[0063]
图4为本发明提供的基于用户模式与深度学习联合模型的用水量预测方法一实施例的细化流程示意图;
[0064]
图5为本发明提供的基于用户模式与深度学习联合模型的用水量预测系统一实施例的功能框图;
[0065]
图6为图5中所示的提取模块一实施例的功能模图示意图;
[0066]
图7为图5中所示的预测模块一实施例的功能模图示意图。
[0067]
附图标号说明:
[0068]
10、提取模块;20、预测模块;11、预处理单元;12、分解单元;21、提取单元;22、预测单元。
具体实施方式
[0069]
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案做详细的说明。
[0070]
如图1和图2所示,本发明第一实施例提出一种基于用户模式与深度学习联合模型的用水量预测方法,包括以下步骤:
[0071]
步骤s100、利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项。
[0072]
利用时间序列分解方法将用水量时间序列进行分解,提取分解后的用水量时间序列的趋势项及周期项。
[0073]
步骤s200、利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。
[0074]
利用聚类、统计规律等方法对用户进行分类,并获得分类后用水用户相应的用水模式;并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最后将提取的趋势项、噪声项及修正后的用水模式项作为特征输入基于lstm(long short-term memory,长短期记忆人工神经网络)的深度学习和训练模型中,预测用水量结果。
[0075]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,通过利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项;利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0076]
进一步地,请见图2,图2为图1中所示步骤s100一实施例的细化流程示意图,在本实施例中,步骤s100包括:
[0077]
步骤s110、利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正。
[0078]
从系统所获取的用水量时间序列中,因监测仪器、通信传输等原因,会出现部分单个或多个点的噪声或异常值,这些明显偏离常规模式的数据将对数据集的训练带来影响,
因此应首先予以修正。在本实施例中,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正。为保持时间序列的连续性,异常点及缺失值可由训练集平均值代替。
[0079]
步骤s120、对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好的用水量时间序列分解为趋势项、周期项和噪声项。
[0080]
对于已经处理好的用水量时间序列x
t
,可利用时间序列分解算法将其分解为三个部分:
[0081]
x
t
=t
t
+s
t
+n
t (1)
[0082]
在公式(1)中,x
t
为已经处理好的用水量时间序列,t
t
为用水量序列的趋势部分,表示用水量的朝着某一方向变化的趋势;s
t
为周期性部分,主要表示用水量的周期性特征;n
t
为噪声项,为用水量时间序列的随机部分。在本实施例中,根据用水特点的先验知识,设周期为24小时,具体周期内样本数可根据所获取时间序列的采样周期确定,以保证分解模型的灵活性,如采样周期为15分钟,则周期设为96。
[0083]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正;对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好的用水量时间序列分解为趋势项、周期项和噪声项。本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0084]
优选地,参见图3,图3为图1中所示步骤s200一实施例的细化流程示意图,在本实施例中,步骤s200包括:
[0085]
步骤s210、提取用户用水模式并融合周期性序列。
[0086]
根据城市用水特点,将用户分成居民小区、中小学校、写字楼公司、商场等所需预测类别;按类别获取其样本并通过统计规律、机器学习中聚类算法等,获取相应类别用水模式特性曲线;可根据实际情况,将工作日与假日(包括普通周末和假期)分开,配合所需预测的用水量时间序列采样周期进行重新计算,最终将用对应时间段的用水模式分量m
t
与周期性分量s
t
融合,成为修正后的用水模式项s

t

[0087]
步骤s220、运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。
[0088]
在本实施例中,运用lstm(long short-term memory,长短期记忆人工神经网络),经过时间序列分解后进行预测。
[0089]
lstm模型具备选择性记忆的优势,解决了循环神经网络(recurrent neural network,以下简称rnn)的梯度爆炸或梯度消失问题。其选择性记忆功能的实现主要通过三个门结构实现:即遗忘门、输入门和输出门。
[0090]
遗忘门(forget gate):
[0091]ft
=σ(wf·
[h
t-1
,x’t
]+bf)
ꢀꢀ
(2)
[0092]
lstm网络可通过遗忘门决定细胞状态中用水量样本中哪些信息需要保留。在公式(2)中,σ为sigmoid函数,h
t-1
为上一个lstm单元输出的用水量值,x’t
为当前时刻用水信息输入向量,wf为遗忘门的权重矩阵,bf为遗忘门的偏置项。
[0093]
输入门(input gate):
[0094]it
=σ(wi·
[h
t-1
,x’t
]+bi)
ꢀꢀ
(3)
[0095][0096]
在公式(3)和(4)中,i
t
为更新信息,为更新的神经细胞状态计算结果;wi。
[0097]
神经元的更新公式如下:
[0098][0099]
输出门(output gate):
[0100]ot
=σ(wo·
[h
t-1
,x’t
]+bo)
ꢀꢀ
(6)
[0101]ht
=o
t
tanh(c
t
)
ꢀꢀ
(7)
[0102]
在公式(5)~(7)中,o
t
表示细胞状态的输出部分,σ为sigmoid函数,h
t-1
为上一个长短期记忆人工神经网络单元输出的用水量值,wo为输出门的相应权矩阵,bo为输出门的偏置项;h
t
为长短期记忆人工神经网络单元输出的用水量值。
[0103]
如图1至图4所示,本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,具体实施例为:
[0104]
1、确定输入变量
[0105]
将时间序列分解并与用户模式融合后后得到的趋势t
t
、用水模式分量s’t
和噪音n
t
三个部分作为一个输入样本的三个特征,即
[0106]
x
t
=[t
t
,s’t
,n
t
]
ꢀꢀ
(8)
[0107]
在公式(8)中,x
t
为模型输入向量,t
t
为时间序列分解后得到的趋势,s’t
为时间序列分解后得到的用水模式分量,n
t
为时间序列分解后得到的噪声。
[0108]
2、归一化
[0109]
为避免三个特征的量纲为模型预测带来误差,统一样本的统计分布性,通过归一化函数将不同的特征均缩放到[0,1]范围内。
[0110]
3、确定时间窗口进行样本划分,形成训练数据集
[0111]
确定观测值序列长度train_length以及预测步长predict_length,即用前序一定长度的用水量数据,预测后续一定长度的用水量数据,并根据相应长度划分训练模型输入输出的长度,并形成训练数据和标签,其中:
[0112]
一个样本数据集表示为:
[0113]
x’t
=[x
t-train_length+1

,x
t-1
,x
t
]
ꢀꢀ
(9)
[0114]
在公式(9)中,x’t
表示样本向量,train_length为观测值序列长度。
[0115]
其对应标签为未分解前的时间点用水量数据:
[0116]yt
=[x
t+1
,x
t+2

,x
t+predict_length
]
ꢀꢀ
(10)
[0117]
在公式(10)中,y
t
表示未分解前的时间点用水量数据,predict_length为预测步长。
[0118]
4、模型训练
[0119]
在lstm模型中,确定隐藏层层数及其神经元数、训练次数,可选用均方误差函数作为损失函数,以adam(adaptive momentum,自适应动量的随机优化方法)算法作为优化器,提高计算效率,减少内存需求。
[0120]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,通过提取用户用水模式并融合周期性序列;运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0121]
请见图5,图5为本发明提供的基于用户模式与深度学习联合模型的用水量预测系统一实施例的功能框图,在本实施例中,该基于用户模式与深度学习联合模型的用水量预测系统包括提取模块10和预测模块20,其中,提取模块10,用于利用时间序列分解方法将用水量时间序列分解,提取其趋势项、噪声项及周期项;预测模块20,用于利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。
[0122]
提取模块10利用时间序列分解算法)分解方法将用水量时间序列进行分解,提取分解后的用水量时间序列的趋势项、噪声项及周期项。
[0123]
预测模块20利用聚类、统计规律等方法对用户进行分类,并获得分类后用水用户相应的用水模式;并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最后将提取的趋势项、噪声项及修正后的用水模式项作为特征输入基于lstm(long short-term memory,长短期记忆人工神经网络)的深度学习和训练模型中,预测用水量结果。
[0124]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,通过利用时间序列分解方法将用水量时间序列分解,提取其趋势项及周期项;利用聚类、统计规律方法对用户进行分类并获得相应的用水模式,并将对应时段的用水模式与提取的周期项进行融合,成为修正后的用水模式项;最终将提取的趋势项、噪声项及修正后的用水模式项作为特征输入长短期记忆人工神经网络深度学习方法进行预测。本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0125]
进一步地,请见图6,图6为图5中所示的提取模块一实施例的功能模图示意图,在本实施例中,提取模块10包括预处理单元11和分解单元12,其中,预处理单元11,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正;分解单元12,用于对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好
的用水量时间序列分解为趋势项、周期项和噪声项。
[0126]
预处理单元11从系统所获取的用水量时间序列中,因监测仪器、通信传输等原因,会出现部分单个或多个点的噪声或异常值,这些明显偏离常规模式的数据将对数据集的训练带来影响,因此应首先予以修正。在本实施例中,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正
[0127]
分解单元12对于已经处理好的用水量时间序列x
t
,可利用时间序列分解算法将其分解为三个部分:
[0128]
x
t
=t
t
+s
t
+n
t
ꢀꢀ
(11)
[0129]
在公式(11)中,x
t
为已经处理好的用水量时间序列,t
t
为用水量序列的趋势部分,表示用水量的朝着某一方向变化的趋势;s
t
为周期性部分,主要表示用水量的周期性特征;n
t
为噪声项,为用水量时间序列的随机部分。在本实施例中,根据用水特点的先验知识,设周期为24小时,具体周期内样本数可根据所获取时间序列的采样周期确定,以保证分解模型的灵活性,如采样周期为15分钟,则周期设为96。
[0130]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,利用基于统计规律等方法对原始用水量时间序列训练数据进行预处理,将异常数据修正;对于已经处理好的用水量时间序列x
t
,利用时序分解算法进行分解,将已经处理好的用水量时间序列分解为趋势项、周期项和噪声项。本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0131]
优选地,参见图7,图7为图5中所示的预测模块一实施例的功能模图示意图,在本实施例中,预测模块20包括提取单元21和预测单元22,其中,提取单元21,用于提取用户用水模式并融合周期性序列;预测单元22,用于运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。
[0132]
提取单元21根据城市用水特点,将用户分成居民小区、中小学校、写字楼公司、商场等所需预测类别;按类别获取其样本并通过统计规律、机器学习中聚类算法等,获取相应类别用水模式特性曲线;可根据实际情况,将工作日与假日(包括普通周末和假期)分开,配合所需预测的用水量时间序列采样周期进行重新计算,最终将用对应时间段的用水模式分量m
t
与周期性分量s
t
融合,成为修正后的用水模式项s

t

[0133]
预测单元22运用lstm(long short-term memory,长短期记忆人工神经网络),对基于时间序列分解算法分解后的时间序列进行预测。
[0134]
lstm模型具备选择性记忆的优势,解决了循环神经网络(recurrent neural network,以下简称rnn)的梯度爆炸或梯度消失问题。其选择性记忆功能的实现主要通过三个门结构实现:即遗忘门、输入门和输出门。
[0135]
遗忘门(forget gate):
[0136]ft
=σ(wf·
[h
t-1
,x’t
]+bf)
ꢀꢀ
(12)
[0137]
lstm网络可通过遗忘门决定细胞状态中用水量样本中哪些信息需要保留。在公式
(13)中,为sigmoid函数,h
t-1
为上一个lstm单元输出的用水量值,x’t
为当前时刻用水信息输入向量,wf为遗忘门的权重矩阵,bf为遗忘门的偏置项。
[0138]
输入门(input gate):
[0139]it
=σ(wi·
[h
t-1
,x’t
]+bi)
ꢀꢀ
(13)
[0140][0141]
在公式(13)和(14)中,i
t
为更新信息,为更新的细胞状态计算结果;wi。
[0142]
神经元的更新公式如下:
[0143][0144]
输出门(output gate):
[0145]ot
=σ(wo·
[h
t-1
,x’t]+bo)
ꢀꢀ
(16)
[0146]ht
=o
t
*tanh(c
t
)
ꢀꢀ
(17)
[0147]
在公式(15)~(17)中o
t
表示细胞状态的输出部分,σ为sigmoid函数,h
t-1
为上一个长短期记忆人工神经网络单元输出的用水量值,wo为输出门的相应权矩阵,bo为输出门的偏置项;h
t
为长短期记忆人工神经网络单元输出的用水量值。
[0148]
如图1至图4所示,本实施例提供的基于用户模式与深度学习联合模型的用水量预测方法,具体实施例为:
[0149]
1、确定输入变量
[0150]
将时间序列分解并与用户将时间序列分解并与用户模式融合后后得到的趋势t
t
、用水模式分量s’t
和噪音n
t
三个部分作为一个输入样本的三个特征,即
[0151]
x
t
=[t
t
,s’t
,n
t
]
ꢀꢀ
(18)
[0152]
在公式(18)中,x
t
为模型输入向量,t
t
为时间序列分解后得到的趋势,s’t
为时间序列分解后得到的用水模式分量,n
t
为时间序列分解后得到的噪声。
[0153]
2、归一化
[0154]
为避免三个特征的量纲为模型预测带来误差,统一样本的统计分布性,通过归一化函数将不同的特征均缩放到[0,1]范围内。
[0155]
3、确定时间窗口进行样本划分,形成训练数据集
[0156]
确定观测值序列长度train_length以及预测步长predict_length,即用前序一定长度的用水量数据,预测后续一定长度的用水量数据,并根据相应长度划分训练模型输入输出的长度,并形成训练数据和标签,其中:
[0157]
一个样本数据集表示为:
[0158]
x’t
=[x
t-train_length+1

,x
t-1
,x]
ꢀꢀ
(19)
[0159]
在公式(19)中,x’t
表示样本数据集,train_length为观测值序列长度。
[0160]
其对应标签为未分解前的时间点用水量数据:
[0161]yt
=[x
t
,x
t+1

,x
t+predict_length
]
ꢀꢀ
(20)
[0162]
在公式(20)中,y
t
表示未分解前的时间点用水量数据,predict_length为预测步长。
[0163]
4、模型训练
[0164]
在lstm模型中,确定隐藏层层数及其神经元数、训练次数,可选用均方误差函数作
为损失函数,以adam(adaptive momentum,自适应动量的随机优化方法)算法作为优化器,提高计算效率,减少内存需求。
[0165]
本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,同现有技术相比,通过提取用户用水模式并融合周期性序列;运用长短期记忆人工神经网络,对基于时序分解算法分解后的时间序列进行预测。本实施例提供的基于用户模式与深度学习联合模型的用水量预测系统,对于分解算法提取出来的周期性序列,加入用户分类模式的先验知识,通过普适性序列+个体序列的信息融合,充分挖掘数据信息,修正个体差异;lstm算法相对于bp、cnn网络更适用于时间序列数据,并通过三个门结构实现选择性记忆,缓解了rnn网络训练时“梯度消失”问题;通过分解加预测的组合模型,充分提取模型中的周期性先验知识,能够更准确的掌握数据变化趋势,提高预测精度。
[0166]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1