卷积神经网络的紫外-可见光谱水质分类方法
陈庆1, 汤斌1,2,*, 龙邹荣1,2, 缪俊锋1, 黄子恒1, 戴若辰1, 石胜辉1, 赵明富1, 钟年丙1
1.重庆理工大学光纤传感与光电检测重庆市重点实验室, 重庆 400054
2.重庆大学光电技术及系统教育部重点实验室, 重庆 400044
*通讯作者 e-mail: tangbin@cqut.edu.cn

作者简介: 陈 庆, 女, 1997年生, 重庆理工大学电气与电子工程学院硕士研究生 e-mail: 1412812010@qq.com

摘要

水质污染源的及时精确定位和精细化的污染防治措施是打赢水污染防治攻坚战的迫切需求, 为解决地表水实际水样高锰酸盐指数准确分类的实际问题, 以光谱降噪和光谱有效信息提取为切入点, 根据紫外-可见光谱数据的特点, 提出使用一维卷积神经网络处理紫外-可见光谱数据。 为验证检测一维卷积神经网络对地表水光谱信号分类的可行性, 选取长江的某段流域作为取样点。 采集当天的长江上游水、 某河水、 嘉陵江水, 生活污水、 500 mg·L-1邻苯二甲酸氢钾溶液来模拟污染水源。 将几种水样按不同的配比来模拟当天该流域的水污染变化情况。 采集现有的单一水样及混合配比水样的光谱数据, 根据各类水样的特征光谱信息进行区分, 实现地表水高锰酸盐指数的预测分类, 快速确定异常水样的污染来源, 通过仿真实验, 优化模型参数并完成优化训练。 与K最邻近法、 支持向量机等传统分类方法相比, 该算法在光谱预处理复杂度和定性分析准确度方面有较大优势, 在没有复杂的数据预处理前提下, 将获取的350条光谱数据建立水质分类模型, 随机选择其中245条数据作为训练集, 另105条数据作为测试集, 模型的混淆矩阵分类精度达99.0%。 不仅简化了整个光谱分析流程, 而且能保留更多的有效光谱信息, 减小人为预处理对紫外-可见光谱数据的影响, 实现地表水高锰酸盐指数的准确分类。 实验结果表明该方法可对不同水体水样进行准确分类, 快速定位污染源, 为无法激发荧光的污染物溯源提供了科学依据, 为与三维荧光技术辅助配合快速精确定位地表水污染源提供了可能, 同时表明了深度学习在紫外-可见光谱法测量实际水样领域有着巨大的应用潜力和研究价值。

关键词: 水质; 紫外-可见光谱; 一维卷积神经网络; 分类
中图分类号:O433.4 文献标志码:A
Water Quality Classification Using Convolution Neural Network Based on UV-Vis Spectroscopy
CHEN Qing1, TANG Bin1,2,*, LONG Zou-rong1,2, MIAO Jun-feng1, HUANG Zi-heng1, DAI Ruo-chen1, SHI Sheng-hui1, ZHAO Ming-fu1, ZHONG Nian-bing1
1. Chongqing Key Laboratory of Fiber Optic Sensor and Photodetector, Chongqing University for Technology, Chongqing 400054, China
2. Key Laboratory of Optoelectronic Technology and System, Ministry of Education, Chongqing University, Chongqing 400044, China
*Corresponding author
Abstract

The timely and accurate location of water pollution sources and fine pollution prevention and control measures are the urgent need to win the battle of water pollution prevention and control, in order to solve the practical problem of accurate classification of permanganate index of surface water samples, in this paper, based on spectral noise reduction and spectral effective information extraction, according to the characteristics of UV-visible spectral data, one-dimensional convolution neural network is proposed to process UV-visible spectral data. In order to verify the feasibility of detecting a one-dimensional convolution neural network to classify the spectral signals of surface water, a section of the Yangtze River was selected as the sampling point. The water from the upper reaches of the Yangtze River, a river and the Jialing River were collected on the same day, and domestic sewage and 500 mg·L-1 potassium hydrogen phthalate solution were used to simulate the polluted water source. Several kinds of water samples were used to simulate the basin’s changes in water pollution on the same day according to different proportions. Collect the spectral data of existing single and mixed water samples, and distinguish them according to the characteristic spectral information of all kinds of water samples. Realize the prediction and classification of surface water permanganate index, quickly determine the pollution source of abnormal water samples through simulation experiments, optimize the model parameters and complete the optimization training. Compared with traditional classification methods such as the K nearest neighbor method and support vector machine, this algorithm has great advantages in spectral preprocessing complexity and qualitative analysis accuracy. 350 spectral data obtained are used to establish a water quality classification model, of which 245 data are randomly selected as the training set and 105 data as the test set. The confusion matrix classification accuracy of the model is up to 99.0%. It not only simplifies the whole spectral analysis process but also retains more effective spectral information, reduces the influence of artificial pretreatment on UV-Vis spectral data, and realizes the accurate classification of the permanganate index of surface water. The experimental results show that this method can accurately classify water samples from different water bodies, locate pollution sources quickly, and provide a research basis for tracing the sources of pollutants that can not stimulate fluorescence. It provides the possibility for rapid and accurate location of surface water pollution sources with the aid of three-dimensional fluorescence technology. It shows that depth learning has great application potential and research value in the UV-vis spectroscopy measurement of actual water samples.

