1. 引言
在我国,大气污染物中氮氧化物(Nitrogen oxides, NOx)占有较大的比例,是酸雨和光化学污染烟雾形成的主要原因,会对人类的健康和环境保护造成很大危害。控制减少NOx的排放对降低大气污染程度具有重要意义。随着国家对环保要求的提高,工厂烟气中氮氧化物的排放要求也越来越严格,对脱硝控制系统的优化是势在必行的[1]。
电力作为一种重要能源,与我们的生活息息相关,随着互联网时代的到来,我们对电力的需求也在不断增长。电厂作为电力供给的重要设施,值得我们重点关注,其中火电厂的占比较大。火电厂通过燃烧煤炭发电,在燃煤过程中会产生大量烟气,其中不可避免地会含有大量NOx等污染物,火电厂大多采用选择性催化还原法(Selective Catalytic Reduction, SCR)对燃煤产生的烟气进行脱硝处理。简单来讲,SCR工艺是在催化剂作用下,将NOx还原为氮气和水[2],反应机理如下:
(1)
(2)
其NOx脱除率可达90%以上,拥有技术可靠、结构简单、氨气逃逸率小等优点。SCR设备通过控制喷氨阀门的开关程度来控制喷氨量,喷氨过多容易造成氨气逃逸,导致设备堵塞;而喷氨不足会造成氮氧化物排放量过高,对大气环境造成污染等一系列问题,现已成为燃煤机组的共性问题,由于目前阀门开度是由工人根据监测设备监测到的出口NOx浓度进行调节,SCR设备作为一个大惯性系统,工人对当前时刻阀门开度的调节,会在几分钟后才能够观测到影响,因此预测当前时刻阀门开度对SCR出口NOx浓度的影响,对阀门开度的控制和最终的脱硝效果都至关重要。
针对上述问题,本文提出一种基于DTW-CNN-LSTM神经网络的SCR出口烟气NOx浓度预测模型。
2. 相关技术
2.1. 长短期记忆神经网络
SCR设备是长时间不间断系统,当前时刻的出口NOx浓度会在一定程度上受到过往时刻的影响,这种影响是不可忽略的。而循环神经网络(Recurrent Neural Network, RNN)就是用于处理这类包含顺序关系数据的一类神经网络,如图,其中
是输入层特征,
是隐含层向量,
为输出特征,
为输入层到隐含层的权重矩阵,
为隐含层到输出层的权重矩阵,
为上一隐含层的权重值,其特殊的循环结构,会将过往时刻的结果带入到当前时刻,其模型结构如图1所示,相关计算公式如式(3)、式(4)所示。
Figure 1. Structure of recurrent neural network model
图1. 循环神经网络模型结构
(3)
(4)
RNN网络虽然结构简单,但是当时间序列过长的时候,模型容易出现梯度消失等问题,因此其不适于处理长时间序列。长短期记忆神经网络(Long Short-Term Memory, LSTM)是由Hochreiter等在RNN结构基础上改进而来,增加了遗忘门、记忆门和输出门结构。LSTM网络结构中的门结构起到滤波的作用,对过往时刻神经元的状态输出和当前的输入通过激活函数和权重向量选择性保留和舍弃,为神经元提供了更加丰富的数据结构。其网络结构如图2所示,相关计算公式如式(5)~(10)所示。
Figure 2. Structure of long short term memory neural network model
图2. 长短时记忆神经网络模型结构
(5)
(6)
(7)
(8)
(9)
(10)
其中,
、
、
、
分别为遗忘门,输入门、输出门、记忆细胞状态;
、
为隐含层细胞状态及中间变量;
、
分别为权重矩阵及偏置;
、
分别为sigmoid函数及tanh函数[3]。LSTM神经网络虽然在一定程度上解决的RNN网络存在的梯度消失的问题,但是在面对时间更长的序列时,随着时间的增长,可能会出现对序列特征难以捕捉提取的情况,CNN网络在特征提取具有充分的优势,因此本文使用CNN网络对LSTM网络进行改进。
2.2. 一维卷积神经网络
卷积神经网络(Convolutional Neural Networks, CNN)作为一种典型的深度学习方法,被广泛应用于计算机视觉等领域,其核心是其中的卷积层和池化层。卷积层能够捕获到输入数据中的全局特征,可以大幅度减少参数并降低过拟合风险。池化层能够对卷积计算出的数据在保留卷积层大部分重要特征的基础上进行降维,降低网络的复杂度,减小模型的大小[4] [5]。
一维卷积神经网络(1D Convolutional Neural Network, 1D-CNN)是卷积神经网络的一个变种,卷积神经网络通常用于对二维图像进行卷积,而一维卷积神经网络则用于对一维时序数据进行处理,使用固定大小的卷积核在一维特征上进行卷积操作,如图3所示[6]。
Figure 3. Structure of one-dimensional convolutional neural network model
图3. 一维卷积神经网络模型结构
SCR脱硝设备作为一个大惯性系统,其中不同的参数对出口NOx浓度影响速度上会存在不同程度的延迟,神经网络模型虽然能够在一定程度上学习到延迟效果,但是网络对延迟的学习可能会出现偏差,导致网络的预测结果发生偏移,因此本文尝试通过DTW算法对输入数据进行处理,来修正网络在学习过程中对延迟产生的误差。
2.3. 动态时间规整算法
动态时间规整算法(Dynamic Time Warping, DTW)是一种适用于时间序列匹配的算法,最早被应用于孤立词语音识别之中,其主要目的是通过序列间对齐寻找一个最佳对应关系,从而使两个不同长度的序列可以进行比较。算法流程:将两个需要比较的时间序列看作两个数组,建立一个距离矩阵,该矩阵的每个元素存储了序列中对应元素之间的距离,在距离矩阵中找到一条从左上角到右下角的最短路径,该路径为两个序列之间的最佳对齐。DTW算法利用所有相似点之间距离的和来衡量两个时间序列整体之间的相似性,设
、
分别为长度为m、n的时间序列,其DTW距离如式(11)、(12)所示:
(11)
(12)
其中,
为
和
之间的距离,通常使用欧式距离进行计算[7]。DTW虽然计算量大,在处理较长时间序列时速度相对较慢,但是其能够容忍序列之间的时间非等长及偏移,适用于更多场景[8]。
3. SCR脱硝设备出口浓度预测模型
3.1. 数据预处理
本文处理的数据是来自青岛某火电厂的锅炉燃煤数据,对数据预处理的具体步骤如下:
(1) 数据清理。从火电厂SCR设备采集的数据相对规整,但是仍然存在部分数据缺失,部分参数在采集过程中因对SCR出口浓度没有影响,在采集时均记录为0,对模型训练没有价值,将该部分从原始数据集中剔除。
(2) 数据归一化。数据归一化可以降低原始数据中较大范围的数据造成的影响,提高模型训练的速度和预测的精准度[9]。本文采用min-max归一化方法使输入数据处于[0, 1]区间,其公式如式(13)所示:
(13)
(3) 计算延迟时间。SCR设备作为一个大惯性系统,在烟气流动的过程中,不同参数对最终SCR设备出口氮氧化物浓度的影响效果会存在不同程度的延迟,通过初步计算延迟时间,能够使网络更好地学习到不同输入特征对输出特征的影响,输入特征最优延迟时间结果如表1所示。
Table 1. Optimal delay time for input features
表1. 输入特征最优延迟时间
参数 |
延迟时间(s) |
参数 |
延迟时间(s) |
#4发电机有功功率 |
359 |
4A氨混合器调节门SP_NOX |
2 |
4A反应器入口烟气温度一 |
138 |
4A氨混合器调节门开度指令 |
65 |
4A反应器入口烟气温度二 |
141 |
4A氨混合器调节门开度反馈 |
66 |
4A反应器入口烟气温度三 |
142 |
4A反应器氨气供应流量 |
167 |
4A反应器入口CEMS烟气NOX |
4 |
4A反应器氨气供应压力 |
353 |
4A反应器入口CEMS烟气NOX (折算) |
6 |
4A反应器氨气供应温度 |
0 |
4A反应器入口烟气流量 |
358 |
|
|
(4) 使用滑动窗口拆分数据。对于时间序列预测,LSTM神经网络需要从过往时间中获取信息对当前时刻进行预测,需要对数据集进行划分,设置时间步长度为150秒的滑动窗口,对数据集进行处理,得到可供模型使用的数据集。
3.2. 模型搭建
将从火电厂采集到的SCR脱硝过程数据作为实验数据,经过上述预处理后,得到实验样本,将其中89%作为训练样本,11%作为预测样本。
为评估模型预测效果、衡量预测结果相较于真实结果的差异。本文使用平均绝对误差(Mean Absolute Error, MAE)、均方根误差(Root Mean Square Error, RMSE)和决定系数(R-Square, R2)对模型准确性进行评估。其中MAE用来反映预测误差的实际情况,见式(14),RMSE用来衡量观测值与实际值之间的偏差,见式(15),R2用于评估模型的拟合度,见式(16) [10]。
(14)
(15)
(16)
其中,
为预测样本的数量,
为标签值的期望,
为第
个样本的预测值,
为第
个样本的真实值。
本文搭建的DTW-CNN(1D)-LSTM网络包含1个输入层,1个卷积层,1个池化层,1个长短时记忆层和1个输出层,具体结构如表2所示。
Table 2. Struct of DTW-CNN-LSTM model
表2. DTW-CNN-LSTM模型结构
名称结构 |
参数 |
Conv1D |
卷积核个数:32,卷积核宽度:3 |
MaxPooling1D |
池化层宽度:3 |
LSTM |
神经元个数:4 |
Dense |
输出单元数:1 |
卷积层通过卷积运算对输入的某个局部进行加权求和,实现对应输入的局部感知,进而提取输入数据特征,使用ReLU激活函数对提取到的进行非线性化处理。选取最大池化作为池化层的操作。同时,不同的卷积核大小与个数以及卷积层层数会产生不同的拟合结果,本文选择不同大小及数量的卷积核和卷积层层数构造预测模型,并探究其对预测结果的影响,以获取卷积核参数和卷积层数的最优组合。将SCR出口NOx浓度的预测值与实际值进行对比分析,以验证模型的有效性。
为防止过拟合,在网络中加入L2正则化。L2正则化是最常用的一种正则化技术,又称为权重衰减(Weight Decay),其在原损失函数后添加正则化项以防止权重过大,使模型更平滑[11]。
3.3. 模型训练与验证
本文搭建的DTW-CNN-LSTM网络模型与传统LSTM及CNN-LSTM对训练样本进行100轮拟合,同时对SCR设备出口45分钟内氮氧化物浓度进行预测得到的结果如图4及表3所示,绘图时每间隔5秒钟取1个样本点。
Figure 4. Prediction results of NOx within 45 minutes (different structure of neural network)
图4. 45分钟内NOx浓度预测结果(不同网络结构)
Table 3. Evaluation of model prediction performance (different structure of neural network)
表3. 模型预测效果评价(不同网络结构)
模型 |
MAE |
RMSE |
R2 |
LSTM |
0.0613 |
0.0701 |
31.89 |
CNN-LSTM |
0.0452 |
0.0518 |
53.10 |
DTW-CNN-LSTM |
0.0214 |
0.0297 |
79.65 |
为了分析卷积层层数对预测结果的影响,以预测结果更好的模型的卷积核参数为基准,构建不同卷积层层数的CNN-LSTM网络模型对SCR设备出口45分钟内的氮氧化物浓度进行预测,结果如图5和表4所示,绘图时每间隔5秒钟取一个样本点。
Table 4. Evaluation of model prediction performance (different layer number of CNN)
表4. 模型预测效果评价(不同CNN层数)
卷积层层数 |
MAE |
RMSE |
R2 |
1层 |
0.0214 |
0.0297 |
79.65 |
2层 |
0.0224 |
0.0327 |
74.06 |
3层 |
0.0459 |
0.0562 |
46.54 |
由表可知,当卷积层数为1时,模型预测效果最好,其R2最高且MAE和RMSE最小。增加卷积层层数可以分层次传递信息,即将各层需要学习的问题分解,同时可以引入更多非线性因素,进而提高模型性能和预测效果。然而随着网络层数的增加,模型预测性能反而会下降,这是因为随着卷积层数的增加,模型会出现性能退化的现象,即卷积层层数增加至两层时训练集的准确度趋于饱和,继续增加层数训练集的精度就会下降。
Figure 5. Prediction results of NOx within 45 minutes (different layer number of CNN)
图5. 45分钟内NOx浓度预测结果(不同CNN层数)
4. 结论
本文建立了DTW-CNN-LSTM神经网络利用燃煤锅炉参数对SCR脱硝设备的入口浓度进行预测,同时考虑不同参数之间对于入口浓度带来的延迟影响。结果表明,相比于LSTM和CNN-LSTM网络,DTW-CNN-LSTM在该数据集上具有更好的预测结果,同时当CNN网络层数为1时,得到的预测结果更好。该网络的预测结果可以在一定程度上为SCR脱硝设备的出口浓度预测提供参考。在未来的研究中会考虑更多的影响因素,以提升模型的预测精度。