APP下载

仿生嗅觉感知系统气体识别和浓度估计模型

2024-04-30相洪涛张文文肖文鑫王远西

自动化学报 2024年4期
关键词:准确率气体动态

相洪涛 张文文 肖文鑫 王 磊 王远西

仿生嗅觉感知系统也被称为电子鼻,是一种模拟生物嗅觉感知系统的气体/气味分析系统[1-2].电子鼻主要由一系列气体传感器阵列和模式识别系统组成,可以对气体/气味进行定性分析和定量估计[3-5].电子鼻在医疗诊断[6-7]、食品质量检测[8-9]、环境监测[10-11]和公共安全[12-13]等许多应用领域中,都发挥着重要作用.影响电子鼻检测结果的主要因素有2 个: 1)气体传感器阵列器件本身对目标气体的敏感性和选择性,以及传感器阵列输出信号作为输入的气体识别;2)浓度估计模型.

为了提高电子鼻对气体或气味识别的准确率,国内外学者对搭建的气体传感器阵列器件本身进行研究.Liao 等[14]使用基于聚噻吩的薄膜晶体管作为气体传感器,可以根据蒸汽分子的大小和分子排列来识别不同种类的气体.Hu 等[15]使用石墨烯等离子检测气体分子的旋转振动模式,从而对它们进行无标签识别,能够实时、快速识别出不同气体,这种新方法在医疗保健和公共安全等领域发挥着关键作用,但该研究工作不涉及气体的定量估计.Qian等[16]将传统的电子鼻技术与挥发性有机化合物预浓缩技术相结合,设计一种基于共形传感腔的多传感器电子鼻,能够有效提高电子鼻对VOCs 气体的识别能力.Hu 等[17]设计一种基于薄膜体声波谐振器传感器阵列的新型小型气相色谱检测器,该微机电系统化学传感器具有传感性能高、尺寸小型化、功耗低等特点.孟凡利等[18]提出一种温度调制的动态测试方法,来提高金属氧化物传感器的选择性,该方法能够有效改善二氧化锡传感器动态响应信号的品质.

为了提高电子鼻的性能,学者们对气体检测模型进行了大量的研究.Xiong 等[19]提出一种基于卷积尖峰神经网络的气味识别模型,该模型结合了残差卷积神经网络的特征提取能力和尖峰神经网络的计算效率,能够有效识别出食品中的腐败气味.Wang 等[20]提出一种基于卷积神经网络和多层感知机的气体识别模型,该模型能够达到95%的气体分类准确率.实际工业现场获取大量异常气味数据的代价昂贵且不易收集,一般气体检测模型对异常气味的检测会失去效果,文献[21]介绍了基于自我表达模型和基于极端学习机的自我表达模型两种异常气味检测模型.He 等[22]提出一种基于字典学习的方法来提高电子鼻的气体识别能力,与常用气体识别模型对比,该模型的复杂度显著降低,且在气体识别任务中获得了较高识别准确率.Sun 等[23]证明了Wilks 统计量、马氏距离、线性判别分析和遗传算法可以在减少气体传感器阵列中传感器数量的同时,获得较高气体识别准确率.Liu 等[24]提出一种用于气味识别的小尺度卷积神经网络模型,该模型无需进行数据预处理和特征降维,对6 种中国白酒的分类准确率可以达到96%.然而,这些模型都难以达到100%的气体识别准确率.为了解决电子鼻中的传感器漂移问题,Zhang 等[25]提出基于知识自适应的机器学习模型,该模型的气体识别准确率达到了98%,但这项研究工作只涉及气体定性识别,并未进一步提出定量估计模型.

目前,多数气体识别模型的信号预处理步骤复杂,依赖于人工选择输入特征[26],并且仅使用气体传感器阵列响应信号的稳态值作为输入特征,而现实环境中气体一般是动态变化的、无规律的,多数情况下气体传感器阵列的响应信号难以达到稳态值或保持稳态.针对上述问题,本文提出动态小波残差卷积神经网络(Dynamic wavelet residual convolutional neural network,DWRCNN)子模型和权重信号自注意力(Weighted signal self-attention,WSSA)子模型组成的气体检测模型DWRCNNWSSA (Dynamic wavelet residual con-volutional neural network-weighted signal self-attention),该模型由动态小波残差卷积神经网络气体识别子模型和权重信号自注意力(Self-attention,SA)气体浓度估计子模型组成.DWRCNN 气体识别子模型直接将传感器阵列的动态响应信号转换成64× 64 像素的小波系数图像作为神经网络的输入进行气体种类识别;WSSA 气体浓度估计子模型直接使用传感器阵列的动态响应信号估计各成分气体的浓度值.该模型的气体检测流程如图1 所示,对于未知种类的气体,首先,通过DWRCNN 气体识别子模型对气体成分进行识别;然后,通过WSSA 气体浓度估计子模型,对已识别出的各成分气体进行浓度估计.