Keyword: Water quality; UV-Vis spectrum; One-dimensional convolution neural network; Classification
引言

“ 绿水青山就是金山银山” 。 随着我国全面步入小康社会, 在国家对于水污染防治工作的大力支持下, 水环境状况取得了较大改善, 目前已进入攻坚克难阶段。 污染源的及时精确定位和精细化的污染防治措施是打赢水污染防治攻坚战的迫切需求, 更是生态环境治理体系的大趋势。 目前, 污染溯源主要基于三维荧光的水污染预警溯源技术[1], 通过激发光和发射光光谱信息来获得污染物的指纹图谱, 对物质特征进行识别从而达到污染源预警溯源[2, 3]。 三维荧光技术常用于检测水质溶解有机物(dissolved organic matter, DOM)[4]。 然而, 并不是所有污染物都能被激发出荧光, 但不同的污染物在紫外-可见光谱中都有其特征光谱; 紫外-可见光谱法作为一种环境友好的监测分析方法因为其快速便捷、 低成本、 高灵敏度、 可实现在线监测等特点而被广泛应用在水质监测领域[5]。 因此可将紫外-可见光谱法与三维荧光光谱法辅助配合用于水污染源的精确定位。

用于衡量有机物对水体污染程度指标的化学需氧量(chemical oxygen demand, COD), 分为检测工业废水的化学需氧量(CODcr)和检测地表水的高锰酸盐指数(CODmn)。 众所周知, 光谱信号抗干扰能力较弱, 易受系统噪声和悬浮物散射等噪声的影响, 且存在信息冗余、 多重共线性等不足; 地表水CODmn在线检测分析过程通常较为繁琐。 在建立预测模型之前, 需要将光谱数据进行有效的光谱特征提取和降噪。 大量学者已经展开了相应研究, 提出了使用逐次投影算法、 遗传算法、 粒子群优化算法等多种智能算法融合成新型算法来选取有效特征波长, 为后续的预测模型提高了精度[6, 7]。 侯迪波等提出了非对称最小二乘(asymmetric least squares, ALS), 进行基线校正减弱了光谱基线的漂移[8]。 上述算法均取得了不错的效果, 但这些研究工作大多集中于光谱数据预处理和有效特征波段的筛选, 光谱定性分析方法研究较少。 据此, 亟需一种精确的实时光谱数据定性分析方法, 其关键难点在于简化光谱数据的预处理复杂度的同时保证光谱预测精度。

近年来, 深度学习广泛应用在图像、 音频、 情感识别等分类识别模型中[9]。 卷积神经网络(convolutional neural networks, CNN)作为其核心算法已被用来解决多分类问题、 定性分析问题和数据挖掘问题, 与传统分类方法相比, CNN模型泛化能力强, 抗噪声干扰性能也更强[10]。 陈化洲等设计了浅层卷积神经网络架构来建立评估水污染光谱模型[11]。 余路等提出的自适应一维卷积神经网络(adaptive 1D convolutional neural network, ACNN-FD)算法来检测轴承故障, 故障识别准确率高达99%以上[12]。 综上所述, CNN模型学习和分类能力远超其他传统方法, 且具有广泛的适用性, 因此将其应用在水质紫外-可见光谱定性分析上具有坚实的理论基础和可借鉴性。

基于此, 提出一维卷积神经网络(one-dimensional convolutional neural network, 1D-CNN)和紫外-可见光谱分析结合的方法, 通过采集不同水样的紫外-可见光谱数据, 建立好不同水质分类模拟平台, 使用一维卷积神经网络构建分析模型, 优化模型参数并完成优化训练, 最终得到精确的CODmn分类结果。 在此从光谱信号有效特征提取与降噪两个方面讨论算法的优势和特点。

1 CODmn分类网络
1.1 卷积神经网络

