Efficient Water Quality Prediction Using SupervisedMachine Learning使用监督机器学习进行有效的水质预测

该研究通过监督机器学习算法,如梯度增强和多项式回归,预测水质指数(WQI),并使用多层感知器(MLP)进行水质分类。在减少昂贵实验室分析需求的同时,实现了较高的预测准确性和分类效率。

目录

1.文章信息

2.摘要

3.介绍

3.1主要贡献

3.2文献综述

3.3数据处理

4.结果

4.1Accuracy Measures

4.2回归算法结果

 4.3分类算法结果

5.讨论

6.总结与展望


1.文章信息

2019年10月24日收录于MDPI期刊《water》,《water》是一本同行评议的、开放获取的关于水科学与技术的期刊,内容包括水资源的生态学和管理,由MDPI半月刊在线出版。Water与国际洪水管理会议(ICFM)和斯德哥尔摩国际水研究所(SIWI)合作。

关键词:水质预测;监督式机器学习;智能城市;梯度增加;多层感知器

2.摘要

传统上通过昂贵和耗时的实验室和统计分析来估计水质,这使得当代实时监测的概念没有实际意义。本研究探索了一系列监督机器学习算法来估计水质指数(WQI)和水质类(WQC),水质指数是描述水的一般质量的奇异指标,水质类是在WQI的基础上定义的独特类。所提出的方法采用四个输入参数,即温度(temperature)浊度(turbidity)pH总溶解固体(total dissolved solids)。在所有采用的算法中,梯度增强算法(学习率为0.1)和多项式回归算法(程度为2)最有效地预测WQI,平均绝对误差(MAE)分别为1.9642和2.7273。而配置为(3,7)的多层感知器(MLP)对WQC的分类效率最高,准确率为0.8507。所提出的方法使用最少数量的参数达到合理的精度,以验证其在实时水质检测系统中使用的可能性。

3.介绍

3.1主要贡献

  • 首先对可用数据进行分析,以对水质测量进行清洁,归一化和特征选择,从而获得最小相关子集,从而以低成本实现高精度。通过这种方式,在进一步的类似分析中可以避免使用特定传感器进行昂贵而繁琐的实验室分析。
  • 在这里工作的数据集上测试了一系列具有代表性的监督预测(分类和回归)算法。在水质数值分析的背景下,提出了完整的方法。
  • 经过大量实验,结果表明梯度增强和多项式回归对WQI的预测效果最好,平均绝对误差(MAE)分别为1.9642和2.7273,而多层感知器(MLP)对WQC的分类效果最好,准确率为0.8507。

3.2文献综述

通常,研究中使用传统的实验室分析统计分析来帮助确定水质,而一些分析使用机器学习方法来帮助找到水质问题的优化解决方案。

本文探索了在水质领域使用机器学习方法的研究。

  • Shaf等使用经典的机器学习算法,即支持向量机(SVM)、神经网络(NN)、深度神经网络(Deep Neural Networks)和k近邻(kNN)来估计水质,其中深度神经网络的准确率最高,达到93%。估计的水质仅基于三个参数:浊度、温度和pH值;在预测水质时,仅使用三个参数并将其与标准化值进行比较是相当有限的。
  • Ahmad等采用单前馈神经网络多神经网络组合估计WQI。他们使用25个水质参数作为输入。采用反向淘汰和正向选择相结合的选择组合方法,R2和MSE分别为0.9270、0.9390和0.1200、0.1158。考虑到参数传感器的价格,25个参数的使用对于便宜的实时系统价格较贵。
  • Sakizadeh使用16个水质参数和神经网络进行贝叶斯正则化预测WQI。他的研究得出了观测值和预测值之间的相关系数分别为0.94和0.77。
  • Abyaneh使用两种传统的机器学习方法,即人工神经网络多元线性回归,预测了化学需氧量(COD)和生化需氧量(BOD)。他们使用pH、温度、总悬浮固体(TSS)和总悬浮固体(TS)四个参数来预测COD和BOD。
  • Ali和Qamar采用无监督技术的平均连锁(组内)分层聚类方法将样本划分为水质类。然而,他们在学习过程中忽略了与WQI相关的主要参数,也没有使用任何标准化的水质指标来评估他们的预测。
  • Gazzaz等使用人工神经网络预测WQI,其模型几乎可以解释数据中99.5%的变化。他们使用了23个参数来预测WQI,考虑到传感器的价格,如果将其用于物联网系统,结果是相当昂贵的。
  • Rankovic等使用前馈神经网络(FNN)预测溶解氧(DO),使用了10个参数来预测DO。