图1 DWRCNN-WSSA 模型气体检测流程Fig.1 Flow of gas detection by DWRCNN-WSSA model

本文主要贡献如下:

1)传统的气体检测模型需要对传感器阵列动态响应信号做复杂的信号预处理步骤,以及人工自主提取稳态信号特征作为模型的输入,忽略大量能提高气体识别准确率和浓度估计精度的动态特征.本文提出的DWRCNN-WSSA 气体检测模型直接使用气体传感器阵列原始的动态响应信号进行气体检测,简化了信号预处理过程,充分利用了气体传感器阵列响应信号中丰富的动态特征信息.

2)本文提出的WSSA 气体浓度估计子模型能根据气体传感器对不同气体的敏感性存在差异,自动赋予不同传感器信号不同权重,提高了模型的鲁棒性和浓度估计精度;该模型使用自注意力机制作为特征提取器,能够并行化处理数据,加快模型的训练速度,并从根本上解决了常用模型使用循环神经网络(Recurrent neural network,RNN)及其各种变体形式的神经网络作为特征提取器处理长时序序列存在的远距离信息丢失的问题,提高了模型的浓度估计精度.

3)本文提出的DWRCNN-WSSA 气体检测模型既能对气体进行定性识别,又能进一步对已识别出的成分气体进行定量估计.其中,DWRCNN 气体识别子模型仅需更少训练时间就能达到接近100%的气体识别准确率;同时,WSSA 气体浓度估计子模型能够对单一气体和混合气体都保持较高浓度精度,解决了动态环境中传统仿生嗅觉感知系统需要针对不同气体选择不同最优气体浓度估计模型问题.2 个模型都仅需要少量的标签数据即可在线使用,降低了收集标签数据的成本.

1 仿生嗅觉感知系统及数据采集

1.1 仿生嗅觉感知系统

为了验证本文提出的气体检测模型性能,搭建了一个仿生嗅觉感知系统.如图2(a)所示,该系统主要由8 个不同型号的金属氧化物半导体型气体传感器、8 通道12 位A/D 信号采集板和+5 V 供电电源、Labview 信号采集界面组成.其中,气体传感器阵列详细信息见表1.

表1 气体传感器阵列详细信息Table 1 Gas sensor array details

图2 实验装置和平台Fig.2 Experimental setup and platform

系统采用STM32 单片机内部自带的8 通道12 位A/D 转换器对传感器阵列动态响应信号进行实时采样,最大量程为10 V,最小分辨率为2 mV,输入阻抗为1 M Ω.信号接口共有10 个引脚,其中2 个引脚为数据采集卡与每个传感器间的共同接地引脚,8 个引脚分别为A/D 转换的通道0~ 通道7,它们通过USB 转串口线连接计算机,实时将传感器阵列动态响应信号传入Labview 信号采集界面.实验信号采样频率为10 Hz.在Labview 信号采集界面,设置采样频率为10 Hz、显示精度为4 位有效数字,为了采集传感器的原始动态响应信号,信号滤波设置为无,该界面可以实时显示8 个气体传感器的采样电压值.

为了确保实验的准确性,搭建一个仿生嗅觉感知系统标准实验平台如图2(b)所示,该实验平台主要由气腔控制柜及电源、15 升气腔、高精度温湿度传感器、气腔环境配置软件和气源组成.气源为100%的CO、5%的H2和95%的N2为载气的混合气体.除此之外,还有容积为2 L、5 L、10 L 的气体采样袋和容积为10 mL、20 mL、100 mL、200 mL 和500 mL 的注射器以及抽气泵等实验装置,气体采样袋主要用于收集标准气源中的气体,注射器主要用于抽取气体采样袋中的标准气体,并注入气腔中.

1.2 气体样本收集

在本文实验中,气腔的温度和湿度保持在25 ℃和60%.数据采集实验步骤如下.

1)目标气体计算.由于实验所需的气体体积较小,本实验采取注射器配气法.注射器注射入气腔的目标气体体积Vtarget为:

式中,Ctarget为目标气体浓度,Vcavity为气腔体积,α为目标气体和载气百分比系数.

2)实验环境配置.将气腔的温度设置为25 ℃,湿度设置为60%,采样频率设置为10 Hz.

3)气体基线采集.当气腔的温度和湿度达到设定值,打开仿生嗅觉感知系统电源,采集传感器阵列在当前环境下的基线响应信号5~ 10 s.