卷积神经网络作为一种深层前馈网络, 常用于处理多个阵列数据, 例如时间序列、 图像和音频频谱图等。 典型的卷积神经网络由卷积层、 池化层和全连接层构成, 各层都有不同的功能。 卷积层通过卷积核使输入向量卷积, 生成特征向量, 同一特征值中的全部单元共享相同的滤波器。 池化层位于卷积层后面, 分为最大池化和平均池化, 对输入的特征信息进行压缩, 简化网络计算复杂度。 光谱信息经过卷积层和最大池化层的运算, 网络模型有效提取原始光谱数据中无法直接获取的局部和全局特征, 并将提取的特征输入全局平均池化层转换为向量, 全连接层用于将输入转换为向量, 并实现分类功能。

卷积神经网络的结构体系主要由两部分组成, 即特征提取器和分类器。 特征提取器通常由若干个卷积层堆叠和一个最大池化层组成, 分类器通常是一个全连接的softmax层。 常用的卷积神经网络有LeNet[13]、 AlexNet[14]、 VGG[15]和GoogleNet[16]等。

1.2 CODmn分类网络搭建

由于VGG16网络具有结构简单、 应用性强和识别率高的特点, 本工作参照经典卷积神经网络VGG16模型进行网络结构的改进和参数优化。 根据紫外-可见光谱数据的特性, 提出了1D-CNN水质定性模型, 对不同水质进行分类。 1D-CNN网络各项参数如表1所示, 由光谱信号为2 068× 1矩阵作为输入, 6个卷积层(Conv1d), 各层卷积核大小为4× 1, 3个最大池化层(MP), 1个全局平均池化层(GAP), 1个输出层(Dense)构成。 每两个卷积层后面接一个最大池化层, 在输出层前接一个全局平均池化层来减小参数量, 对特征信息进行压缩, 减小网络计算复杂度。 为避免过拟合, 提高泛化性能, 在池化层网络后加应用比例为0.3的随机失活(Dropout)。 为了进行水质多分类, 输出层采用多分类softmax结构输出。

表1 1D-CNN网络各项参数 Table 1 Parameters of 1D-CNN network
1.3 CODmn分类网络训练

数据集按比例划分为两个部分, 70%为训练集用于训练神经网络权重神经元, 30%为测试集用于测试已训练后的神经网络性能。 在训练1D-CNN模型过程中, 可以不划分子问题, 直接将其整个网络模型当作一个复杂的函数求全局最优解问题。 如图1所示为反向传播算法来训练CNN网络模型的整体流程。

卷积神经网络的训练和优化依赖于损失函数, 损失函数用来表达预测值和真实值间的误差, 经过反向传播算法将误差从最后一层反向传播到卷积网络的各层并更新各层的权值。 更新后的参数继续参与训练, 循环往复, 在训练过程中将其最小化, 以便衡量当前任务完成的进展。 所以选择合适的损失函数是一件重要的事。 本文属于多分类问题, 因此选用softmax来解决多分类输出, 对CNN模型的训练采用交叉熵损失函数, 其表达式如式(1)所示

J=-i=1Nyilog(pi)(1)

式(1)中, N为种类数量, yi为如果类别是i的标签, 则yi=1, 否则为0, pi为类别为i的神经网络输出概率。

图1 反向传播算法训练1D-CNN模型整体流程Fig.1 The overall process of training the 1D-CNN model with the back-propagation algorithm

损失函数的下降采用Adam优化器, 其学习率设置为0.002, 为了使1D-CNN模型能有序的参数更新和快速收敛, 训练样本被分成多个批次(batch), 其中批处理样本数目(Batchsize)设为30。

实验代码采用python3.7编写, 模型基于Kears框架, 硬件环境CPU型号为11th Gen Intel Core i5-1135G7, 系统环境中配置了Pandas, Numpy, Sckit-learn等Python三方库。

2 实验部分
2.1 水质CODmn检测系统

水质检测系统核心为Ocean Optics生产的Maya2000 pro光谱仪, 如图2所示, 系统主要由氘卤灯光源, 衰减器, 样品支架, 光谱仪及安装了采集控制软件的PC组成, 为避免环境光对测试结果的影响, 保证采集环境一致性, 测量全程都有特制的样品支架进行遮光处理。 经过多次采集和实验, 设置积分时间80 ms, 平均扫描次数为10。

图2 水质CODmn检测系统Fig.2 Water quality CODmn detection system

2.2 样品

如图3为重庆某长江流域取样点的地理方位示意图, 假设A/B1/B2/C/D/E为模拟监测站点, 在A/B1/D点实际取样, C/E点为模拟污染源, 用浓度为500 mg· L-1的邻苯二甲酸氢钾溶液和生活污水模拟实际污染源。