问题总结:

  • 采用人工实验室分析,没有估计水质指标标准。
  • 使用过多参数,效率不够高。

本文方法:

 Figure 1. Methodology flow.

3.3数据处理

本研究所用数据从PCRWR获得,通过执行箱形图分析进行清理。数据清理后,使用q值归一化对其进行归一化,将其转换为0-100的范围,使用6个可用参数计算WQI。一旦计算出WQI,所有原始值都使用z-score归一化,因此它们在相同的尺度上。

从PCRWR收集的数据集包含2009年至2012年期间从拉瓦尔湖13个不同来源收集的663个样本。每个源共51个样本,12个参数如表1所示。

 箱线图分析和离群值检测

利用箱线图分析进行离群值检测,因为大多数参数变化足够大,并且位于值的高端,箱线图可以根据问题域确定离群值检测阈值。箱线图分析表明,大多数参数位于箱外,认为异常值正常,因此采用上限策略来过滤掉异常值。识别出与其他值非常不同的参数值,并用最大阈值替换。

水质指数(WQI)

水质指数是衡量水质的单一度量。为了常规计算WQI,使用9个水质参数,如果没有全部的水质参数,可以用至少6个定义的参数来估计水质指数。本研究数据集中有5个参数,即粪便大肠菌群,pH值,温度,浊度和总溶解固体,还将亚硝酸盐作为第6个参数,因为在多个WQI研究中,亚硝酸盐在WQI计算中的权重和相对重要性与硝酸盐相等。利用这些参数及其分配的权重,计算出每个样本的WQI,如式(1)所示,其中q_{value}表示0-100范围内的某个参数的值,w_ f因子表示某个参数的权重,如表2所示。WQI的基本计算方法是先将每个参数的q值乘以对应的权值,将它们相加,然后除以所使用参数的权值之和。

水质类

估算出WQI后,使用分类算法中的WQI定义每个样本的水质等级(WQC),如表3所示。

Q值归一化 

采用q值归一化各参数,特别是水质参数,使其在0 ~ 100范围内,便于指数计算。图3显示了6个水质参数的q值图。我们使用它们在0到100的范围内转换了其中的5个参数。对于第六个参数亚硝酸盐,由于无法获得其q值范围,我们使用WHO标准明确地将其转换为0 ~ 100范围,通过设置如下阈值:低于1为100,低于2为80,低于3为50,大于3为0,反映了严格的处罚。一旦这些值被q值归一化,并且在0 ~ 100的范围内,就可以使用(1)来计算数据集的水质指数WQI。

 Z-Score 归一化

原始数据点中减去总体的平均值,并将其除以标准差,得到理想得分在-3和+3之间变化;因此,反映一个点高于或低于平均值多少个标准差,如式(2)所示,其中x代表特定样本的值,µ代表平均值,σ代表标准差。

 数据分析

在所有的数据处理之后,为了进行数据分析,使用了几种机器学习算法,使用最小的参数来预测WQI和WQC。在这之前有一些初步步骤,如相关性分析数据分割,将数据作为实际机器学习算法的输入。

使用Pearson相关。我们对表4中列出的参数的原始值应用Pearson相关性,并在通过q值归一化对这些值进行归一化后应用它,这将在下一节中进行解释。