4)目标气体注入.将气源中的气体通过减压阀收集到集气袋中,然后根据式(1)计算出的Vtarget,使用注射器从集气袋中抽取相应体积的目标气体并注入气腔中,同时打开气腔内部的风扇,吹扫10 s后关闭.

5)实验数据采集.气体注入时,启动仿生嗅觉感知系统,采集气体传感器阵列信号235~ 255 s.

6)腔体环境清洗.当前数据采集完成后,使用抽气泵抽取气腔中的环境气体,直到传感器阵列的信号恢复到基线状态.

7)重复上述步骤4)~ 6),直至实验数据全部采集完成.

图3 为当CO 浓度为140 ppm 时,CO 传感器阵列的动态响应信号曲线.在每组实验中,气体传感器阵列信号的采集时间为235~ 255 s,每个气体传感器能够采样2 350~ 2 550 个信号点.在浓度范围为0~1 000 ppm 的CO 气体中,随机采样117 组不同浓度下传感器阵列动态响应信号,得到(2 350~ 2 550)×8× 117 个CO 样本数据;在浓度范围为0~ 1 000 ppm的H2气体中,随机采样115 组不同浓度下传感器阵列动态响应信号,得到 (2 350~ 2 550)× 8× 115个H2样本数据;在浓度范围为0~ 500 ppm 的CO 气体和0~ 200 ppm 的H2气体的混合气体中,随机采样120 组不同浓度下传感器阵列动态响应信号,得到 (2 350~ 2 550)× 8× 120 个CO 和H2混合气体样本数据.

图3 当CO 浓度为140 ppm 时,CO 传感器阵列的动态响应信号曲线Fig.3 Dynamic response signal curve of the sensor array for 140 ppm CO

2 DWRCNN 气体识别模型

DWRCNN 气体识别模型主要由2 部分组成:1)把气体传感器阵列的动态响应信号转换成小波系数图像,根据Mallat 塔式算法,对传感器阵列动态响应信号进行5 层小波变换,获取第5 层低频系数和5 层高频系数;然后等间隔提取小波系数,并填入64× 64 像素矩阵中,形成64× 64 像素的小波系数图像.2) 将转换获得的小波系数图像作为DWRCNN 模型的输入,识别各气体成分.

2.1 动态响应信号转换成小波系数图像

在实际应用中,气体传感器采集到的信号会受到各种噪声的影响,这些噪声直接影响着气体识别的准确率.小波变换具有抗干扰能力强、非平稳信号特征提取能力强等特点,所以本文采用小波变换对信号进行特征提取.小波函数有尺度参数a和平移量b两个参数,尺度对应于频率,平移量对应于时间,所以小波函数的一般形式为:

离散信号可以使用多分辨分析(Multi-resolution analysis,MRA)方法离散化参数a和b,使得a=2j和b=2jk,得到离散小波函数:

所以,离散信号f(n) 的 离散小波变换系数Cψ(j,k)的计算公式为:

其重构公式为:

气体传感器阵列的动态响应信号通过小波变换,可以分解成低频近似信号和高频细节信号.图4是传感器阵列动态响应信号小波分解过程,本文选用db5 小波为基小波,g(n) 和h(n) 分别表示低通滤波器和高通滤波器,ci为低频系数,di为高频系数,i表示小波分解层数.

图4 传感器阵列动态响应信号小波分解过程Fig.4 Wavelet decomposition process of dynamic response signal of sensor array

图5 是TGS2610 在140 ppm CO 下的动态响应信号曲线和相应的5 层低频小波系数曲线.可以看出,当信号经过5 层小波变换后,其低频系数曲线可以很好地表示信号趋势,减轻噪声的影响,所以选择对信号做5 层小波变换,并将第5 层的低频小波系数作为神经网络的输入之一.同时,为了不丢失动态响应信号的细节信息,将5 层高频小波系数也作为神经网络的输入.气体传感器阵列动态响应信号Sgas(n) 可表示为:

图5 TGS2610 在140 ppm CO 下的动态响应信号曲线和相应的5 层低频小波系数曲线Fig.5 Dynamic response signal curve and corresponding 5-layer low-frequency wavelet coefficient curve at 140 ppm CO for TGS2610

将气体传感器阵列的动态响应信号转换成小波系数图像的过程如图6 所示,具体步骤如下.

图6 传感器阵列动态响应信号转换为小波系数图像过程Fig.6 Process of converting the dynamic response signal of the sensor array into a wavelet coefficient map

1)对气体传感器阵列采集到的动态响应信号做5 层小波变换,每个气体传感器采集到的动态响应信号可通过小波变换得到2 470 个高频系数和低频系数,高频系数分别为84 个d5、160 个d4、311个d3、613 个d2和1 218 个d1,低频系数为84 个c5,气体传感器阵列可获得 2 470× 8 个小波系数.

2)从每个气体传感器采集到的动态响应信号通过小波变换得到的2 470 个原始小波系数中,等间隔提取512 个新小波系数,其中高频系数分别为,低频系数为.气体传感器阵列可获得512× 8 个新小波系数.

3)将512× 8 个新小波系数依次填入64× 64像素的矩阵中,形成64× 64 像素的小波系数图像.

4)重复步骤1)~ 3),直至所有气体样本数据都转换成小波系数图像.

气体样本数据量为(2 350~ 2 550)× 8× 352个,可转换成352 幅64× 64 像素的小波系数图像.

2.2 DWRCNN 模型的结构及气体识别过程

DWRCNN 模型的神经网络部分主要由分块卷积模块、三卷积模块、残差卷积模块和全连接模块组成.分块卷积模块将图片分成16 个16× 16 像素的图像块,每个图像块都含有部分全局信息;三卷积模块中含有3 个卷积层,可以逐步提取含有丰富信息的高级特征;残差卷积模块可以获取更深层的特征并解决网络退化的问题[27];全连接模块可以将网络提取的特征聚集起来并解码输出最终的分类结果.DWRCNN 气体识别模型结构如图7 所示,首先,气体传感器阵列动态响应信号通过小波变换转换成小波系数图像;然后,小波系数图像作为神经网络的输入,经过模型识别,输出气体种类.气体种类用3 位二进制数来表示,其中[0,0,1]表示CO,[0,1,0]表示H2,[1,0,0]表示CO 和H2的混合气体.DWRCNN 的具体参数和气体识别过程如下.

1)输入通道数为1、大小为64× 64 像素的小波系数图像,经过分块卷积模块,将图像分成16 个16× 16 像素的含有部分全局信息的图像块.在分块卷积模块中,卷积层的卷积核大小为4× 4,输入通道数为1,输出通道数为16,步长设置为4.

2) 16 个16× 16 像素的图像块进入三卷积模块,图像块的数量、大小均保持不变,3 个卷积层的卷积核大小均为3× 3,输入和输出通道数均为16,步长均设置为1,填充方式均设置为相同填充.

3)经过三卷积模块后,16 个16× 16 像素的图像块进入残差卷积模块,图像块的数量、大小均保持不变.残差卷积模块中卷积层的卷积核大小为3×3,输入和输出通道数均为16,步长设置为1,填充方式均设置为相同填充.

4)图像块被展开成一维序列,序列长度为8 196,进入双全连接模块.双全连接模块由2 个全连接层组成,其中第1 个全连接层有1 024 个神经元,第2个全连接层有3 个神经元.

5)通过softmax 函数,输出气体识别结果.

3 WSSA 气体浓度估计模型

3.1 自注意力机制

常用基于深度学习的气体浓度估计模型一般使用RNN 及其各种变体形式的神经网络作为特征提取器提取序列的特征,这些神经网络采取线性序列结构,不断从前向后收集输入信息,容易造成梯度消失、梯度爆炸和远距离信息丢失等问题.本文提出的WSSA 模型使用自注意力机制作为特征提取器,它可以并行化处理整个输入序列,从而减少训练时间,并能解决RNN 及其变体形式的神经网络对长时序序列进行特征提取时,由于长期依赖性而导致的远距离信息丢失问题[28].

给定一个矩阵x ∈RN×d,将x与可学习的权重矩阵WQ、WK、WV ∈Rd×d相乘,得到矩阵Q、K、V∈RN×N.此时,矩阵x的第i行经过自注意力机制计算后的输出为:

式中,i,j=1,···,N.Sim(·,·) 为相似度函数,用于计算矩阵Q中每一个行向量之间的相似度.在原始的自注意力机制中,使用的相似度函数为:

将式(8)代入式(7),可得原始自注意力(Original self-attention,OSA)机制计算的输出为:

根据式(9),可以得到如图8(a)所示的原始自注意力机制计算复杂度图解.由图8 可以看出,原始自注意力机制计算复杂度为 O (N2d+N2d),当矩阵长度N远大于矩阵宽度d时,O (N2d+N2d) 可近似为 O (N2),此时模型的计算复杂度与矩阵的长度N呈二次增长的关系.

图8 计算复杂度图解Fig.8 Illustration of computational complexity

原始自注意力机制对长矩阵进行特征提取的计算复杂度过高.为了降低计算复杂度,可以采用线性自注意力机制代替原始自注意力机制.线性自注意力机制使用可分解的相似度函数为:

式中,ϕ(·) 是核函数.则式(7)可用核函数的形式表示为:

通过矩阵乘积特性,可知:

这使得可先计算ϕT(K)V∈Rd×d,再用ϕ(Q)∈RN×d和ϕT(K)V的计算结果相乘.如图8(b)所示,当矩阵长度N远大于矩阵宽度d时,自注意力机制的计算复杂度与矩阵长度为线性增长的关系,计算复杂度为 O (N).

由于本文使用气体传感器阵列的动态响应信号作为气体浓度估计模型的输入,其中输入矩阵的长度为传感器阵列采样的信号点个数,输入矩阵的宽度为传感器阵列中气体传感器的个数,使得输入矩阵长度远大于输入矩阵宽度.使用原始自注意力机制会造成计算复杂度较高问题,所以本文采用一种线性自注意力机制 ——cos 自注意力机制,来提取序列的特征.cos 自注意力机制能在降低计算复杂度的同时,保持良好的特征提取性能[29].cos 自注意力机制使用了以下相似度函数:

根据式(14),可得矩阵x经过cos 自注意力机制计算后的总输出为:

由式(15)可以看出,cos 自注意力机制可以实现线性的计算复杂度.

3.2 WSSA 模型的结构及气体浓度估计过程

WSSA 模型由权重分配模块、特征提取模块和全连接模块构成.由于不同气体传感器对气体的灵敏度不同,所以不同气体传感器的响应信号对气体浓度估计的影响也不同.为了提高模型的气体浓度估计精度,采用权重分配模块,使模型自动赋予不同气体传感器获取响应信号不同权重.权重分配模块由线性层、sigmoid 非线性函数、softmax 非线性函数和乘法器组成,其中线性层和sigmoid 函数可以增强模型的泛化能力,提高模型的鲁棒性;softmax 函数可以对经过线性变换和非线性变换后的信号进行归一化处理,获得权重矩阵;传感器阵列响应信号矩阵与权重矩阵做哈达玛积,得到带有权重的信号矩阵.特征提取模块由cos 自注意力机制和残差连接组成,cos 自注意力机制可以提取序列的特征,残差连接可以解决模型训练时梯度消失的问题.全连接模块由2 个全连接层组成,它可以将提取到带有权重的特征映射到样本标记空间,并解码获得最终的气体浓度估计结果.WSSA 气体浓度估计模型的结构如图9 所示,气体浓度估计过程如下.

图9 WSSA 气体浓度估计模型的结构Fig.9 Structure of the WSSA gas concentration estimation model

1) 输入1 800 个时刻的气体传感器阵列动态响应信号,输入数据可表示为X ∈R1800×8.为了降低计算复杂度,按时间顺序,每隔9 个信号选取1个信号作为神经网络的输入,形成输入矩阵S ∈R180×8.

2)将S输入到权重分配模块,经过线性层的线性变换、sigmoid 函数非线性变换和softmax 函数归一化处理,得到一个权重矩阵W ∈R180×8,S与W做内积,形成带有权重的信号矩阵S′∈R180×8,具体计算公式如下:

式中,WL为权重矩阵,bL为偏置矩阵.

3)将权重信号矩阵S′输入到特征提取模块,通过cos 自注意力机制进行特征提取;然后将提取的特征与S′通过加法器相连,形成残差连接,得到特征矩阵S′′∈R180×8,由图10 和式(15)所示,可得S′′的计算公式为:

图10 不同模型的气体识别结果混淆矩阵Fig.10 Confusion matrix of gas recognition results with different models

式中,Q′为矩阵Qs和Qc在第2 个维度上连接后的结果;(K′)T为矩阵 (Ks)T和 (Kc)T在第1 个维度上连接后的结果.

4)将S′′展开为1 个长度为1 440 的特征序列,输入到全连接模块中,经过2 层全连接解码,得到气体浓度值.其中,第1 个全连接层有8 个神经元,第2 个全连接层的神经元个数与气体种类数相等.

4 实验结果及常用方法对比

4.1 数据集

实验数据集含有352 组不同气体的传感器阵列动态响应信号,其中CO 的传感器阵列动态响应信号117 组,H2的传感器阵列动态响应信号115 组,CO 和H2混合气体的传感器阵列动态响应信号120 组.在气体识别实验中,从352 组不同气体的传感器阵列动态响应信号中,随机选取211 组作为训练集,141 组作为测试集.训练集和测试集的比例约为3:2;在气体浓度估计实验中,从117 组CO 的传感器阵列动态响应信号中,随机选取80 组作为训练集,37 组作为测试集;从115 组H2的传感器阵列动态响应信号中,随机选取80 组作为训练集,35组作为测试集;从120 组CO 和H2混合气体的传感器阵列动态响应信号中,随机选取80 组作为训练集,40 组作为测试集.3 种气体的训练集与测试集的比例约为2:1.2 个模型的训练集与测试集的比例均低于传统模型常用4:1 比例[30].

