基于深度学习的化工园区VOCs 风险溯源方法
2024-03-28李维桢通信作者
李 艳,李 浦,李 月,王 雪,李维桢,周 游(通信作者)
(1 沈阳理工大学环境与化学工程学院 辽宁 沈阳 110168)
(2 辽宁省重要技术创新与研发基地建设工程中心 辽宁 沈阳 110100)
0 引言
挥发性有机化合物(volatile organic compounds,VOCs)是空气污染物的重要组成部分之一,是细颗粒物(PM2.5)、臭氧(O3)等大气污染物的重要前体,且VOCs 会引发灰霾、光化学烟雾等大气问题,是全球气候变化的一个重要因素[1]。 化工园区是VOCs 排放的重要来源[2],且化工园区VOCs 排放涉及行业广、产排污环节多、无组织排放特征明显,因此化工园区亟须建立一套高效的VOCs 事故应对机制。 对于化工园区而言事故溯源是VOCs 事故应对机制中的关键环节,传统的VOCs 事故风险溯源方法因空间尺度小、各排放因子相关性高、因子谱差异较小等特点[3],往往难以覆盖实际VOCs 事故中的各种突发情况,在实践中的应用效果有限。
目前大气污染物溯源方法主要包括基于行为的方法、基于追踪向量的方法、基于数据分析的方法[4-7]。 基于行为的方法主要是利用移动设备(如移动机器人)来进行污染源定位,通过实时调整机器人移动路线来慢慢向污染源逼近,LOCHMATTER 等[8]使用移动设备的追踪方法用了218~379 s 的时间追踪到11 m 的烟羽。 基于追踪向量的方法也是利用移动设备来确认污染源位置,和基于行为的方法不同的是,该方法按照一定的规则生成跟踪向量,移动设备根据追踪向量移动,以此完成溯源分析。 李宏宇等[9]在2018 年采用路径优化算法实现了对追踪向量的计算,并完成了局部的避障路径规划。 基于数据分析的方法是通过监测固定位置传感器的浓度情况,确定污染源位置。 由于静态传感器可以长时间采集信息,能及时发现气体泄漏并预警溯源,因此机器学习可以应用于气体源定位。
近年来,深度学习技术由于其优秀的特征提取能力和强大的预测能力在各个领域得到了广泛应用[10-11]。 基于深度学习技术,本文提出了一种化工园区VOCs 事故风险溯源方法,该方法采用空气质量模型模拟不同等级的事故风险,以此弥补传统基于数据挖掘溯源模型数据不足的问题,使用卷积神经网络(convolutional neural network,CNN)和循环神经网络中的长短期记忆网络(long short-term memory,LSTM)相结合的方式,对化工园区VOCs 泄漏事故进行溯源。 该研究提供了一种新的思路和方法,提高了溯源的性能,对于化工园区VOCs 事故风险评估和控制具有一定的应用前景和推广价值。
1 化工园区VOCs 事故风险数据集制作
使用深度学习网络实现化工园区VOCs 事故风险溯源,数据是至关重要的,通过大量数据样本进行训练,深度学习模型提取特征,从而实现对未知数据的泛化能力。 使用Chama 对事故风险进行仿真,结合不同气象条件模拟气体扩散数据;模拟VOCs 事故风险,获得监测点位观测数据,建立VOCs 事故风险数据集。
1.1 参数设定
对沈阳市化工园区进行分析识别,确定大气稳定度、空气浮力、泄漏气体密度、重力、风速、风向等环境和气体因素。
确定该区域的仿真空间为4 500 m×2 000 m×30 m 的大尺度空间。 设定园区中企业数量为70 家;监测点位数量200 个,根据化工园区空间特征,监测点位按20×10 的方式安装,安装高度为10 m,以方便后续深度网络模型的构建。
四季风频玫瑰图如图1 所示,由图可知,研究地区主导风向为E,出现频率为15.10%,次主导风向为NNW,出现频率为13.14%,春、夏、秋、冬主导风向分别为SE、E、NNW、E。 年平均风速为2.68 m/s。 因此,设定各个季节主导风向为模拟参数;风速设定按照月平均风速,大气稳定度按照莫宁-奥布霍夫长度(L)稳定标准进行计算。
由于泄漏的VOCs 物质是在常温常压下存储的液体物质,因此泄漏的VOCs 初始状态为液体状态,液体泄漏源强计算公式如式(1)所示,通过容器内介质压力、大气环境压力、泄漏液体密度等计算VOCs 液体状态下泄漏速率,如式(1)所示:
式(1)中,QL表示液体VOCs 物质泄漏源强(kg/s);P表示容器内介质压力(Pa);P0表示大气环境压力(Pa);ρ表示泄漏液体VOCs 物质密度(kg/m3);g表示重力加速度(9.18 m/s2);h表示裂口之上液位高度(m);Cd表示液体泄漏系数;A表示泄漏口面积(m2)。
由于环境温度小于VOCs 的沸点,因此在计算VOCs气体泄漏速率时只需考虑质量蒸发,通过液体表面气压、环境温度、风速等变量计算出液体蒸发速率,如式(2)所示。
式(2)中,Q表示质量蒸发速率(kg/s);P表示液体表面蒸气压(Pa);R表示气体常数(J/mol·K);T0表示环境温度(K);M表示泄漏物质的摩尔质量(kg/mol);u表示风速(m/s);r表示液池半径(m);α,n表示大气稳定度系数。
通过分析不同条件下的质量蒸发速率,设置泄漏速率为0.01~0.1 kg/s 区间的随机数;泄漏高度设置为10 m。
1.2 制作数据集
结合1.1 节中对园区气象条件的调研分析,利用Chama 仿真,对VOCs 泄漏进行模拟,获得观测数据,其中监测点位采样频率设定为1 Hz,模拟时间为150 s,因此获得的数据集为150 个时间步的监测点位数据。 对化工园区70 家企业仿真模拟,得到化工园区VOCs 事故风险数据,如图2 所示。
由于数据集同时具有空间和时间特征,因此把数据划分为150×20×10 的三维矩阵。 其中150 为时间步长,每个时间步长都为20×10 矩阵数据。
VOCs 事故风险溯源本质上是分类问题,对于每个泄漏源是一个二分类问题。 分类标签为大小为70 的一维数组,格式为1×70,对应仿真模拟中70 个泄漏源。 数据集使用one-hot 编码。
2 溯源模型构建
化工园区VOCs 溯源模型的性能主要受到神经网络架构、深度与宽度、正则化、学习率及优化算法等因素的影响。
2.1 数据集划分
针对化工园区VOCs 事故风险对数据集进行划分,以便进行化工园区VOCs 事故风险溯源模型的训练。 将事故风险数据集划分为训练集、验证集和测试集。
在划分数据集之前,还需要对数据进行必要的预处理工作,采用平方根转换,降低数据的偏度,压缩大值和小值之间的差异。 并按照常用的比例对数据集进行随机划分,即70%的训练集、15%的验证集和15%的测试集。
2.2 模型架构设计
基于深度学习的模型网络结构设计是用来解决溯源问题。 目标是根据输入的数据进行分类,并输出一个包含70 个类别概率的向量。 为了实现这一目标,本文设计了一个CNN 结构,并引入了LSTM 组件。
2.2.1 CNN-LSTM 网络结构特性
在VOCs 事故的溯源过程中,数据集是一个多维矩阵,其中第三维代表了时间序列。 为了更有效地提取关键特征信息,并对数据中的空间和序列进行建模和预测,研究人员采用CNN 和LSTM 两种深度学习算法。 CNN 是一种深度学习模型,用于处理图像、语音等复杂数据的分类和识别问题。 该模型的核心思想是利用卷积和池化操作,通过对输入的数据进行特征提取并抽象出更高阶的特征表示,从而实现对数据的有效分类和识别。
LSTM 可以有效解决传统的循环神经网络存在梯度消失或梯度爆炸等问题。 LSTM 由一个内部状态向量和3个门组成,包括遗忘门、输入门和输出门,通过门控制机制可以选择性地处理输入序列信息,维护一个内部状态向量。 采用CNN+LSTM 可以更好地融合时空信息,进而提高模型的性能。
2.2.2 溯源模型网络层结构
构建的VOCs 事故风险溯源模型为8 层的网络结构,如图3 所示,其中包括输入层、3 个卷积层、1 个LSTM 层、1 个Flatten 层和2 个全连接层。
图3 深度学习网络架构图
网络前3 层采用卷积层,每个卷积层由一层卷积、批量归一化及ReLU 激活函数组成。 卷积之后通过BatchNorm 层对中间特征值进行标准化,以规范神经网络中的分布并提高模型的鲁棒性和训练速度,在BatchNorm层后通过加入ReLU 激活函数引入非线性映射。 卷积层采用torch.nn 模块实现。
在卷积层后,加入LSTM 层作为循环层,由于VOCs 监测点位数据具有时间特征,因此使用LSTM 对溯源模型性能的提升是有利的。 LSTM 层采用torch.nn 模块实现。 在LSTM 之后使用Dropout 正则化技术,以提高溯源模型的鲁棒性和泛化能力。
输出层采用Flatten 层将数据展平为一维向量,Flatten层不包含训练参数,其作用是将数据维度降低从而更好地输入到全连接层进行分类。
Flatten 后加入Dropout 正则化技术,处理过的数据通过两个全连接层,实现对输入数据的有效建模和分类。 两个全连接层分别使用ReLU 和Sigmoid 函数以实现非线性映射,为了增加模型的稳定性和可靠性,同时减少模型的训练时间,通过全连接层实现了对输入数据进行高维度特征表达和抽象,输出形状为1×70 的数组,数组中的每个值对应企业泄漏概率。
3 模型训练与结果分析
为评估模型性能,使用PyTorch 实现3 种不同的网络模型结构:CNN+LSTM、CNN 和LSTM;CNN 模型与LSTM模型为上述网络结构去除相应模块获得,其余参数保持不变。 使用化工园区VOCs 事故风险数据集进行训练。
3.1 模型训练
在模型训练阶段,首先重写DataLoad 方法将Excel 数据加载到数据集和测试集,并分别创建数据加载器,以支持批量训练。 模型的训练过程中,采用了随机梯度下降优化算法来最小化交叉熵损失函数。 设定初始学习率为0.01,并使用学习率衰减技术来逐渐减小学习率,以提高模型的收敛性和稳定性。
采用L2 正则化和Dropout 防止模型在训练过程中过拟合。 这些技术可以有效地减少模型的复杂度,并提高模型的泛化能力。 在每个训练迭代中,通过计算损失值、进行反向传播和参数更新来优化模型。 优化过程中采用批次归一化技术来加速模型的收敛并改善梯度流动。 使用了准确率作为主要评估指标。
3.2 结果分析
实验进行了1 000 个训练周期,并记录了每100 个训练步骤的精准率,如图4 所示。
图4 深度学习模型迭代
经过实验测试,研究人员发现CNN +LSTM 模型和CNN 模型在VOCs 事故风险溯源任务中表现较好;而LSTM 模型则无法完成拟合。 原因可能是无法充分利用数据中的时空信息;在小尺度空间的溯源任务中,数据集中的空间特征相比时间特征更加重要,故CNN+LSTM 和CNN 模型性能差距较小。 训练过程中CNN 模型由于更少的层数,收敛速度高于CNN+LSTM;其中CNN+LSTM 模型在0~250 轮迭代的时候损失值不断下降,250 轮之后趋于稳定;而CNN 模型损失曲线先小幅度上升后逐渐稳定,准确率在不断上升,也是一个好的训练趋势。
在CNN 模型与CNN+LSTM 模型准确率方面表现差距较小的情况下,考虑到两个模型迭代损失值的表现及事故风险数据集中存在的时空特征,研究人员倾向于选择CNN+LSTM 模型。 理由是可以更加有效地捕捉VOCs 事故风险的关键特征和时序信息。
4 结语
本文使用Chama 对化工园区VOCs 事故风险进行模拟,构建CNN、LSTM、CNN+LSTM 3 种模型,并对其性能进行了对比,得出以下结论:
(1)使用Chama 进行数据模拟,产生的数据和标签构建出的数据集,可以用来对深度学习网络进行训练,从而克服了化工园区VOCs 泄漏事故真实数据获取困难、数据量不足等问题。
(2)基于深度学习网络的溯源模型能够处理来自传感器的VOCs 泄漏数据,并且在实验中该模型能够对风险溯源快速响应,精度可以精确到具体泄漏VOCs 的企业。特别是在VOCs 泄漏事故中,模型的响应时间可以控制在150 s 以内,极大地提高了风险管理的效率。
(3)尽管LSTM 模型在时间序列任务中表现出色,但在化工园区这样的溯源任务中无法实现拟合。 对比实验中CNN 和CNN+LSTM 两个模型的性能,可以看出在化工园区这种尺度下的VOCs 溯源任务中空间信息相比于时间信息更为重要。
(4)在溯源任务中,CNN 和CNN+LSTM 模型都可以实现数据集的特定时空特征的分析和预测。 然而,从数据集特有特征以及模型的复杂性上看,CNN+LSTM 模型相对于CNN 模型更加优秀。 且模型具有较强的自适应能力,通过实践中不断积累新的数据,可以进一步提高模型的准确性和可靠性。