图3 某流域取样点示意图Fig.3 Schematic diagram of sampling points in a watershed

将采集的长江上游水、 某河水、 嘉陵江水、 生活污水、 邻苯二甲酸氢钾的水样来模拟当天流域的情况。 模拟水样与实际水体会存在一定偏差, 通过实地采集样品, 尽可能减小两者间的差距。 用卷积神经网络模型训练需要大量数据, 采用模拟水样不仅可以增加样本数据集, 同时也能增强模型的泛化能力。 将各种水样按一定比例配比用于模拟水域污染源变化情况如表2所示。

表2 水样配比情况 Table 2 Water sample ratio

其中类别0为长江上游水, 类别1为某河水, 类别2为嘉陵江水, 类别3为模拟化学废液的邻苯二甲酸氢钾溶液, 类别4为生活污水, 类别5为某河水和长江交汇处, 类别6为由于生活污水排放而CODmn含量超标的长江下游水, 类别7为由于化学废液排放CODmn含量超标的长江下游水, 类别8为化学废液排放和生活污水排放CODmn含量超标的长江下游水, 类别9为CODmn未超标的长江下游水。 如图4为各类水样原始光谱图, 可以观察到不同水样由于所含物质不同其光谱特征曲线具有明显差异, 而污染源一样的水样具有类似的光谱特征峰, 如类别3, 7和8相似, 类别4, 6和8相似, 类别0和9相似。

图4 不同水样原始光谱图Fig.4 Original spectra of different water samples

3 结果与讨论
3.1 基于1D-CNN的水质定性分类模型

建立的1D-CNN水样分类模型, 能够根据污染物的特征峰对实验水样较为精确的分类, 训练过程中训练集和测试集的损失函数值下降曲线与分类准确率变化曲线如图5所示。

图5 模型的准确率变化曲线和损失函数下降曲线Fig.5 The accuracy change curve and the loss function drop curve of the model

当确定为哪一类水后就能清楚是何种污染物排放超标, 从而缩小监测范围, 准确溯源到污染源。 如图6所示为各类水样分类的混淆矩阵结果, 用测试集的105条光谱数据来做混淆矩阵检测, 可以观察到除了第5类水识别效率不高外, 其他水样准确率达100%。 0— 4类水和6— 9类水都有其各自明显的特征光谱峰, 可以很清晰的将其区分, 第5类水识别准确率仅50%, 与第9类水识别相混淆, 混淆矩阵中分类准确率达99.0%。 因此, 如果在下游监测到CODmn含量超标后可以较为精准的定位污染来源, 为流域的实际污染情况溯源提供依据。

图6 混淆矩阵检测结构Fig.6 Confusion matrix detection structure

3.2 不同分类算法准确性比较

采用K近邻(K-nearest neighbor, KNN)、 支持向量机(support vector machine, SVM(linear) & SVM(rbf))、 一维卷积神经网络(1D-CNN)三种分类方法来对不同水样的光谱数据进行分类处理。 由于光谱的不稳定性和实际水样的复杂性, 利用传统的分类算法需要对光谱数据进行有效的降噪和特征提取。 以原始光谱数据、 PCA降维光谱数据以及经平滑滤波处理后的三种紫外-可见光谱数据为实验对象, 来验证1D-CNN模型对不同水样的定性分析结果。

将以上三种分类算法对各类水样光谱数据分别实验, 并记录分类准确率。 分别利用PCA算法来提取光谱特征信息以及运用Savitzky-Golay滤波器对光谱信号进行平滑滤波处理以减小噪声干扰, 实验结果如表3所示。

表3 不同算法的分类准确率 Table 3 Classification accuracy of different algorithms

表3所示, 通过对以上三种分类算法的准确率比较得出, 1D-CNN模型运用原始光谱数据分类结果最佳, 可达到99.0%, 不同的分类算法经过PCA降维特征提取和SG平滑滤波后准确率都有不同程度的提高。 其中分类算法准确率提升最显著的是经过PCA降维SVM(rbf)分类器, 由74.29%提升至93.33%。

通过以上实验对比, 紫外-可见光谱经过数据降维特征提取和去噪平滑滤波光谱预处理后可以明显提升传统光谱分类算法的分类准确率。 由于CNN模型用于处理大型数据集, 且本身就能够对数据进行特征提取和数据降维, 仅对原始光谱数据进行了去噪平滑, 经过平滑滤波处理后其分类正确率没有太大变化。 因此在训练CNN模型时不需对光谱数据预处理, 直接用原始光谱数据即可。 而用传统光谱分类算法分析光谱, 先应对原始紫外-可见光谱进行降维和降噪预处理。