4.2 气体识别模型实验结果及常用方法对比

为了验证本文提出的DWRCNN 气体识别模型的优越性,将其与常用气体识别模型(如K最近邻(K-nearest neighbor,KNN)模型、支持向量机(Support vector machine,SVM)模型、随机森林(Random forests,RF) 模型、朴素贝叶斯(Naive Bayes,NB)模型)和基于深度学习的气体识别模型(如反向传播神经网络(Back propagation neural network,BPNN)模型、卷积神经网络(Convolutional neural networks,CNN)模型[31]、胶囊网络(Capsule network,CapsNet)模型[32])进行对比.其中KNN 模型、SVM 模型、RF 模型、NB 模型、BPNN 模型的输入使用的是气体传感器阵列动态响应信号的稳态值,CNN 模型和CapsNet 模型的输入与DWRCNN 模型相同,是64× 64 像素的小波系数图像.KNN 模型选择15 个最近邻点,选择径向基函数(Radial basis function,RBF) 作为SVM 模型的核函数,RF 模型的最大迭代次数设置为15,BPNN 模型的隐藏层神经元个数设置为100 个.由于气体传感器阵列采集到的信号会受到各种噪声的影响,而小波变换具有抗干扰能力强、非平稳信号特征提取能力强等特点,DWRCNN 模型采用小波变换将原始信号转换成小波系数,能够减轻噪声对气体识别准确率的影响,提高模型的气体识别准确率.不同模型气体识别的混淆矩阵和准确率分别如图10 和表2 所示,常用气体识别模型和BPNN 模型的气体识别准确率难以达到100%.CNN 和CapsNet 模型的气体识别准确率虽然能够接近甚至达到100%,但由图11 可以看出,CNN 和CapsNet 模型的收敛速度远不如DWRCNN 模型,CNN 和CapsNet 模型都需要训练400 轮后才能获得较高气体识别准确率,并且准确率波动较大,而DWRCNN 模型仅需要训练200 轮左右即可获得100%的气体识别准确率,并且准确率波动不大.这表明DWRCNN 模型的收敛速度更快,准确率的稳定性更高.

表2 不同模型的气体识别准确率 (%)Table 2 Gas recognition accuracy of different models (%)

图11 不同模型气体识别的准确率曲线和损失函数曲线Fig.11 Accuracy curve and loss function curve of gas recognition with different models

4.3 气体浓度估计模型实验结果及常用方法对比

为了验证本文提出的WSSA 模型的优越性,将其与常用气体浓度估计模型(如贝叶斯岭(Bayesian ridge,BR)模型、SVM 模型、决策树(Decision tree,DT) 模型、KNN 模型、RF 模型、Adaboost 模型、梯度提升决策树(Gradient boosting decision tree,GBDT)模型、Bagging 模型、XGBoost 模型)和基于深度学习的气体浓度估计模型(如长短期记忆(Long short-term memory,LSTM)模型)进行对比.其中,LSTM 模型和WSSA模型的输入是气体传感器阵列动态响应信号,其他气体浓度估计模型是将气体传感器阵列动态响应信号经过复杂的预处理后作为输入,处理过程可分为3 个步骤: 1)从气体传感器阵列动态响应信号中提取出稳态值,并对稳态值进行归一化;2)使用主成分分析(Principal component analysis,PCA)对归一化后的数据进行降维,降维结果如图12 所示;3)选择第1 个和第2 个主成分值作为模型的输入.RF、Adaboost、GBDT 和XGBoost 模型使用100个决策树,SVM 模型的核函数设置为RBF.LSTM模型有2 个隐藏层,每个隐藏层有600 个神经元.

图12 PCA 降维可视化Fig.12 Visualization of PCA dimensionality reduction

为定量评估各模型的性能,使用平均绝对误差(Mean absolute error,MAE)、均方根误差(Root mean square error,RMSE)、解释方差(Explained variance,EV) 和R2作为模型评估指标.其中,MAE 和RMSE 值越小、EV 和R2值越接近1.000,说明模型的气体浓度估计性能越好.

表3~ 表6 分别给出不同气体浓度估计模型对CO、H2、气体混合物中的CO 和气体混合物中的H2的浓度估计的MAE、RMSE、EV 和R2值.可以看出,对于单一气体浓度估计,WSSA 和LSTM 模型的MAE、RMSE 值都低于常用气体浓度估计模型,EV 和R2值也比常用气体浓度估计模型更加接近1.000,而且WSSA 模型对CO 和H2浓度估计的EV 和R2值都能够达到0.990 以上,而LSTM 模型对CO 和H2的浓度估计的EV 和R2值均小于0.990.对于混合气体中CO 的浓度估计,WSSA 模型的MAE 和RMSE 值都小于10.000,EV 和R2值都能达到0.956;而常用气体浓度估计模型的MAE 和RMSE 值都接近20.000,EV 和R2值约在0.500 左右,远小于1.000;LSTM 模型的MAE 和RMSE 值都略大于10.000,EV 和R2值都接近0.850.对于混合气体中H2的浓度估计,WSSA 模型也取得了更低的MAE、RMSE 值和更接近1.000 的EV、R2值.在常用气体浓度估计模型中,SVM 模型对CO 和H2的浓度估计精度最高,XGBoost 模型对混合气体中CO 的浓度估计精度最高,KNN 模型对混合气体中H2的浓度估计精度最高,所有的常用气体浓度估计模型对混合气体中CO 的浓度估计精度都非常低,这反映了仿生嗅觉感知系统很难实现用一个最优的气体浓度估计模型来估计不同气体浓度,需要统一模型,来减少对不同气体浓度估计的误差.本文提出的WSSA 模型解决了这个问题,它能够同时对不同气体保持较高浓度估计精度,并且仅需要使用较少的标记数据.为了进一步验证本文提出的WSSA 模型对不同气体的浓度估计误差较小,将不同模型的气体浓度估计值和气体浓度的实际值归一化后画出了相应的误差箱式图,图13(a)~ 13(d)分别为不同模型对CO、H2、混合气体中的CO 和混合气体中的H2的浓度估计误差箱式图.可以看出,无论对哪种气体,WSSA 模型的最大误差和误差整体水平在所有模型中都是最小的.

表3 CO 浓度估计指标Table 3 Metrics of CO concentration estimation

表4 H2 浓度估计指标Table 4 Metrics of H2 concentration estimation

表5 混合气体中CO 浓度估计指标Table 5 Metrics of CO concentration estimation in the gas mixture

表6 混合气体中H2 浓度估计指标Table 6 Metrics of H2 concentration estimation in the gas mixture

图13 不同模型的气体浓度估计误差箱式图Fig.13 Error box plots of gas concentration estimation with different models

4.4 自注意力机制对比及权重分配模块消融实验

自注意力模型的各种变体形式往往会以牺牲模型部分性能为代价,来降低模型的计算复杂度.本文使用的自注意力模型利用基于余弦的距离重加权机制,代替了原始自注意力模型中的softmax 重加权机制,为了验证该方法在降低计算复杂度的同时,是否能够保持模型的性能,使用OSA 模型与SA 模型进行对比.由图13 和表3~ 表6 可以看出,对于单一气体,SA 模型与OSA 模型的浓度估计精度相当;对于混合气体,SA 模型的浓度估计精度甚至高于OSA 模型.由此可知,本文使用的自注意力模型能够在降低计算复杂度的同时,保持与原始的自注意力模型相当甚至更高的性能.

为了验证本文提出的权重分配模块的有效性,做了权重分配模块的消融实验,使用不含权重分配模块的SA 模型,与含有权重分配模块的WSSA 模型进行实验对比.两种模型的气体浓度估计散点图如图14 所示,可以看出,无论是混合气体,还是单一气体,WSSA 模型都比SA 模型的浓度估计值与实际值更加吻合.由图13、图14 和表3~ 表6 可以看出,WSSA 模型比SA 模型的气体浓度估计误差更小且精度更高,特别是对于混合气体中CO 的浓度估计.进一步,为了验证权重分配模块对其他基于深度学习的气体浓度估计模型是否也有效,将LSTM 模型与加权重分配模块的权重信号长短期记忆(Weighted signal long short-term memory,WS-LSTM)模型进行实验对比.由图13、图14 和表3~ 表6 可以看出,WS-LSTM 模型比LSTM 模型的气体浓度估计误差更小且精度更高,并且对混合气体中CO 的浓度估计精度有了显著的提高.由以上对比结果可以看出,在基于深度学习的气体浓度估计模型中,加上权重分配模块,可以有效提高模型的气体浓度估计精度.由图14 还可以看出,WSSA 模型对混合气体难以达到与单一气体相近的浓度估计精度,这是由于传感器阵列中每个传感器的测量信号是环境中气体共同作用的结果,当多种气体同时存在时,就会造成气体识别和测量的误差较大.所有模型的气体浓度估计精度都难以达到100%,这是因为实验仪器存在误差、气源浓度存在误差、配气时气体吸附作用、A/D 转换器进行信号转换时的误差和注入气体的时间与速率等都会对采集到的动态响应信号产生影响,从而导致模型的气体浓度估计存在误差.

