CN116384565A - 一种基于缺失数据填补的层次式大气臭氧浓度预测方法 - Google Patents
一种基于缺失数据填补的层次式大气臭氧浓度预测方法 Download PDFInfo
- Publication number
- CN116384565A CN116384565A CN202310295454.5A CN202310295454A CN116384565A CN 116384565 A CN116384565 A CN 116384565A CN 202310295454 A CN202310295454 A CN 202310295454A CN 116384565 A CN116384565 A CN 116384565A
- Authority
- CN
- China
- Prior art keywords
- data
- sequence
- matrix
- layer
- term
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 125
- CBENFWSGALASAD-UHFFFAOYSA-N Ozone Chemical compound [O-][O+]=O CBENFWSGALASAD-UHFFFAOYSA-N 0.000 title claims abstract description 61
- 230000001932 seasonal effect Effects 0.000 claims abstract description 50
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 49
- 238000009792 diffusion process Methods 0.000 claims abstract description 34
- 239000003344 environmental pollutant Substances 0.000 claims abstract description 17
- 231100000719 pollutant Toxicity 0.000 claims abstract description 17
- 238000005070 sampling Methods 0.000 claims abstract description 17
- 239000011159 matrix material Substances 0.000 claims description 102
- 239000010410 layer Substances 0.000 claims description 81
- 238000012549 training Methods 0.000 claims description 60
- 239000013598 vector Substances 0.000 claims description 58
- 230000006870 function Effects 0.000 claims description 35
- 238000011176 pooling Methods 0.000 claims description 35
- 238000001914 filtration Methods 0.000 claims description 34
- 238000000354 decomposition reaction Methods 0.000 claims description 22
- 238000013528 artificial neural network Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 19
- 238000003062 neural network model Methods 0.000 claims description 17
- 238000012546 transfer Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000010276 construction Methods 0.000 claims description 11
- 238000012217 deletion Methods 0.000 claims description 10
- 230000037430 deletion Effects 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 10
- 238000011156 evaluation Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000000737 periodic effect Effects 0.000 claims description 10
- 230000006835 compression Effects 0.000 claims description 7
- 238000007906 compression Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 claims description 7
- 101100481876 Danio rerio pbk gene Proteins 0.000 claims description 6
- 101100481878 Mus musculus Pbk gene Proteins 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 6
- 230000007774 longterm Effects 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 5
- 238000011478 gradient descent method Methods 0.000 claims description 5
- 230000007547 defect Effects 0.000 claims description 4
- 230000002441 reversible effect Effects 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 230000000873 masking effect Effects 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 239000002356 single layer Substances 0.000 claims description 3
- 239000011800 void material Substances 0.000 claims description 3
- BAWFJGJZGIEFAR-NNYOXOHSSA-N NAD zwitterion Chemical compound NC(=O)C1=CC=C[N+]([C@H]2[C@@H]([C@H](O)[C@@H](COP([O-])(=O)OP(O)(=O)OC[C@@H]3[C@H]([C@@H](O)[C@@H](O3)N3C4=NC=NC(N)=C4N=C3)O)O2)O)=C1 BAWFJGJZGIEFAR-NNYOXOHSSA-N 0.000 claims description 2
- 241001522296 Erithacus rubecula Species 0.000 claims 2
- 230000003213 activating effect Effects 0.000 claims 1
- 230000010354 integration Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 14
- 239000000356 contaminant Substances 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000000739 chaotic effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241001334134 Rugopharynx epsilon Species 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 239000000809 air pollutant Substances 0.000 description 1
- 231100001243 air pollutant Toxicity 0.000 description 1
- 238000003915 air pollution Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000003169 central nervous system Anatomy 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013210 evaluation model Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 210000002345 respiratory system Anatomy 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
- G06F18/15—Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Operations Research (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
Abstract
本发明公开一种基于缺失数据填补的层次式大气臭氧浓度预测方法,首先通过季节性时间序列分解算法,将含有缺失数据的大气污染物数据以及气象数据分解为平滑趋势项、季节性周期项与短期波动项。然后使用基于时空序列建模的数据填补算法,对缺失数据进行有效的填补,获得连续数据。最后基于多层次视图臭氧预测方法,以及多次采样预测方法,构建大气臭氧浓度预测模型。本发明综合考虑了大气污染物数据以及气象数据的季节性特征,分解后的序列能够更好反映数据的情况;时空序列数据填补方法能够考虑数据的时空相关性;多层次视图臭氧浓度预测方法,能够表征污染物多尺度扩散传输情况;多次采样方法,能够获得更加稳定而有效的预测结果。
Description
技术领域
本发明涉及一种大气臭氧浓度预测方法,其中包括基于季节性时间序列分解方法与基于时空序列建模的数据填补方法,以及基于多层次视图的臭氧浓度预测方法,属于软件应用技术领域以及数据预测技术领域。
背景技术
空气污染六项首要污染物分别为PM2.5、PM10、O3、SO2、NO2以及CO。臭氧是一种具有强烈刺激性的气体,高浓度的臭氧会刺激和损害深部呼吸道,并可损害中枢神经系统,会严重影响生产生活的开展。因此对臭氧形成控制开展更好的认识,进而控制臭氧浓度是非常有必要的。同时构建空气质量臭氧浓度预测平台,提前预警与控制,也很有必要。
大气臭氧浓度预测技术分为数值方法和统计方法。数值方法基于主流的光化学烟雾反应理论,通过偏微分方程求解臭氧输送、扩散、迁移与转化的物理化学过程。目前数值方法已经发展到第三代,代表性模型包括Model3、CMAQ以及WRF-Chem等。由于数值方法基于物理化学过程驱动,机制非常复杂并且需要设置众多参数,同时对数据精度以及边界要求都比较高,因此其使用受到比较大的限制。统计方法基于统计学理论,根据与臭氧相关的空气污染物以及气象数据建立模型,其不考虑反应机理而是通过分析自变量与因变量之间的统计关系,进行预测。常见的统计模型有广义线性回归模型(GLM)、广义加性模型(GAM)等。随着深度学习方法的发展,以及算力的提高,深度学习方法在各统计方法中得到了广泛运用。深度学习方法基于深度神经网络,拥有很强的时空非线性拟合能力,在众多方法中展现出最优的效果。
目前基于深度学习的大气臭氧浓度预测方法,使用深度神经网络提取目标区域以及时间段的数据时空特征,通过解码网络进行预测得到未来目标区域以及时间的臭氧浓度。这些方法主要使用了同为时空序列预测的交通流预测模型,没有考虑空气质量情景的具体情况,基于固定的站点图提取空间特征,没有考虑大气污染物传输多层次的情况;没有结合未来的气象预测信息,仅仅使用过去的大气污染物以及气象信息。
深度学习网络输入数据包括大气污染物以及气象数据,这些数据通常来自监测站点。由于若干原因,这些监测数据通常会出现空缺,空缺长度可达数周之久。深度学习网络训练需要连续的数据,因此需要对这些空缺进行填补。目前填补方法有临近填补法,前向填补法等。这些方法只是基于临近数据对空缺数据进行填补,没有考虑污染物以及气象数据的特征,包括季节性周期起伏、长期变化趋势以及短期波动情况。
发明内容
发明目的:现有大气臭氧浓度预测方法,没有考虑大气污染场景下的特有情况。同时由于监测数据中存在大量的数据缺失情况,需要对数据进行填补,现有填补方法没有针对大气污染物数据以及气象数据的特征专门建模。为了解决这些问题,首先是数据填补问题。本发明设计了基于季节性时间序列分解以及时空序列建模的数据填补方法。季节性时间序列分解方法能够考虑污染物以及气象数据的特征,包括季节性周期起伏、长期变化趋势以及短期波动情况。时空序列建模的数据填补方法,能够综合建模单站点数据的时间相关性,以及多站点数据的空间相关性,获得更加有效的填补结果。对于预测问题,本发明设计了基于图池化-反池化的多层次视图神经网络模型。大气污染扩散传输是其浓度变化的重要环节。扩散传输需要考虑不同尺度情况,基于图池化-反池化的多层次视图神经网络模型能够考虑这种多尺度扩散传输情况,完成站点-城市-区域的多层级传输模式匹配。同时考虑到气象情况的混沌性,采取了多次采样方法,能够使得预测结果更加稳定且有效。综合上述内容,本发明提出了一种基于缺失数据填补的层次是大气臭氧浓度预测方法,简称STGUNet。
技术方案:一种基于缺失数据填补的层次式大气臭氧浓度预测方法,包括基于季节性时间序列分解、时空序列数据填补以及多层次视图臭氧浓度预测三个步骤。利用季节性时间序列分解方法,将含有缺失数据的大气污染物数据以及气象数据分解为平滑趋势项、季节性周期项与短期波动项,得到污染物以及气象数据季节性周期起伏、长期变化趋势以及短期波动情况。利用分解结果,通过基于时空序列建模的数据填补方法,对缺失数据进行有效的填补,得到连续数据。使用基于多层次视图的臭氧浓度预测方法,提取多层次视图,完成站点-城市-区域的多层级传输模式匹配,并设计多次采样方法,构建大气臭氧浓度预测模型,提高预测结果稳定性与有效性。
(1)基于季节性的时间序列分解
本发明研究数据包括大气污染数据以及气象数据。这些数据通常呈现季节性长周期变化。比如臭氧在夏季一般浓度会比较高,而在冬季浓度会比较低。同时包含长时间的趋势变化,这来源于当地长期工业生产水平、人口密度变化以及环保政策的实施。此外由于一些突发性变化,数据会出现短期的波动。基于上述分析,设计了一套季节性时间序列分解方法。
1.1局部加权回归算法
局部加权回归算法用于拟合有趋势或季节性的数据。对于时间序列S=(T,Y)∈RL *2,其中L代表时间序列的长度,Y表示序列的值,T表示序列记录的时间点。给定特征点向量X∈RL,算法使用S=(T,Y)拟合生成目标序列(X,Y*)。对于每一个需要拟合的特征点x∈X,截取前后长lp的序列作为训练集,每个点对(ti,yi)表示记录的时间点以及对应的序列值,满足/>并且截取的序列以x为中心,使得|tk-x|与|x-tk+lp|最小,即tk满足:
argmin(·)表示使目标函数取最小值时的变量值。对于训练集中第i个样本点,其权值为:σ为训练集方差。这样距离特征点x越近的样本点,其权值越大,对最终结果的贡献度越高。算法通过最小化损失函数进行训练,损失函数如下:
该函数使用矩阵形式描述为:
其中权值矩阵W=diag(w1,w2,...,wlp)。
训练过程使用梯度下降法,对损失函数求导:
令导数为0可得该函数极小值点:
θ=(XTWX)-1XTWY
参数θ即为所需。预测目标y*=hθ(x)=xθ,由此得到目标点(x,y*)。对整个特征点向量X进行相同操作,即可得目标序列Y*。
1.2季节性时间序列分解方法
对于时间序列Y∈RL,其中L代表时间序列的长度,Y中包含若干缺失点。本方法将序列值向量Y表示为Y=T+S+R,T,S,R∈RL。其中T为平滑趋势项,S为季节性周期项,R为短期波动项。
本方法使用迭代运算。记Ti,Si,Ri分别为第i次迭代产生的平滑趋势项、季节性周期项与短期波动项。本方法算法如下所示:
1.2.1初始化T0≡0,即T0为全0序列。
1.2.2描述迭代算法。
对于第k次迭代得到的平滑趋势项Tk,计算去趋势化序列Ak=Y-Tk。由于Y中包含缺失点,故Ak中也包含缺失点。
1.2.3循环子序列平滑操作。
给定周期项长度lp,将Ak划分为长为lp的子序列。在这些子序列上分解进行局部加权回归算法。得到回归参数θ。使用特征向量X与回归参数α进行计算,得到周期循环序列Ck。
1.2.4低通滤波操作。
对周期循环序列Ck进行低通滤波操作。一次低通滤波操作可表示为:
是一次低通滤波操作的原数据点,k表示第k次迭代,i表示在周期循环序列Ck的第i个值取/>前后各lda项,lda表示第a次低通滤波操作采用的窗口长度量;低通滤波序列共2lda+1项,得到平均值/>对Ck每一个点进行低通滤波操作,得到周期序列/>为一次滤波的结果。
在本阶段,总共需要进行三次滤波操作。首先取进行第一次滤波操作,得到/>再取/>进行第二次滤波操作,得到/>最后取ld3=3进行第三次滤波操作,得到/>三次滤波操作使得数据达到充分平滑。第三次滤波操作后得到的/>即为本阶段最终得到的平滑序列Lk。
1.2.5平滑循环子序列的去趋势化。
第k+1层的季节性周期项Sk+1=Ck-Lk。这是为了防止低频能量分量进入季节性周期项。
1.2.6去季节项与趋势项平滑。
去季节项Dk+1=Y-Sk+1。对于Y中包含的缺失值,Dk+1中也会出现相应的缺失。在整个Dk+1上使用局部加权回归算法,可以得到第k+1层的连续的平滑趋势项Tk+1。
1.2.7上文1.2.2-1.2.6的迭代算法描述了从第k次序列Tk、Sk得到Tk+1、Sk+1的过程。重复迭代算法直到前后两次季节项相差平均值小于预设的误差ε,即当mean(Sn′+1-Sn′)<ε时,选取Sn′+1作为季节性周期项S,以及Tn′+1作为平滑趋势项T。
1.2.8获取短期波动项R=Y-S-T。对于Y中包含的缺失值,R中也会出现相应的缺失。
(2)基于时空序列建模的数据填补
从季节性时间序列分解得到单个站点数据的平滑趋势项T,季节性周期项S以及短期波动项R。这三项包含时间序列的季节性特征,使用它们用于空缺序列填补可以获得较好的效果。其中T与S不包含空缺值,R包含空缺值。同时考虑各监测站点分布,在空间上存在关联性。因此本部分设计了基于深度神经网络的时空空缺序列填补方法。主要分为以下部分:
2.1构建训练用子图数据。
设一共有N个站点。这些站点空间上构成有向图G。整段序列长度为L,输入数据X规模为N*L,包含不同程度的空缺值。为了使得模型能够训练,需要构建训练用子数据。训练用子图数据构建具体流程如下:
2.1.1设定超参数,移动窗口长度h、样本迭代次数S以及批迭代次数Imax。
2.1.2生成随机数No与Nm,No表示可观测到的站点数,Nm表示未观测到的站点数,即数据缺失的站点。满足No+Nm<N。
其中σ是正规化距离因子。vi,、vj,表示对应站点的地理坐标。
2.1.6上文2.1.2-2.1.5描述的迭代步骤,一次迭代可得到子样本X=Xsample,邻接矩阵W=Wsample,掩码矩阵M=Msample。重复迭代步骤共S次,得到一次训练集合{X1:S},{M1:S},{W1:S},用于后续基于GNN的深度神经网络模型的填补训练。
2.1.7迭代步骤2.1.6共Imax次,共得到Imax批数据,用于训练。
2.2基于GNN的深度神经网络模型填补流程
深度神经网络训练需要多批数据,每批数据的训练方法一致。下面描述一批数据的训练过程,基于步骤2.1得到一批训练数据集合{Xsample[1:S]},{Msample[1:S]},{Wsample[1:S]}。
使用基于GNN的深度神经网络模型进行训练,具体流程如下:
2.2.2深度神经网络模型单层描述。
其中分别为前向转移矩阵与后向转移矩阵。其中Wsample即为上文提到的邻接矩阵,/>表示该矩阵的转置,rowsum(·)为对矩阵的每行进行求和。k是转移次数。Tk(X)为递归定义函数,满足Tk(X)=2XTk-1(X)-Tk-2(X),且T0(X)=I,T1(X)=X。/>与/>是第l层训练参数,用于控制每个节点中接收到信息的流动。Hl+1是第l层的输出。由于每批数据选取的节点集不同,因此邻接矩阵Wsample在每批数据能够获取不同的子图信息,并且不同批之间信息流动方法也具有差异性。
2.2.3整体模型
2.2.4损失函数
使用该损失函数进行神经网络训练,通过梯度下降的方法优化模型参数。
2.2.5多批训练
如2.1.7所述,有Imax批数据,用于训练。对每批数据均使用2.2.1-2.2.4所述方法优化模型参数,最终得到训练好的模型。
2.2.6空缺填补
使用训练好的模型,对空缺数据进行预测即可完成填补。输入数据为N个站点,整段序列长度L,总数据X∈RN*L。将X切分为若干长度为h的序列,X=[X1,X2,...,Xk],序列中任一子项Xi∈RN*h。构建掩码矩阵Mi∈RN*h,其中Xi中含有数据的点在Mi中值为1,Xi中不含数据的点在Mi中值为0。构建邻接矩阵Wi∈RN*N。经过模型预测得到输出Yi∈RN*h,使用Yi的值作为Xi中相应空缺点的值。对序列X=[X1,X2,...,Xk]依次填补即可完成对输入数据的全部填补。
(3)基于多层次视图的臭氧浓度预测
将包含空缺的气象数据以及污染物数据完成填补后,便可以使用这些完整的数据构建大气臭氧浓度预测模型。
监测站点组成的网状结构可以被表示成一个有向图G=(V,E,W),其中V为图顶点集合,|V|=N为站点总数。E是有向图的边集合。W∈RN*N是带权邻接矩阵,表示了对应两个站点间的空间关系。
每个站点包含与大气臭氧污染预测的相关气象数据与污染物数据。预测模型任务是使用历史气象预计污染物数据预测未来各站点臭氧浓度。大气臭氧浓度预测模型各部分如下:
3.1图池化与反池化算法
各类气象因子以及污染物的扩散传输过程是影响臭氧生成的重要因素。监测站点的分布存在空间不均匀性。具体表现为:在城市中站点数目多,特别是重点城市,如上海有10个国控站点,南京有9个国控站点。而城市间地带,监测站点数目少,零星分布。监测站点呈现城市内聚集,密度过高;城市间又密度过低的情况。
为了表征这种分布情况,需要将扩散传输过程分层,包括城市内部站点,近距离扩散传输过程;城市间,中等距离扩散传输过程;城市间,长距离扩散传输过程。针对此需要,本发明提出了一种基于图池化的动态分层生成算法,来构建多层次网络,以表征多层扩散传输过程。图池化算法分为压缩,TopK选取、梯度传递,以及后续预测使用的反池化操作。
3.1.1压缩操作
定义Xl∈RN*C为第l层顶点数据矩阵,Wl∈RN*N为相应的带权邻接矩阵。压缩操作如下所示:
3.1.2 TopK选取
TopK选取操作如下:
idx=rank(yl,k)
Wl+1=Wl[idx,idx]
其中rank(·)操作对权重向量yl进行排序,并得到前k大的值的下标集合idx。k=β·N,β∈[0,1]为池化缩小系数。记idx中这k个下标为i1,i2,...,ik,其满足im<in且1≤m<n≤k,选取的下标顺序与原图顺序一致。通过Xl[idx,:]可以得到特征矩阵包含Xl中前k大权重值的点,其他点则不包含在/>中;通过Wl[idx,idx]可以得到Xl中前k大权重值的点构成的邻接矩阵Wl+1。这样原本节点数为N的图,就被池化到了节点数为k的子图。并且该生成过程是动态的,能够表征动态的扩散传输过程。
3.1.3梯度传递
由于rank(·)是离散操作,为了能让投影向量pl可被训练,需要使用门控操作让梯度能够在反向传播中存在。其过程如下:
3.1.4反池化操作
反池化操作需要将rank(·)产生的子图恢复为原图。在图池化操作中,记录下标集合idx。借助此集合,使用逐层传播规则(layer-wise propagation rule):
Xl=distribute(0N*C,Xl+1,idx)
其中idx∈Zk包含了对应图池化算法中,从上层N节点图取出k节点的下标集合。Xl +1∈Rk*C是当前层特征矩阵,0N*C是与原始图大小相等的全零特征矩阵。distribute(0N*C,Xl +1,idx)根据idx下标集合将Xl+1的值分配至0N*C,特征矩阵中。在Xi中,如果行向量下标包含在idx中,那么使用Xl+1中对应的值赋值,否则该行向量保持为0。
3.2多层次编码器-解码器网络
深度神经网络算法预测空气质量臭氧浓度的过程在于提取输入数据的时空特征,并使用时空特征进行预测,得到未来的臭氧浓度。编码器-解码器网络(Encoder-Decoder)是符合该需求的合适网络。编码器用于提取数据的时空特征,解码器用于将特征解耦至输出空间,并进行预测。Unet是一种优秀的网络结构,含有长跳跃连接、对称结构以及多尺度的网络特征,其中长跳跃连接能够有效利用不同尺度与精度的特征信息,同时能够防止网络过深出现梯度消失的问题。本发明提出一种Graph Unet,以表征气象污染物多层次扩散传输过程。其具体结构如下:
3.2.1Encoder端
对于输入X∈RN*T*C,包含历史气象数据与污染物数据。N为站点个数,T为时间序列长度,C为数据总维度。X首先经过扩散卷积门控网络进行时空特征提取:
Ht=ut⊙Ht-1+(1-ut)⊙Ct
其中σ(x)=1/(1+e-x),tanh(x)=(ex-e-x)/(ex+e-x),均为激活函数。Xt与Ht分别为t时刻的输入与输出,Ht为隐藏矩阵,用于记录特征信息。rt与ut为t时刻的重置门与更新门。DGCNW为扩散图卷积操作,Wr,Wu,Wc则是相应的可训练参数。DGCN算法每层具体形式如下:
其中Ul∈RN*C是第l层特征矩阵,Ul+1∈RN*C为第l+1层特征矩阵,为扩散图卷积算法在该层输出。Do∈RN*N=diag(W1),DI∈RN*N=diag(WT1)。其中DO是邻接矩阵W的出度矩阵,DI是邻接矩阵W的入度矩阵。1∈RN是元素均为1的向量。θk,1与θk,2分别对应第k次扩散中的两个可训练参数矩阵。在扩散卷积中,与/>分别代表前向转移矩阵与后向转移矩阵。
扩散卷积使用的邻接矩阵W依赖于原图中各站点的地理位置,基于阈值高斯核构造:
其中Wi,j表示顶点vi与vj间的边权重,dist(vi,vj)表示点vi与vj间的欧氏距离。σ是距离的标准差,κ是阈值。
经过Encoder端,最终得到时空特征Ht∈RN*C,并再经过自注意力操作:
Kt=HtWk,Vt=HtWv,Qt=HtWq
3.2.2Decoder端
Decoder端输入包括三部分:1.来自Encoder端的分层时空特征2.预测目标时间短,经其他摸型模拟得到的未来气象矩阵Weafuture;3.随机采样的种子向量。这是由于气象系统本身是个混沌系统,包含大量不确定性。加入随机向量进行多次采样,能够减小模型方差,提高预测准确性。随机向量生成器从高斯分布中随机采样向量,得到用于输入的随机向量Zsp。
Decoder主干网络采取与Encoder端一致的扩散卷积门控网络。将随机向量与气象矩阵一并作为输入Xdecoder=[Zsp,Weafuture]。分层时空特征则作为隐藏矩阵输入到各层中,下一层的输出作为上一层的输入,一直到顶层。
其中FC为全连接层,layernorm(·)为逐层正则化操作,对于输入x,输出y:
其中E[x]、Var[x]分别是输入x的期望与方差,∈是为数值稳定性添加到分母的值,β、γ则为可训练参数。最终得到Y=[y1,y2,...,ypredlen]RN*T′,即为单次采样下的预测。
3.2.3多次采样与训练预测
由于气象系统具有混沌性,现实情况中也有若干短期波动情况。因此需要多次采样随机向量生成器,进行多次预测,以平衡波动情况。记一次预测结果为Yi,共采样k次,得到若干预测结果[Y1,Y2,...,Yk]。对这些预测结果进行平均得到最终预测结果
训练采用专门设计的损失函数。对于时空序列预测任务,一般采用均方误差(MSE)作为损失函数以及评价指标。该函数评价预测结果与真实结果间的平均均方误差。而空气质量臭氧预测任务中,更加关注高值。高值往往意味着臭氧浓度超标,是需要预警、处理的情况。为此,设计了评价指标HVBE(High Value Balanced Error,高值平衡误差):
HVBE(Ytrue,Ypred)=Mean(Abs(Ytrue-Ypred)*weights)
weights=Clip(Ytrue,lowbound,upbound)
其中Mean(·)是平均值函数,Abs(·)是绝对值函数。采用Clip(·)对惩罚项weights进行裁剪。对于真实值低于下限lowbound的值,统一设置为lowbound;对于真实值高于上限upbound的值,统一设置为upbound;对于介于上下间的值,保持不变。由于weights在高值时更大,因此HVBE能够更好关注高值情况,使得模型在高值预测上更精准。但如果不加限制,模型会过于关注高值,导致整体预测偏高,因此设计了upbound。同时为了裁减掉一些过于低的值,设计了lowbound。
附图说明
图1位本发明实施例的整体流程示意图;
图2为本发明实施例的季节性空缺时间序列分解与填补方法示意图;
图3为本发明实施例的多层次时空视图空气质量臭氧预测模型示意图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图2所示,季节性空缺时间序列分解与填补方法:
(1)基于季节性的时间序列分解
给定含有空缺数据的时间序列Y∈RL,给定特征点向量X∈RL,将其分解为Y=T+S+R。其中T为平滑趋势项,S为季节性周期项,R为短期波动项。使用迭代算法。对于第k次迭代得到的平滑趋势项Tk,计算去趋势化序列Ak=Y-Tk。由于Y中包含缺失点,故Ak中也包含缺失点。给定周期项长度lp,将Ak划分为长为lp的子序列。在这些子序列上分解进行局部加权回归算法。得到回归参数θ。使用特征向量X与回归参数α进行计算,得到周期循环序列Ck。对周期循环序列Ck进行低通滤波操作,一次滤波操作如下:
是一次低通滤波操作的原数据点,k表示第k次迭代,i表示在周期循环序列Ck的第i个值/>前后各lda项,lda表示第a次低通滤波操作采用的窗口长度量;低通滤波序列共2lda+1项的平均值/>对Ck每一个点进行低通滤波操作,得到周期序列/>为一次滤波的结果。
在本阶段,总共需要进行三次滤波操作。首先取进行第一次滤波操作,得到/>再取/>进行第二次滤波操作,得到/>最后取ld3=3进行第三次滤波操作。以使得数据达到充分平滑。第三次滤波操作后得到的/>即为本阶段最终得到的平滑序列Lk。。第k+1层的季节性周期项Sk+1=Ck-Lk。这是为了防止低频能量分量进入季节性周期项。去季节项Dk+1=Y-Sk+1。对于Y中包含的缺失值,Dk+1中也会出现相应的缺失。在整个Dk+1上使用局部加权回归算法,可以得到第k+1层的连续的平滑趋势项Tk+1。重复上述迭代过程,直到前后两次季节项相差平均值小于预设的误差ε,即当mean(Sn′+1-Sn′)<ε时,选取Sn′+1作为季节性周期项S,以及Tn′+1作为平滑趋势项T。获取短期波动项R=Y-S-T。对于Y中包含的缺失值,R中也会出现相应的缺失。
(2)基于时空序列建模的数据填补
输入数据一共包含N个站点,这些站点空间上构成有向图G。整段序列长度为L,总数据记为x∈RN*L。X包含不同程度的空缺值。
设定超参数,移动窗口长度h、样本迭代次数S。生成随机数No与Nm,No表示可观测到的站点数,Nm表示未观测到的站点数,即数据缺失的站点。满足No+Nm<N。从所有站点中随机选取No+Nm个站点,得到样本空间下标集随机选取时间点j满足1≤j≤L-h。得到样本时间下标集Jsample=[j,j+h]。得到子样本/> 构建邻接矩阵/>邻接矩阵每个元素Wi,j运算方法为:
重复上述迭代步骤S次,得到一批训练集合{Xsample[1:S]},{Msample[1:S]},{Wsample[1:S]},用于后续基于GNN的深度神经网络模型的填补训练。
迭代上述步骤共Imax次,共得到Imax批数据。
其中分别为前向转移矩阵与后向转移矩阵。其中Wsample即为上文提到的邻接矩阵,/>表示该矩阵的转置,rowsum(·)为对矩阵的每行进行求和。k是转移次数。Tk(X)为递归定义函数,满足Tk(X)=2XTk-1(X)-Tk-2(X),且T0(X)=I,T1(X)=X。/>与/>是第l层训练参数,用于控制每个节点中接收到信息的流动。Hl+1是第l层的输出。由于每批数据选取的节点集不同,因此邻接矩阵Wsample在每批数据能够获取不同的子图信息,并且不同批之间信息流动方法也具有差异性。
其中σ(x)=1/(1+e-x)。在H2的更新算法中加入H1是因为H1包含含有缺失数据的节点。最后第三层使用同H1基本计算流程得到使用生成的/>以及未加掩码的原始Xsample,评价两者间的总重构误差,损失函数如下:
使用该损失函数进行神经网络训练,通过梯度下降的方法优化模型参数。
对Imax批数据均采用相同方法训练,优化模型参数,最终得到训练好的模型。
使用训练好的模型,对空缺数据进行预测即可完成填补。输入数据为N个站点,整段序列长度L,总数据X∈RN*L。将X切分为若干长度为h的序列,X=[X1,X2,...,Xk],序列中任一子项Xi∈RN*h。构建掩码矩阵Mi∈RN*h,其中Xi中含有数据的点在Mi中值为1,Xi中不含数据的点在Mi中值为0。构建邻接矩阵Wi∈RN*N。经过模型预测得到输出Yi∈RN*h,使用Yi的值作为Xi中相应空缺点的值。对序列X=[X1,X2,...,Xk]依次填补即可完成对输入数据的全部填补。
如图3所示,基于多层次视图的臭氧浓度预测模型:
(3)图池化与反池化过程
定义Xl∈RN*C为第l层顶点数据矩阵,Wl∈RN*N为相应的带权邻接矩阵。首先使用压缩操作:
接着使用TopK选取操作:
idx=rank(yl,k)
Wl+1=Wl[idx,idx]
其中rank(·)操作对权重向量yl进行排序,并得到前k大的值的下标集合idx。k=β·N,β∈[0,1]为池化缩小系数。记idx中这k个下标为i1,i2,...,ik,其满足im<in且1≤m<n≤k。由于选取的下标顺序与原图顺序一致通过Xl[idx,:]可以得到特征矩阵包含Xl中前k大权重值的点,其他点则不包含在/>中;通过Wl[idx,idx]可以得到Xl中前k大权重值的点构成的邻接矩阵Wl+1。这样原本节点数为N的图,就被池化到了节点数为k的子图。并且该生成过程是动态的,能够表征动态的扩散传输过程。
为了能让投影向量pl可被训练,需要使用门控操作让梯度能够在反向传播中存在。其过程如下:
反池化操作需要将rank(·)产生的子图恢复为原图。在图池化操作中,记录下标集合idx。借助此集合,使用逐层传播规则(layer-wise propagation rule):
Xl=distribute(0N*C,Xl+1,idx)
其中idx∈Zk包含了对应图池化算法中,从上层N节点图取出k节点的下标集合。Xl +1∈Rk*C是当前层特征矩阵,0N*C是与原始图大小相等的全零特征矩阵。distribute(0N*C,Xl +1,idx)根据idx下标集合将Xl+1的值分配至0N*C,特征矩阵中。在Xl中,如果行向量下标包含在idx中,那么使用Xl+1中对应的值赋值,否则该行向量保持为0.
(4)多层次编码器-解码器网络(Encoder-Decoder)
对于输入X∈RN*T*C,包含历史气象数据与污染物数据。N为站点个数,T为时间序列长度,C为数据总维度。
在Encoder端,X首先经过扩散卷积门控网络进行时空特征提取:
Ht=ut⊙Ht-1+(1-ut)⊙Ct
其中DGCN(·)是基于扩散卷积的图卷积算法,算法每层具体形式如下:
其中σ(x)=1/(1+e-x),tanh(x)=(ex-e-x)/(ex+e-x),均为激活函数。Xt与Ht分别为t时刻的输入与输出,Ht为隐藏矩阵,用于记录特征信息。rt与ut为t时刻的重置门与更新门。DGCNW为扩散图卷积操作,Wr,Wu,Wc则是相应的可训练参数。DGCN算法每层具体形式如下:
其中Ul∈RN*C是第l层特征矩阵,Ul+1∈RN*C为第l+1层特征矩阵,为扩散图卷积算法在该层输出。Do∈RN*N=diag(W1),DI∈RN*N=diag(WT1)。其中Do是邻接矩阵W的出度矩阵,DI是邻接矩阵W的入度矩阵。1∈RN是元素均为1的向量。θk,1与θk,2分别对应第k次扩散中的两个可训练参数矩阵。在扩散卷积中,与/>分别代表前向转移矩阵与后向转移矩阵。
扩散卷积使用的邻接矩阵W依赖于原图中各站点的地理位置,基于阈值高斯核构造:
其中Wi,j表示顶点vi与vj间的边权重,dist(vi,vj)表示点vi与vj间的欧氏距离。σ是距离的标准差,κ是阈值。
经过该网络,最终得到时空特征Ht∈RN*C,并再经过自注意力操作:
Kt=HtWk,Vt=HtWv,Qt=HtWq
Decoder端输入包括三部分:1.来自Encoder端的分层时空特征2.预测目标时间短,经其他摸型模拟得到的未来气象矩阵Weafuture;3.随机采样的种子向量。这是由于气象系统本身是个混沌系统,包含大量不确定性。加入随机向量进行多次采样,能够减小模型方差,提高预测准确性。随机向量生成器从高斯分布中随机采样向量,得到用于输入的随机向量Zsp。
Decoder主干网络采取与Encoder端一致的扩散卷积门控网络。将随机向量与气象矩阵一并作为输入Xdecoder=[Zsp,Weafuture]。分层时空特征则作为隐藏矩阵输入到各层中,下一层的输出作为上一层的输入,一直到顶层。
由于气象系统具有混沌性,现实情况中也有若干短期波动情况。因此需要多次采样随机向量生成器,进行多次预测,以平衡波动情况。记一次预测结果为Yi,共采样k次,得到若干预测结果[Y1,Y2,...,Yk]。对这些预测结果进行平均得到最终预测结果
训练采用专门设计的损失函数。对于时空序列预测任务,一般采用均方误差(MSE)作为损失函数以及评价指标。该函数评价预测结果与真实结果间的平均均方误差。而空气质量臭氧预测任务中,更加关注高值。高值往往意味着臭氧浓度超标,是需要预警、处理的情况。为此,设计了评价指标HVBE(High Value Balanced Error,高值平衡误差):
HVBE(Ytrue,Ypred)=Mean(Abs(Ytrue-Ypred)*weights)
weights=Clip(Ytrue,lowbound,upbound)
实例一:基于本发明的STGUNet的填补有效性与预测准确性评测
1、实验数据
`使用了长三角地区国控站点污染物数据。选取了纬度29°N~33°N、经度115°E~124°E间的站点,共140个。污染物种类包括PM2.5、PM10、O3、SO2、NO2和CO。气象数据选取来自欧洲中期天气预报中心(ECMWF)的欧洲气象中心资料每日数据(ERA5,Daily fields),包含云覆盖比率、空气湿度、温度、U向风场、V向风场、地势。污染物数据与气象数据单步长度1小时。选取2018年至2020年数据。其中2018年至2019年数据作为训练集,2020年数据作为验证集。
2、评价指标
将从两个方面来评价本算法的有效程度:时间序列填补方法的有效性、空气质量臭氧预测方法的准确性。同样的算法模型将会在不同对比方法消歧后的训练数据上训练,并在测试集上验证其有效性与准确性。
时间序列填补有效性评价指标为均方误差(MSE),公式如下所示:
MSE(Ytrue,Ypred)=(Ytrue-Ypred)2
空气质量臭氧预测方法准确性评价指标包括HVBE(High Value Balanced Error,高值平衡误差)与F1-score,公式如下所示:
HVBE(Ytrue,Ypred)=Mean(Abs(Ytrue-Ypred)*weights)
weights=Clip(Ytrue,lowbound,upbound)
F1-score为评价模型对臭氧超标情况预测的准确性。选取《中华人民共和国环境空气质量标准》中规定的臭氧1小时平均一级浓度限值160g/μm3与1小时平均二级浓度限值200g/μm3作为分界线。其中TP为预测超标,实际也超标的样本数;FP为预测超标,实际未超标的样本数;FN为预测未超标,实际超标的样本数。precision为预测超标的数据中,实际也超标样本的比例;recall为所有实际超标的样本中,有多少能被正确预测的比例。由于一般情况下precision与recall难以兼顾,因此使用F1-score进行综合考量。HVBE(·)越小表示预测结果越好,F1-score越大表示预测结果越好。
3、比较方法
为了更好地验证本发明提出的STGUNet效果,对于时间序列填补有效性,设置以下两个对比方法进行比较:
(1)Linear-Inter,使用空缺数据前后有值点线性填补。
(2)STGUNet-NoDec,不进行季节性时间序列分解方法,直接对源数据使用本发明中基于深度神经网络的时空空缺序列填补方法。
对于空气质量臭氧预测方法的准确性,设置以下三个对比方法进行比较:
(1)STGUNet-NoPool,不使用图池化与反池化算法,Graph Unet的每层特征图均为原图。
(2)STGUNet-NoSample,不使用随机向量生成器进行多次采样方法,将单次预测结果直接作为最终结果。
(3)STGUNet-MSE,采用MSE作为损失函数训练。
(4)CLRNN,使用基于球面卷积算法的时空序列预测模型。
4、实验设置
对于时间序列填补实验,季节性时间序列分解部分设置移动窗口长度为4380,样本迭代次数100,批迭代次数128。时空序列建模的数据填补部分,神经网络模型批大小128,中间层维度均为128,学习率0.001,训练轮次100轮。
对于空气质量臭氧预测实验,数据全部经过归一化处理,设置历史数据长度48、预测数据长度24。中间层维度均为128,。图池化层数2,每层池化缩小系数均为0.8。神经网络模型批大小128,学习率0.001,训练轮次100轮。
5、实验结果
首先是时间序列填补实验,表1展示了具体实验结果。可以看到本发明提出的基于季节性周期时间序列分解与深度神经网络的时空空缺序列填补方法,在填补有效性上显著优于Linear-Inter和STGUNet-NoDec方法。
表1时间序列填补算法有效性对比
方法 | MSE |
STGUNet | 54.877 |
Linear-Inter | 113.80 |
STGUNet-NoDec | 79.771 |
对于空气质量臭氧预测实验,表2展示了具体实验结果。在预测准确度上显著优于STGUNet-NoPool,STGUNet-NoSample,STGUnet-MSE,CLRNN。
表2空气质量臭氧预测准确性对比
方法 | HVBE | L1 F1-Score | L2 F1-Score |
STGUNet | 3.457 | 0.6263 | 0.4801 |
STGUNet-NoPool | 3.993 | 0.5149 | 0.3335 |
STGUNet-NoSample | 3.623 | 0.5317 | 0.3849 |
STGUNet-MSE | 4.307 | 0.4576 | 0.2628 |
CLRNN | 4.723 | 0.3638 | 0.1388 |
通过对实验结果的分析,使用本发明提供的方法,通过季节性周期序列分解,以及使用深度神经网络能够有效完成空缺时间序列的填补,获得高质量的连续数据。同时使用图池化与反池化的多层次视图深度神经网络模型,能够有效表征多层次扩散传输过程,获得了最优的预测结果。综上所述,证明了本发明的有效性。
Claims (7)
1.一种基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,将大气污染物数据以及气象数据作为输入数据,利用基于季节性的时间序列分解方法,分解含有空缺的输入数据,得到污染物以及气象数据季节性周期起伏、长期变化趋势以及短期波动情况的分解结果;对分解结果使用基于时空序列建模的数据填补模型进行填补;使用基于多层次视图的臭氧浓度预测模型进行预测,并采用多次采样预测方法,生成未来区域稳定的臭氧预测结果,方法包括以下步骤:
(1)基于季节性的时间序列分解;
(2)基于时空序列建模的数据填补;
(3)基于多层次视图的臭氧浓度预测。
2.根据权利要求1所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,基于季节性的时间序列分解,包括如下内容:
1.1局部加权回归算法
首先定义局部加权回归算法;对于时间序列S=(T,Y)∈RL*2,其中L代表时间序列的长度,Y表示序列的值,T表示序列记录的时间点;给定特征点向量X∈RL,使用S=(T,Y)拟合生成目标序列(X,Y*);对于每一个需要拟合的特征点x∈X,截取前后长lp的序列作为训练集,每个点对(ti,yi)表示记录的时间点以及对应的序列值,满足tk<tk+1<…<tk+lp、并且截取的序列以x为中心,使得|tk-x|与最小,即tk满足:
argmin(·)表示使目标函数取最小值时的变量值;对于训练集中第i个样本点,其权值为: σ为训练集方差;距离特征点x越近的样本点,其权值越大,对最终结果的贡献度越高;算法通过最小化损失函数进行训练,损失函数如下:
该函数使用矩阵形式描述为:
其中权值矩阵W=diag(w1,w2,...,wlp);
求解方法使用梯度下降法,对损失函数求导:
令导数为0可得该函数极小值点:
θ=(XTWX)-1XTWY
参数θ即为所需,预测目标y*=hθ(x)=xθ;由此得到目标点(x,y*),对整个特征点向量X进行相同操作,即可得由预测目标y*组成的目标序列Y*;
1.2季节性时间序列分解方法
对于包含缺失点的时间序列Y,将其分解为Y=T+S+R;其中T为平滑趋势项,S为季节性周期项,R为短期波动项;使用迭代运算,记Ti,Si,Ri分别为第i次迭代产生的平滑趋势项、季节性周期项与短期波动项。
3.根据权利要求1所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,季节性时间序列分解方法包括:
1.2.1,初始化T0≡0,即T0为全0序列;
1.2.2,描述迭代算法
对于第k次迭代得到的平滑趋势项Tk,计算去趋势化序列Ak=Y-Tk,由于Y中包含缺失点,故Ak中也包含缺失点;
1.2.3,循环子序列平滑操作
给定周期项长度lp,将Ak划分为长为lp的子序列,在这些子序列上分解进行局部加权回归算法,得到回归参数θ,使用特征向量X与回归参数θ进行计算,得到周期循环序列Ck;
1.2.4,低通滤波操作
对周期循环序列Ck进行低通滤波操作,一次低通滤波操作可表示为:
是一次低通滤波操作的原数据点,k表示第k次迭代,i表示在周期循环序列Ck的第i个值取/>前后各lda项,lda表示第a次低通滤波操作采用的窗口长度量;低通滤波序列共2lda+1项,得到平均值/>对Ck每一个点/>进行低通滤波操作,得到周期序列/>为一次滤波的结果;
在本阶段,总共需要进行三次滤波操作;首先取进行第一次滤波操作,得到再取/>进行第二次滤波操作,得到/>最后取ld3=3进行第三次滤波操作,得到三次滤波操作使得数据达到充分平滑;第三次滤波操作后得到的/>即为本阶段最终得到的平滑序列Lk;
1.2.5,平滑循环子序列的去趋势化
第k+1层的季节性周期项Sk+1=Ck-Lk,这是为了防止低频能量分量进入季节性周期项;
1.2.6,去季节项与趋势项平滑
去季节项Dk+1=Y-Sk+1,对于Y中包含的缺失值,Dk+1中也会出现相应的缺失,在整个Dk+1上使用局部加权回归算法,能得到第k+1层的连续的平滑趋势项Tk+1;
1.2.7,上文1.2.2-1.2.6的迭代算法描述了从第k次序列Tk、Sk得到Tk+1、Sk+1的过程;重复迭代算法直到前后两次季节项相差平均值小于预设的误差ε,即当mean(Sn′+1-Sn′)<ε时,选取Sn′+1作为季节性周期项S以及Tn′+1作为与平滑趋势项T;
1.2.8,获取短期波动项R=Y-S-T;对于Y中包含的缺失值,R中也会出现相应的缺失。
4.根据权利要求1所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,所述基于时空序列建模的数据填补,包括如下内容:
从季节性时间序列分解得到单个站点数据的平滑趋势项T,季节性周期项S以及短期波动项R;其中T与S不包含空缺值,R包含空缺值;同时考虑各监测站点分布,在空间上存在关联性;因此设计了基于深度神经网络的时空空缺序列填补方法,分为以下部分:
2.1,构建训练用子图数据
设一共有N个站点,这些站点空间上构成有向图G,站点间存在关联性,整段序列长度为L,输入数据X规模为N*L,包含不同程度的空缺值;训练用子图数据构建具体流程如下:
2.1.1,设定超参数,移动窗口长度h、样本迭代次数S以及批迭代次数Imax;
2.1.2,生成随机数No与Nm,No表示可观测到的站点数,Nm表示未观测到的站点数,即数据缺失的站点,满足No+Nm<N;
其中σ是正规化距离因子;vi,、vj,表示对应站点的地理坐标;
2.1.6,2.1.2至2.1.5描述的迭代步骤,重复迭代步骤共S次,得到一次训练集合{Xsample[1:S]},{Msample[1:S]},{Wsample[1:S]},用于后续基于GNN的深度神经网络模型的填补训练;
2.1.7,迭代步骤2.1.6共Imax次,共得到Imax批数据,用于训练;
2.2,基于GNN的深度神经网络模型填补流程
深度神经网络训练需要多批数据,每批数据的训练方法一致;下面描述一批数据的训练过程,基于步骤2.1中得到训练集合{Xsample[1:S]},{Msample[1:S]},{Wsample[1:S]};使用基于GNN的深度神经网络模型进行训练,具体流程如下:
2.2.2,深度神经网络模型单层描述
其中分别为前向转移矩阵与后向转移矩阵;其中Wsample即为上文提到的邻接矩阵,/>表示该矩阵的转置,rowsum(·)为对矩阵的每行进行求和;k是转移次数;Tk(X)为递归定义函数,满足Tk(X)=2XTk-1(X)-Tk-2(X),且T0(X)=I,T1(X)=X;/>与/>是第l层训练参数,用于控制每个节点中接收到信息的流动;Hl+1是第l层的输出;
2.2.3,整体模型
2.2.4,损失函数
使用该损失函数进行神经网络训练,通过梯度下降的方法优化模型参数;
2.2.5,多批训练
如步骤217所述,有Imax批数据,用于训练;对每批数据均使用步骤221-22.4所述方法优化模型参数,最终得到训练好的模型;
2.2.6,空缺填补
使用训练好的模型,对空缺数据进行预测即可完成填补;输入数据为N个站点,整段序列长度L,总数据X∈RN*L;将X切分为若干长度为h的序列,X=[X1,X2,...,Xk],序列中任一子项Xi∈RN*h;构建掩码矩阵Mi∈RN*h,其中Xi中含有数据的点在Mi中值为1,Xi中不含数据的点在Mi中值为0;构建邻接矩阵Wi∈RN*N;经过模型预测得到输出Yi∈RN*h,使用Yi的值作为Xi中相应空缺点的值;对序列X=[X1,X2,...,Xk]依次填补即可完成对输入数据的全部填补。
5.根据权利要求1所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,基于多层次视图的臭氧浓度预测,使用图池化与反池化算法获得多层次视图;图池化与反池化算法分为压缩,TopK选取、梯度传递,以及后续预测使用的反池化操作;
压缩操作中,定义Xl∈RN*C为第l层顶点数据矩阵,Wl∈RN*N为相应的带权邻接矩阵,压缩操作如下所示:
TopK选取操作如下:
idx=rank(yl,k)
Wl+1=Wl[idx,idx]
其中rank(·)操作对权重向量yl进行排序,并得到前k大的值的下标集合idx,k=β·N,β∈[0,1]为池化缩小系数,记idx中这k个下标为i1,i2,...,ik,其满足im<in且1≤m<n≤k,由于选取的下标顺序与原图顺序一致,通过Xl[idx,:]得到特征矩阵包含Xl中前k大权重值的点,其他点则不包含在/>中;通过Wl[idx,idx],得到Xl中前k大权重值的点构成的邻接矩阵Wl+1,这样原本节点数为N的图,就被池化到了节点数为k的子图,并且该生成过程是动态的;
梯度传递中,由于rank(·)是离散操作,为了能让投影向量pl可被训练,需要使用门控操作让梯度能够在反向传播中存在,其过程如下:
反池化操作需要将rank(·)产生的子图恢复为原图,在图池化操作中,记录下标集合idx,借助此集合,使用逐层传播规则:
Xl=distribute(0N*C,Xl+1,idx)
其中idx∈Zk包含了对应图池化算法中,从上层N节点图取出k节点的下标集合;Xl+1∈Rk*C是当前层特征矩阵,0N*C是与原始图大小相等的全零特征矩阵;distribute(0N*C,Xl+1,idx)根据idx下标集合将Xl+1的值分配至0N*C,特征矩阵中;在Xl中,如果行向量下标包含在idx中,那么使用Xl+1中对应的值赋值,否则该行向量保持为0。
6.根据权利要求1所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,基于多层次视图的臭氧浓度预测,预测模型主体是多层次编码器-解码器网络,对于输入X∈RN*T*C,包含历史气象数据与污染物数据,N为站点个数,T为时间序列长度,C为数据总维度,在Encoder端,X首先经过扩散卷积门控网络进行时空特征提取:
Ht=ut⊙Ht-1+(1-ut)⊙Ct
其中σ(x)=1/(1+e-x),tanh(x)=(ex-e-x)/(ex+e-x),均为激活函数,Xt与Ht分别为t时刻的输入与输出,Ht为隐藏矩阵,用于记录特征信息,rt与ut为t时刻的重置门与更新门,DGCN(·)表示基于扩散卷积的图卷积算法,Wr,Wu,Wc则是相应的可训练参数,DGCN算法每层具体形式如下:
其中Ul∈RN*C是第l层特征矩阵,Ul+1∈RN*C为第l+1层特征矩阵,为扩散图卷积算法在该层输出,Do∈RN*N=diag(W1),DI∈RN*N=diag(WT1),其中DO是邻接矩阵W的出度矩阵,DI是邻接矩阵W的入度矩阵,1∈RN是元素均为1的向量,θk,1与θk,2分别对应第k次扩散中的两个可训练参数矩阵,在扩散卷积中,与/>分别代表前向转移矩阵与后向转移矩阵;
扩散卷积使用的邻接矩阵W依赖于原图中各站点的地理位置,基于阈值高斯核构造:
其中Wi,j表示顶点vi与vj间的边权重,dist(vi,vj)表示点vi与vj间的欧氏距离;σ是距离的标准差,κ是阈值;
经过Encoder端,最终得到时空特征Ht∈RN*C,并再经过自注意力操作:
Kt=HtWk,Vt=HtWv,Qt=HtWq
7.根据权利要求6所述的基于缺失数据填补的层次式大气臭氧浓度预测方法,其特征在于,Decoder主干网络采取与Encoder端一致的扩散卷积门控网络,将随机向量与气象矩阵一并作为输入Xdecoder=[Zsp,Weafuture],分层时空特征则作为隐藏矩阵输入到各层中,下一层的输出作为上一层的输入,一直到顶层;
对于时空序列预测任务,采用均方误差作为损失函数以及评价指标,该函数评价预测结果与真实结果间的平均均方误差;而空气质量臭氧预测任务中,更加关注高值,高值意味着臭氧浓度超标,是需要预警、处理的情况;为此,设计了评价指标HVBE(High ValueBalanced Error,高值平衡误差):
HVBE(Ytrue,Ypred)=Mean(Abs(Ytrue-Ypred)*weights)
weights=Clip(Ytrue,lowbound,upbound)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310295454.5A CN116384565A (zh) | 2023-03-24 | 2023-03-24 | 一种基于缺失数据填补的层次式大气臭氧浓度预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310295454.5A CN116384565A (zh) | 2023-03-24 | 2023-03-24 | 一种基于缺失数据填补的层次式大气臭氧浓度预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116384565A true CN116384565A (zh) | 2023-07-04 |
Family
ID=86978006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310295454.5A Pending CN116384565A (zh) | 2023-03-24 | 2023-03-24 | 一种基于缺失数据填补的层次式大气臭氧浓度预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116384565A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117423406A (zh) * | 2023-12-18 | 2024-01-19 | 中科三清科技有限公司 | Ekma曲线图生成方法、装置、电子设备及存储介质 |
CN117827863A (zh) * | 2024-03-04 | 2024-04-05 | 中国气象科学研究院 | 基于cldas数据库的大气环境监测分析方法及系统 |
-
2023
- 2023-03-24 CN CN202310295454.5A patent/CN116384565A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117423406A (zh) * | 2023-12-18 | 2024-01-19 | 中科三清科技有限公司 | Ekma曲线图生成方法、装置、电子设备及存储介质 |
CN117423406B (zh) * | 2023-12-18 | 2024-02-27 | 中科三清科技有限公司 | Ekma曲线图生成方法、装置、电子设备及存储介质 |
CN117827863A (zh) * | 2024-03-04 | 2024-04-05 | 中国气象科学研究院 | 基于cldas数据库的大气环境监测分析方法及系统 |
CN117827863B (zh) * | 2024-03-04 | 2024-05-10 | 中国气象科学研究院 | 基于cldas数据库的大气环境监测分析方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109142171B (zh) | 基于特征扩张的融合神经网络的城市pm10浓度预测方法 | |
CN112651665B (zh) | 一种基于图神经网络的地表水水质指标预测方法和装置 | |
CN110782093B (zh) | 融合ssae深度特征学习和lstm的pm2.5小时浓度预测方法及系统 | |
CN107909206B (zh) | 一种基于深层结构循环神经网络的pm2.5预测方法 | |
CN116384565A (zh) | 一种基于缺失数据填补的层次式大气臭氧浓度预测方法 | |
CN111695731B (zh) | 基于多源数据和混合神经网络的负荷预测方法、系统及设备 | |
CN113554466B (zh) | 一种短期用电量预测模型构建方法、预测方法和装置 | |
CN113516304B (zh) | 基于时空图网络的区域污染物时空联合预测方法及装置 | |
CN108711847A (zh) | 一种基于编码解码长短期记忆网络的短期风电功率预测方法 | |
CN108399470B (zh) | 一种基于多示例遗传神经网络的室内pm2.5预测方法 | |
CN109948716A (zh) | 一种基于区域残差和lstm网络的机场延误预测方法 | |
CN112766600B (zh) | 一种城市区域人群流量预测方法及系统 | |
CN109685249A (zh) | 基于AutoEncoder和BiLSTM融合神经网络的空气PM2.5浓度预测方法 | |
CN115935796A (zh) | 一种基于时空异质的和同步的图卷积网络交通流预测方法 | |
CN113327417B (zh) | 基于3d动态时空残差卷积关联网络的交通流预测方法 | |
CN115860286A (zh) | 一种基于时序门机制的空气质量预测方法及系统 | |
CN114694767B (zh) | 基于时空图常微分方程网络的pm2.5浓度预测方法 | |
CN117116045A (zh) | 一种基于时空序列深度学习的交通流量预测方法及装置 | |
CN116797274A (zh) | 一种基于Attention-LSTM-LightGBM的共享单车需求量预测方法 | |
CN113947182B (zh) | 基于双阶段堆叠图卷积网络的交通流预测模型构建方法 | |
CN112766240B (zh) | 基于时空关系的残差多图卷积人群分布预测方法及系统 | |
CN117636183A (zh) | 一种基于自监督预训练的小样本遥感图像分类方法 | |
CN116227738B (zh) | 一种电网客服话务量区间预测方法及系统 | |
CN116630113A (zh) | 一种基于scc-rce预测单元的预测网络及网格化pm2.5浓度预测方法 | |
CN116384814A (zh) | 基于机器学习对多因素影响下机场跑道容量的评估方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |