掌桥专利:专业的专利平台
掌桥专利
首页

一种基于蜜蜂算法优化LSTM的水质分类预测方法

文献发布时间:2024-04-18 19:58:21


一种基于蜜蜂算法优化LSTM的水质分类预测方法

技术领域

本专利涉及计算机科学和环境科学领域,具体涉及一种在水质参数预测方面的方法,通过引入蜜蜂算法优化LSTM模型的参数,将蜜蜂算法和LSTM模型结合用于水质参数预测以提高准确性和稳定性,为其预测提供一种方法。

背景技术

水质预测是环境监测和水资源管理的重要任务。长期以来,传统的预测方法主要依赖于统计模型和机器学习算法。然而,这些方法在处理非线性、非平稳和高维数据时存在一定的局限性。近年来,深度学习技术中的长短期记忆(LSTM)模型在时间序列预测领域取得了显著的成果。LSTM模型是一种循环神经网络(RNN)的变体,专门用于处理具有长期依赖关系的序列数据。与传统的RNN相比,LSTM引入了三个关键的门控机制(输入门、遗忘门和输出门),以有效地捕捉和记忆序列中的重要信息。然而,LSTM模型在应对大规模数据和复杂优化问题时的性能仍然有待改进。

蜜蜂算法是一种仿生优化算法,灵感来自蜜蜂觅食行为。它模拟了蜜蜂在搜索食物过程中的行为和信息交流机制。蜜蜂算法具有全局搜索能力和较强的收敛性,被广泛应用于解决复杂优化问题。在搜索食物的过程中,蜜蜂群首先派出侦察蜂搜索,其不断地从一个食物源飞往另一个食物源,搜索所有可能的食物源。当这些蜜蜂返回时,它们会表演一种摇摆舞,该舞蹈是蜜蜂群相互交流的工具,用于表示所发现的食物源的方位、质量等。侦察蜂带领对应的跟随蜂回到食物源进行采蜜。质量高的食物源将吸引更多的跟随蜂采蜜,因此,这就提高了生产的蜂蜜的质量和数量。

蜜蜂算法能够帮助LSTM模型在参数空间中快速搜索最优解,避免陷入局部最优解。通过将蜜蜂算法与LSTM模型相结合,可以提高模型在水质预测任务中的性能和准确性,同时减少参数优化的时间和计算成本。

发明内容

本发明提出了一种基于蜜蜂算法优化LSTM的水质分类预测方法。蜜蜂算法是一种仿生优化算法,模拟了蜜蜂觅食过程中的搜索行为和信息交流机制。在本发明中,将蜜蜂算法引入LSTM模型的参数优化过程中,具体为通过在训练过程中调整LSTM模型的epochs和units参数以提升模型的预测准确性、泛化能力和减少模型训练时间。

本发明的具体实施方式包括以下步骤:

S1.收集水质监测数据:收集包括指标如(溶解氧、pH值、电导率、浊度和氨氮等)的水质监测数据,建立水质数据库;

S2.初始化LSTM模型:根据水质监测数据,设计并初始化基于LSTM的预测模型。模型的输入为历史水质数据,输出为未来时间段内的水质预测结果;

S3.对输入的水质数据集的大小进行判定,若为大型公共数据集,则选择随机初始化蜜蜂算法中蜜蜂种群数量、精英蜜蜂等参数,如判定为小型数据集,则转步骤5;

S4.如S3所示,判断为大数据集是,具体优化为利用蜜蜂算法对LSTM模型进行优化,并主要搜寻LSTM训练所需的epochs和units参数的最佳值以提高模型准确度。通过不断迭代更新,搜索到更优的参数组合,提高LSTM模型的性能,具体如下所示;

·随机生成n只蜜蜂作为初始群体,n代表n种不同结构LSTM网络;