图14 SA 模型和WSSA 模型的气体浓度估计散点图Fig.14 Scatter plots of gas concentration estimation for SA model and WSSA model

4.5 模型抗外界因素干扰能力实验

由于受到进气口位置和传感器阵列摆放位置等影响,实验所采集到的动态响应信号除了含有气体的种类、浓度等特征外,还会包含一些噪声,所以气体检测模型需要有较强抗外界因素干扰能力.图15(a)为气腔进气口位置示意图,其中A、B、C 为气腔底端的进气口,D 为传感器摆放位置;图15(b)为传感器阵列高度示意图,其中E 为气腔最底部,F 距气腔最底部10 cm,G 距气腔最底部20 cm.为了验证模型的抗外界因素干扰能力,本文改变了气腔进气口位置和传感器阵列在气腔中的摆放高度,并采集相应的动态响应信号进行气体检测,实验结果如表7~ 表11 所示.可以看出,当改变气腔进气口位置或传感器阵列在气腔中的摆放高度时,模型的气体识别准确率仍能够达到100%,气体浓度估计精度仍能够保持较高水平,这表明模型的抗外界因素干扰能力较强.

表7 气体识别准确率 (%)Table 7 Gas recognition accuracy (%)

表8 气腔进气口位置不同时单一气体浓度估计的指标Table 8 Metrics for concentration estimation of single gas with different gas cavity inlet positions

表9 气腔进气口位置不同时混合气体浓度估计的指标Table 9 Metrics for concentration estimation of mixed gases with different gas cavity inlet positions

表10 传感器阵列摆放高度不同时单一气体浓度估计指标Table 10 Metrics for concentration estimation of single gas with different sensor array placement heights

表11 传感器阵列摆放高度不同时混合气体浓度估计指标Table 11 Metrics for concentration estimation of mixed gases with different sensor array placement heights

图15 气腔进气口位置和传感器阵列高度示意图Fig.15 Diagram of gas cavity inlet position and sensor array height

4.6 模型的长期稳定性实验

用气体传感器阵列对气体进行检测时,传感器测量信号中夹杂着漂移干扰,直接影响气体检测的精度.导致传感器漂移的因素有很多,主要包括环境温湿度的改变和气敏材料的老化等,其中,气敏材料的老化对模型的长期稳定性具有较大影响.为了测试模型的长期稳定性,在相同的温度和湿度条件下,进行了3 次重复性信号采集实验,每次信号采集实验时间间隔为30 天.

本文模型的气体检测实验结果如表12~ 表14所示,可以看出,随着时间的增长,模型仍能保持较高气体识别准确率,使用第3 次采集的动态响应信号进行气体识别时,准确率能达到99.29%,但模型的气体浓度估计精度略有降低.总之,气敏元件的老化会在一定程度上影响模型的气体检测性能,但本文模型的气体检测精度仍然较高,表明模型的长期稳定性较高.

表12 本文模型的气体识别准确率 (%)Table 12 Gas recognition accuracy of our model (%)

表13 单一气体浓度估计指标Table 13 Metrics for concentration estimation of single gas

表14 混合气体浓度估计指标Table 14 Metrics for concentration estimation of mixed gases

5 结束语

本文提出一种由DWRCNN 气体识别子模型和WSSA 气体浓度估计子模型组成的气体检测模型.与传统的气体检测模型不同,该模型无需对气体传感器阵列动态响应信号进行处理,直接使用原始动态响应信号进行气体识别和气体浓度估计.该模型使用少量的标签数据训练,就可以获得接近100%的气体识别准确率和较高气体浓度估计精度.

在气体识别任务中,DWRCNN 气体识别模型能将传感器阵列的动态响应信号直接转换成64×64 像素的小波系数图像,进行气体识别.该模型仅训练200 轮左右,就能够达到100%的气体识别准确率并保持稳定;在气体浓度估计实验中,首先,WSSA 气体浓度估计模型通过权重分配模块自动赋予不同传感器获取的动态响应信号不同权重;然后,使用自注意力机制提取权重信号特征;最后,通过全连接模块解码气体浓度值.该模型对单一气体和混合气体都能达到较高浓度估计精度.实验验证了本文提出的权重分配模块同样适用于其他基于深度学习的气体浓度估计模型,能够提高气体浓度估计精度,并且模型的抗外界因素干扰能力较强,长期稳定性较高.

猜你喜欢

准确率气体动态
国内动态
国内动态
国内动态
二维定常Chaplygin气体绕直楔流动
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
非等熵Chaplygin气体测度值解存在性
动态
吃气体,长大个