如表4相关图所示:

  • 碱度(Alk)与硬度(CaCO3)、钙(Ca)高度相关。
  • 硬度与碱度和钙含量高度相关,与pH值相关性较弱。
  • 电导与总溶解固体、氯化物和粪便大肠菌群数量高度相关,与钙和温度相关性较弱。
  • 钙与碱度和硬度高度相关,而与TDS、氯化物、电导率和pH值相关性较弱。
  • TDS与电导、氯化物和粪便大肠菌群高度相关,与钙和温度相关性较弱。
  • 氯化物与电导和TDS高度相关,与温度、钙和粪便大肠菌群相关性较弱。
  • 粪便大肠菌群与电导和TDS相关,与氯化物相关程度较低。

列出相关分析观察结果,发现预测参数WQI与7个参数相关,分别是温度、浊度、pH、CaCO3硬度、电导、总溶解固形物和粪便大肠菌群计数。为了降低系统成本,须选择最小数量的参数来预测WQI。温度浊度pH是三个传感器容易获得、成本最低且对WQI贡献显著的参数,被认为是自然选择的。另一个方便的参数是总溶解固形物(TDS),其传感器也很容易获得,并且与电导和粪便大肠菌群计数相关,这意味着选择TDS将允许放弃其他两个参数。去掉了剩余参数,即CaCO3的硬度,它相对来说相关性不高,也不容易获得。

 数据分割-交叉验证

应用机器学习模型前的最后一步是分割数据以训练模型,用特定部分的数据进行测试,并计算精度度量以建立模型的性能。本研究探讨了交叉验证数据分割技术。

交叉验证将数据分成k个子集,并在所有子集上迭代,将k-1个子集作为训练数据集,1个子集作为测试数据集。这确保了培训和测试中正确和明确数据的有效分割和使用。考虑到迭代,这通常在计算上是昂贵的,但我们的研究使用了一个小数据集,这主要是水质数据集的情况,使得交叉验证更适合这个问题。我们将数据分成k = 6个子集并进行交叉验证。因此,由于完整的训练集由663个样本组成,我们确保每个折叠子集至少有100个样本,包括测试集。

机器学习算法

同时使用回归分类算法。回归算法估计WQI,分类算法将样本分类到先前定义的WQC中。我们使用了8种回归算法和10种分类算法。我们的研究采用了以下算法:

(1)多元线性回归(Multiple Linear Regression)

多元线性回归是线性回归的一种形式,当有多个预测变量在起作用时使用。当有多个输入变量时,我们使用多元线性回归来评估影响输出的每个变量的输入,如式(3)所示,其中y为输出预测值,x为观测值,β为观测值的斜率,\epsilon为误差项。

 (2)多项式回归(Multiple Linear Regression)

当输入和输出变量之间的关系为非线性且有点复杂时,使用多项式回归。我们使用更高阶的变量来捕捉输入和输出变量的关系,这不是线性的。我们用的是2的数量级。使用高阶变量确实存在过拟合的风险,如式(4)所示,其中y是输出预测值,x为观测值,β是拟合值,i是考虑的参数个数,k是多项式方程的阶数,\epsilon _{i}是第i个预测器的误差项或残差。我们用它来处理阶为C的二阶多项式。

(3)随机森林(Random Forest)

随机森林是在给定数据的子集上使用多个基本模型并基于所有模型做出决策的模型。在随机森林中,基本模型是一棵决策树,它具有决策树的所有优点,并具有使用多个模型的额外效率。

(4)梯度增强算法(Gradient Boosting Algorithm)

大多数比赛中使用的最现代算法。它使用一个可加模型,允许可微损失函数的优化。我们使用损失函数'ls', min_samples_split为2,学习率为0.1 。

(5)支持向量机(Support Vector Machines)

支持向量机(svm)主要用于分类,但也可以用于回归。将数据点绘制在平面上,svm定义了类之间的超平面,并扩展了边界,以最大化两个类之间的区别,从而减少了接近错误计算。

(6)岭回归(Ridge Regression)

Ridge回归的工作原理与线性回归相同,它只是增加了一定的偏差来抵消大方差的影响,并取消了对无偏估计量的要求。它对远离零的系数进行惩罚,并最小化残差平方和。

(7)套索回归(Lasso Regression)

套索回归与岭回归的原理相同,唯一的区别是它们如何惩罚它们的系数是关闭的。Lasso惩罚的是绝对误差之和,而不是系数平方和。