·每一只蜜蜂位置可以用一个C维向量表示,具体为X=[x

·选择m只适应度较好的侦察蜂(Good bees)来实施局部搜索,利用找到的解决方案来达到最优,优选出适应度最好的e只蜜蜂(精英蜜蜂),并各自招募nep只蜜蜂,帮助它们在其附近找到更好的解决方案。而nsp只蜜蜂则被招募到其余优秀蜜蜂的邻域进行搜索。一般来说,nep应该大于nsp。群体中剩余的蜜蜂实施全局搜索,探索所有可用的解决方案。重复上述步骤,局部搜索和全局搜索重复进行,直到达到蜜蜂算法的最大迭代次数或收敛。

S5.正如S3所示,若输入的为小型水质数据集,则进行S6~S8步骤;

S6.获取和输入的小型水质数据集类似的国内外公布的大型数据,使用公共数据集进行预训练,具体为对LSTM模型进行预训练并学习到一般的水质特征和模式;

S7.如S3所示,在该发明中,针对小型水域数据集较少的问题,同样使用蜜蜂算法对其进行优化,并同时使用公式(1)和(2)对算法参数进行初始化。具体为对于m只(m

在招募nsp只采集蜂进行邻域搜索时,nsp的值由以下公式进行获取:

nsp=round(nep*uniform(0,1)) (2)

S8.模型微调:将预训练的LSTM模型应用于小型水域数据集,并进行模型微调,使用小型水域数据集对模型进一步训练,以适应特定水域的水质特征和变化,由于数据有限,保留预训练模型的某些层的参数,便于利用预训练模型在大型数据集上学到的通用特征,提高对小型水域数据集的适应性;

S9.使用以下指标评价LSTM模型的训练效果;

如上所示,S9中的指标理解如下所示。

TP(真阳性):表示模型正确地将水质样本判定为正常(或良好)的数量。具体而言,它是真实正常水质样本中被模型正确识别为正常的数量。

TN(真阴性):表示模型正确地将水质样本判定为污染(或不良)的数量。具体而言,它是真实污染水质样本中被模型正确识别为污染的数量。

FP(假阳性):表示模型将实际上是污染(或不良)的水质样本错误地判定为正常的数量。具体而言,它是真实污染水质样本中被模型错误地识别为正常的数量。

FN(假阴性):表示模型将实际上是正常(或良好)的水质样本错误地判定为污染的数量。具体而言,它是真实正常水质样本中被模型错误地识别为污染的数量。

公式(3)到公式(6)的解释如下所示。

精确率(Precision):精确率是指在模型预测为正类的样本中,真正为正类的样本数量与预测为正类的样本数量之比。它衡量的是模型在预测为正类的样本中的准确程度,即预测为正类的样本中有多少是真正的正类样本。精确率高表示模型的正类预测结果较可靠。

召回率(Recall):召回率是指在所有真实正类样本中,被模型正确预测为正类的样本数量与真实正类样本数量之比。它衡量的是模型对于正类样本的识别能力,即有多少真实正类样本被模型正确地预测为正类。召回率高表示模型对于正类样本的识别能力较强。

F1值:F1值是精确率和召回率的调和平均值,它综合考虑了模型的准确性和识别能力。F1值可以通过以下公式计算:F1=2*(精确率*召回率)/(精确率+召回率)。F1值越接近1,表示模型的综合性能越好。

准确率(Accuracy):准确率是指模型预测正确的样本数量与总样本数量之比。它用于衡量模型对水质样本整体分类的准确性。较高的准确率意味着模型在整体上对水质分类任务的预测效果较好。

S10.最后,针对输入的任何数据集,都进行LSTM模型验证:将数据集划分为训练集和验证集,使用LSTM模型对一部分水质数据进行训练和验证,并计算预测误差。使用模型在验证集取得的准确度作为评价值,并计算每只蜜蜂的对应的准确度值排序,使用uniform()方法随机生成初始的epochs和units参数值,如下所示,公式(7)表示在最小epochs(epoch

epoch=round(uniform(epoch

unit=round(uniform(unit

算法的完整伪代码如下所示。

综合以上步骤,以提高模型对小型水域数据集的水质预测能力,使模型更加准确地进行特定水域水质分类。

附图说明

图1一种基于蜜蜂算法优化LSTM的水质分类方法流程图;

图2指标的箱线图;

图3水质指标热力图;

图4一种基于蜜蜂算法优化LSTM结合数据迁移的水质分类方法流程图。

具体实施方式

本部分将结合附图对其中涉及到的一些内容进行详细描述以更好地说明目的和技术方案。

实施例1:

本实施例提供一种基于蜜蜂算法优化LSTM的水质分类预测方法,方法流程如图1所示,所述方法包括:

步骤1:收集公共水质监测数据,其水质指标主要包括pH值、电导率、总溶解固体、氯胺含量、硫酸盐溶解量和浊度等,使用该数据对LSTM进行训练,数据的详细信息图如附图2,3所示;

步骤2:进行数据预处理与训练集和测试集划分,其中数据预处理包括缺失值处理、异常数据分析和数据归一化,进行数据归一化操作如下所示,其中X

步骤3:根据水质监测数据,设计并初始化基于LSTM的预测模型,模型的输入为历史水质数据,输出为未来时间段内的水质分类预测结果;

步骤4:蜜蜂算法参数初始化,具体为将蜜蜂种群数量设置为15,good bees的数量为7,需要优化的lstm超参数个数为2,具体为epochs和units,nep蜜蜂的数量为4,nsp蜜蜂的数量为2,搜索邻域(ngh)的大小的值为1等,其中参数已经在发明部分解释;

步骤5:正如步骤4所述,初始蜜蜂算法后,基于上述公共水质样本数据对LSTM模型的epochs和units进行优化。通过不断迭代和更新以搜索到更优的参数组合,提高LSTM模型的性能;

步骤5:使用优化后的LSTM模型进行水质预测,输入历史水质数据并输出未来一段时间内的水质指标预测结果。将预测结果与实际监测数据进行比较和评估,计算预测误差、相关系数等指标,以评估模型的性能和准确性。同时将训练得到的较好的模型保存下来,可用于后续采集的水质数据的指标测量。

实施例2:

针对小数据集问题,使用一种基于蜜蜂算法优化LSTM结合数据迁移的水质分类预测方法,方法的具体流程图如附图4所示。

步骤1:公共数据集预训练,选择一个与小型水域具有相似特征的公共水质数据集,例如中国国家统计局收集的一段时间内的漓江大型湖泊或河流的监测数据集。使用这个公共数据集对LSTM模型进行预训练。通过在预训练数据集上训练模型,使其学习到一般的水质特征和模式;

步骤2:小型数据集合的获取,例如某环保公司在漓江区段某就近支流水域得到的数据,对该数据进行数据预处理;

步骤3:模型微调,将预训练的LSTM模型应用于小型水域数据集,并进行模型微调。在微调过程中,使用小型水域数据集对模型进行进一步训练,以适应特定水域的水质特征和变化;

步骤4:LSTM模型评估和调整:使用微调的模型对小型水域数据集进行水质预测,并评估模型的性能和准确性;

步骤5:为方便进行效果对比,使用蜜蜂算法优化微调后的LSTM模型的epochs和units超参数,以进一步调整模型的参数以尝试获得更好的分类预测效果;

步骤6:在这个过程中,相关参数的设定如下所示;

步骤7:将蜜蜂种群数量设置为20,good bees的数量为m,需要优化的lstm超参数个数为2,具体为epochs和units,nep蜜蜂的数量为6,nsp蜜蜂的数量通过公式(8)求解,搜索邻域(ngh)的大小的值为1,其中对于参数nep和nsp已经在发明部分解释,总共对于m只(m

步骤8:在某次测验中,n的值为20,概率大于0.5,x的值取为10,可对应求得m的值为9,使用该公式可以按照不同的概率生成对应范围good bees的值。

步骤9:在招募nsp只采集蜂进行邻域搜索时,nsp的值由以下公式进行获取:

nsp=round(nep*uniform(0,1)) (11)

在某次测验中,uniform()随机函数生成的值为0.44。根据公式(11),最后得到的nsp蜜蜂的数量为3,将以上生成的参数用于蜜蜂算法并用于LSTM优化;

步骤10:将蜜蜂算法与LSTM模型相结合,构建训练集和测试集以得到所述的LSTM水质分类模型,并为环境监测和水资源管理提供支持。

相关技术
  • 基于改进遗传算法优化LSTM神经网络的水质预测方法
  • 基于改进遗传算法优化LSTM神经网络的水质预测方法
技术分类

06120116479423