有效的特征提取和降噪都是紫外-可见光谱预处理的重要步骤, 为了研究预处理步骤对于不同分类算法的影响, 将原始光谱数据以及经过完整光谱预处理的光谱数据进行分析对比。 其结果如表4所示。

表4 不同分类算法准确率对比 Table 4 Accuracy comparison of different classification algorithms

经过完整的降维和去噪光谱预处理步骤后, KNN, SVM(rbf), SVM(linear)模型的分类准确率分别为95.24%, 94.29%和93.33%, 都能对10类不同水样的光谱数据进行准确区分。 而1D-CNN在原始光谱上的分类准确率便达到了99.0%, 表现出了卷积神经网络强大的学习能力和分类能力。

以上的实验结果证明, 传统的紫外-可见光谱分析方法对光谱预处理有着极强的依赖性, 预处理过程比较繁杂且在提取信息时必定会丢失掉一些有效特征信息。 反观1D-CNN模型可利用原始光谱数据进行模型训练和分类, 略过了繁琐的光谱预处理步骤, 在保障分类准确的同时更加方便简洁并节省了时间和计算成本。

4 结论

提出了一种基于卷积神经网络的紫外-可见光谱分类模型, 确定最优结构参数和训练参数, 实现了不同水体水样的分类。 1D-CNN分类模型处理紫外-可见光谱数据与其他传统分类算法相比, 在光谱预处理复杂度和定性分析准确度方面有较大优势, 可以直接将光谱预处理、 特征提取和分类的全过程融为一体, 实现不同水样的分类。 且抗干扰能力也较强, 可适应更复杂的信号和环境。

各类水样的紫外-可见光谱都有其独特的特征峰, 考虑到紫外-可见光谱法原理, 主要污染来源是影响水体溯源的最大因素。 本工作也证实了紫外-可见光谱可快速锁定污染来源, 为不能激发荧光的污染物溯源提供了一定研究依据, 可将紫外-可见光谱法与三维荧光光谱法配合用于水污染源的精确定位。

参考文献
[1] Derrien M, Yang L, Hur J. Water Research, 2017, 112: 58. [本文引用:1]
[2] WANG Xiang, LUO Yan-li, DENG Wen-wen, et al(王翔, 罗艳丽, 邓雯文, ). Chinese Environmental Science(中国环境科学), 2020, 40(11): 4974. [本文引用:1]
[3] FU Guang-wei, CHEN Han, ZHANG Hong-yang, et al(付广伟, 陈翰, 张宏扬, ). Journal of Instrumentation(仪器仪表学报), 2020, 41(12): 192. [本文引用:1]
[4] Li L, Wang Y, Zhang W, et al. Chemical Engineering Journal, 2020, 381: 122676. [本文引用:1]
[5] Yu Q, Yin H, Wang K, et al. Water, 2018, 10(11): 1566. [本文引用:1]
[6] Li Y, Guo Y, Liu C, et al. Food Analytical Methods, 2017, 10(6): 1965. [本文引用:1]
[7] WEI Wen-song, PENG Yan-kun, ZHENG Xiao-chun, et al(魏文松, 彭彦昆, 郑晓春, ). Acta Optica Sinica(光学学报), 2017, 37(11): 382. [本文引用:1]
[8] GUO Bing-bing, HOU Di-bo, JIN Yu, et al(郭冰冰, 侯迪波, 金宇, ). Spectroscopy and Spectral Analysis(光谱学与光谱分析), 2017, 37(5): 1460. [本文引用:1]
[9] Cho H, Yoon S M. Sensors, 2018, 18(4): 1055. [本文引用:1]
[10] Eren L, Ince T, Kiranyaz S. Journal of Signal Processing Systems, 2019, 91(2): 179. [本文引用:1]
[11] Chen H, Chen A, Xu L, et al. Agricultural Water Management, 2020, 240: 106303. [本文引用:1]
[12] QU Jian-ling, YU Lu, YUAN Tao, et al(曲建岭, 余路, 袁涛, ). Journal of Instrumentation(仪器仪表学报), 2018, 39(7): 134. [本文引用:1]
[13] Wu Z, Chen H, Lei Y. Sensors, 2020, 20(15): 4320. [本文引用:1]
[14] He M, Zhao X, Lu Y, et al. Future Generation Computer Systems, 2021, 121: 106. [本文引用:1]
[15] Sengupta A, Ye Y, Wang R, et al. Frontiers in Neuroscience, 2019, 13: 95. [本文引用:1]
[16] Tang P, Wang H, Kwong S. Neurocomputing, 2017, 225: 188. [本文引用:1]