(8)弹性网回归(Elastic Net Regression)

弹性网回归结合了岭回归和套索回归的优点。它结合了两种方法的惩罚方法,使损失函数最小化。

(9)神经网络/多层感知器(Neural Net/Multi-Layer Perceptrons,NN/MLP)

神经网络松散地基于神经元的结构。它们包含多个节点相互连接的层。它们包含输入层和输出层,以及介于这两个强制层之间的隐藏层。输入层接收预测参数,输出层显示基于输入的预测。它们迭代每个训练数据点,并通过在每层的每个节点上给出和更新权重来泛化模型。经过训练的模型然后使用这些权重来决定根据输入激活哪些单元。多层感知器(multilayer perceptron, MLP)是神经网络的一种常规模型,主要用于分类,但也可用于回归。我们使用它进行分类,配置为(3,7),使用' lbfgs '求解器运行最多200个epoch。

(10)高斯Naïve贝叶斯(Gaussian Naïve Bayes)

Naïve贝叶斯是一种简单快速的算法,它基于贝叶斯定理的原理,假设一个特征存在的概率与另一个特征存在的概率无关。

(11)逻辑回归(Logistic Regression)

逻辑回归是一种分类算法。它基于logistic函数或sigmoid函数,因此得名。这是在二元分类情况下最常用的算法,但在我们的案例中,我们使用多项逻辑回归,因为有两个以上的类别[28]。我们将其与“warn”解算器和l2惩罚一起使用。

(12)随机梯度下降(Stochastic gradient descent)

该迭代优化算法通过迭代最小化损失函数来寻找全局最优解。在随机梯度下降中,样本选择是随机的。

(13)K近邻(K Nearest Neighbor)

K近邻算法通过找到N个最近邻的给定点进行分类,并为其分配N个近邻中大多数的类。在平局的情况下,可以使用不同的技术来解决它,例如,增加n或增加对一个类别的偏见。对于大型数据集,不建议使用K近邻算法,因为所有的处理都是在测试时进行的,并且每次迭代整个训练数据并计算最近邻算法。我们在模型中使用了n = 5的配置。

(14)决策树(Decision Tree)

决策树是一种简单的自解释算法,可用于分类和回归。决策树经过训练后,根据所有相关输入参数的值做出决策。它使用来选择根变量,并在此基础上查找其他参数的值。它将所有的参数决策以自上而下的树状排列,并根据不同参数的不同值对决策进行投影。

(15)装袋分类器(Bagging Classifier)

bagging分类器在随机的数据子集上拟合多个基本分类器,然后将它们的预测平均以形成最终的预测。它极大地帮助消除了方差。

除了使用(3,7)配置的MLP之外,我们对算法使用默认值。

4.结果

在讨论结果之前,先描述用于评估应用机器学习算法准确性的不同度量。

4.1Accuracy Measures

本研究采用两种监督式机器学习算法,即回归和分类。两种算法产生的结果评价不同。

对于回归:

(1) 平均绝对误差(Mean Absolute Error ,MAE)

平均绝对误差(MAE)是对回归精度的一种度量。它将误差的绝对值相加,然后除以误差的总数。它给每个错误值赋予相同的权重。MAE的计算公式如式(5)所示,其中x_{obs}为实际值,x_{pred}为预测值,n为考虑的样本总数。

(2)均方误差(Mean Square Error ,MSE) 

均方误差(MSE)是误差的平方和除以预测值的总数。这给较大的错误赋予了更大的权重。这在需要对较大的错误使用较大权重的问题中特别有用。由式(6)测量,其中x_{obs}为实际值,x_{pred}为预测值,n为考虑的样本总数。

(3)均方根误差(Root Mean Squared Error ,RMSE) 

均方根误差(RMSE)就是均方误差(MSE)的平方根,它将MSE的值缩放到接近观测值的范围。由式(7)估计,其中x_{obs}为实际值,x_{pred}为预测值,n为考虑的样本总数。

 (4)R平方误差(R Squared Error ,RSE)

R平方误差(RSE)又称决定系数,常记为R^{2},它决定了模型的拟合优度。它特别说明了因变量可以通过自变量解释的方差量,如式(8)所示。较高的RSE值意味着自变量在很大程度上解释了因变量的方差。

 对于分类:

(1)准确度(Accuracy)

准确度是模型在所有观测值上做出的正确预测率。准确度由式(9)测量,其中TP为真阳性,TN为真阴性,FP为假阳性,FN为假阴性。

所有的分类中,正确的几率。

 (2)精确度(Precision)

精确度是特定正类的正确分类实例占该类总分类实例的比例。精度计算公式如式(10)所示,其中TP为真阳性,FP为假阳性。

 (3)召回率(Recall)

召回率是实际正确分类的特定正类实例的比例。召回率的计算公式如式(11)所示,其中TP为真阳性,FN为假阴性(即本为阳性)。

 (4)F1分数

由于精确率和召回率不能单独涵盖准确率的所有方面,我们取它们的调和平均值来反映F1分数,如式(12)所示,它涵盖了两个方面,更能反映整体的准确率度量。取值范围为0 ~ 1。分数越高,准确率越高

4.2回归算法结果

水质参数传感器价格昂贵,本研究使用最少数量参数和便宜传感器预测水质。最初,使用4个参数,即温度、浊度、pH和总溶解固形物。

在使用回归算法时,梯度增强效果最佳,MAE为1.9642,MSE为7.2011,RMSE为2.6835,RSE为0.7485,如表5所示。

 然后尝试减少参数,首先减少总溶解固体(较难获得)。结果显示多项式回归效果最佳,MAE为2.7273,MSE为12.7307,RMSE为3.5680,而线性回归和梯度增强的RSE值最好,分别为0.5384和0.5051,如表6所示。总体错误率有所增加,但增加幅度并不高,考虑到成本,在限制范围内仍然表现良好。 

 4.3分类算法结果

利用分类算法预测水质等级(WQC),并根据预先计算的WQI为样本分配水质等级。与前一节相同的参数也用于分类。最初,考虑了相同的4个参数。发现在这种设置下,MLP的表现优于其他算法,准确率为0.8507,精密度为0.5659,召回率为0.5640,F1得分为0.5649,见表7。

 对研究结果进行迭代,并确定梯度增强和多项式回归在预测WQI方面表现更好,而MLP在预测WQC方面表现更好。

5.讨论

水质通常是用水质参数计算,这些参数通常通过耗时的实验室分析获得。本研究探索了机器学习的替代方法来估计它。使用10多个水质参数来预测WQI。Ahmad等使用了25个输入参数,Sakizadeh使用了16个参数,Gazzaz等在他们的方法中使用了23个输入参数,Rankovic等使用了10个输入参数,这不适用于廉价的实时系统。本方法仅使用4个水质参数(温度、浊度、pH总溶解固形物TDS)来预测WQI, MAE为1.96,预测水质等级的准确率为85%。本研究结果为廉价的实时水质检测系统奠定了基础,而其他研究虽然使用了机器学习,但使用了太多的参数,无法纳入实时系统。

6.总结与展望

传统上测试水质须通过昂贵而繁琐的实验室分析。本研究探索了一种机器学习的替代方法,使用最小且容易获得的水质参数来预测水质。用于进行这项研究的数据是从PCRWR获得的,其中包含来自巴基斯坦拉瓦尔湖12个不同来源的663个样本。采用一组具有代表性的有监督机器学习算法来估计WQI。这表明,二阶多项式回归和学习率为0.1的梯度增强在预测WQI方面优于其他回归算法,而配置为(3,7)的MLP在预测WQC方面优于其他分类算法。

在未来的工作中,建议将这项研究的结果整合到一个大规模的基于物联网的在线监测系统中,只使用所需参数的传感器。经过测试的算法将根据物联网系统提供的实时数据立即预测水质。提出的物联网系统将采用pH、浊度、温度TDS参数传感器进行参数读数,并使用Arduino微控制器和ZigBee收发器传输这些读数。它将在水质差的水被释放供消费者使用之前识别出来,并向有关当局发出警报。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鹿港小小镇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值