CN117892162A - 一种基于非负矩阵分解和机器学习的流域径流预报方法 - Google Patents

一种基于非负矩阵分解和机器学习的流域径流预报方法 Download PDF

Info

Publication number
CN117892162A
CN117892162A CN202410076588.2A CN202410076588A CN117892162A CN 117892162 A CN117892162 A CN 117892162A CN 202410076588 A CN202410076588 A CN 202410076588A CN 117892162 A CN117892162 A CN 117892162A
Authority
CN
China
Prior art keywords
matrix
negative matrix
data
machine learning
runoff
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410076588.2A
Other languages
English (en)
Inventor
黄昌硕
颜冰
徐小婷
侯方玲
莫李娟
杨军飞
丛培月
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Hydraulic Research Institute of National Energy Administration Ministry of Transport Ministry of Water Resources
Original Assignee
Nanjing Hydraulic Research Institute of National Energy Administration Ministry of Transport Ministry of Water Resources
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Hydraulic Research Institute of National Energy Administration Ministry of Transport Ministry of Water Resources filed Critical Nanjing Hydraulic Research Institute of National Energy Administration Ministry of Transport Ministry of Water Resources
Priority to CN202410076588.2A priority Critical patent/CN117892162A/zh
Publication of CN117892162A publication Critical patent/CN117892162A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于非负矩阵分解和机器学习的流域径流预报方法,包括:采集流域历史水文数据,并计算所述历史水文数据之间的相关性,通过计算结果筛选输入数据集;对输入数据集进行非负矩阵分解,提取历史水文数据的特征因子集合,获得聚类矩阵;将聚类矩阵作为机器学习模型的输入数据,输出对应径流预测结果。本发明通过非负矩阵分解提取历史水文数据的特征因子并完成聚类,有效减少噪声数据,降低数据维度,增强了机器学习模型的预测能力和稳定性。

Description

一种基于非负矩阵分解和机器学习的流域径流预报方法
技术领域
本发明涉及流域水文模型技术领域,尤其涉及一种基于非负矩阵分解和机器学习的流域径流预报方法。
背景技术
径流预报是水文学中的重要研究内容,对于水资源管理、防洪减灾等方面具有重要意义。传统的径流预报方法主要基于统计学方法,如回归分析、时间序列分析等,这些方法在一定程度上能够反映历史数据的规律,但是对于复杂的水文气象系统,其预测精度和稳定性有限。近年来,随着机器学习技术的发展,越来越多的学者开始将机器学习方法应用于径流预报中,如支持向量机、神经网络等,这些方法能够更好地反映水文气象系统的非线性特征,提高径流预报的精度和稳定性。
然而,机器学习方法在径流预报中也存在一些问题。首先,机器学习方法的预测结果缺乏物理可解释性,难以解释预测结果的形成过程,例如在一些筛选径流预报特征因子的方法中,筛选出的部分特征因子为负值,这明显违反了径流形成的物理规律。其次,机器学习方法需要大量的数据进行训练,而水文气象数据的获取和处理比较困难,数据量有限。最后,机器学习方法对于噪声数据比较敏感,噪声数据会影响模型的预测精度。
因此,需要一种能够提高机器学习模型径流预报的可解释性,减少数据维度,过滤噪声数据,提高径流预报精度的方法。
发明内容
本发明的目的在于提供一种基于非负矩阵分解和机器学习的流域径流预报方法,该方法计算过程和结果更符合径流的物理规律,增强了径流预报的可解释性,使得预测结果更易于理解和解释;同时,该方法通过非负矩阵分解和聚类过程有效减少噪声数据,降低数据维度,提高机器学习模型径流预报的精度和效率。
为实现上述目的,本发明提供了一种基于非负矩阵分解和机器学习的流域径流预报方法,包括:
采集流域历史水文数据,并计算所述历史水文数据之间的相关性,通过计算结果筛选输入数据集;
对所述输入数据集进行非负矩阵分解,提取历史水文数据的特征因子集合,获得聚类矩阵;
将所述聚类矩阵作为机器学习模型的输入数据,输出对应径流预测结果。
优选地,所述历史水文数据包括:
径流、降水、潜在蒸散发、土壤湿度、气温、积雪覆盖和积雪深度。
优选地,通过计算结果筛选所述输入数据集,包括:
基于皮尔逊系数法计算不同潜在因子与径流数据之间的相关性,在相关性较高的一组变量中,选择一个变量与其它相关性不强的变量拼接,作为非负矩阵分解的输入变量集合,即所述输入数据集;其中,当皮尔逊系数绝对值高于预设阈值时,判定所述相关性较高。
优选地,基于所述皮尔逊系数法计算所述各变量之间的相关性的方法为:
式中,r表示变量M和N之间的皮尔逊相关系数,cov(M,N)表示变量M和N的协方差,σM表示变量M的标准差,σN表示变量N的标准差。
优选地,对所述输入数据集进行非负矩阵分解,包括:
将历史水文数据矩阵随机分解为非负矩阵一和非负矩阵二,使历史水文数据矩阵近似等于所述非负矩阵一和所述非负矩阵二的乘积;
基于所述历史水文数据矩阵更新所述非负矩阵一和所述非负矩阵二,直至满足收敛条件,其中,所述历史水文数据矩阵即径流数据与历史水文数据拼接合并后的矩阵。
优选地,更新所述非负矩阵一和所述非负矩阵二,包括:
通过计算所述数据集与非负矩阵一、非负矩阵二的乘积之间的差异更新所述非负矩阵一和所述非负矩阵二,进行所述更新的方法为基于梯度下降法最小化误差函数;
其中,矩阵更新公式为:
式中,W为非负矩阵一,H为非负矩阵二,E为误差函数,α为学习率。
优选地,获得所述聚类矩阵,包括:
根据更新后的所述非负矩阵一和所述非负矩阵二,将矩阵中的每个样本分配到其对应的最大值所在的列所代表的聚类中,构成所述聚类矩阵;
计算每个聚类的质量指标,通过比较不同聚类数量下的聚类质量指标,确定最优的聚类数量,并将历史水文数据按照最优聚类数量进行分组,输出所述聚类矩阵。
优选地,输出所述对应径流预测结果,包括:
根据经验给定合理的模型参数范围和训练器与验证期,通过机器学习模型对每一组参数进行径流预测,最终模型自动率定输出验证期精度最优的一组参数和径流预测结果。
优选地,计算所述径流预测结果的方法为:
其中,QF表示预测的径流量,f表示激活函数,xj表示输入的第j个特征值,ωj表示第j个特征对应的权重,b表示偏置项,k为聚类中心的数量。
与现有技术相比,本发明具有如下优点和技术效果:
本发明在非负矩阵分解方法中,无论是分解矩阵,还是所得到的聚类矩阵,在整个过程中都是非负的,更符合径流形成过程规律,增强了径流预报的物理可解释性;
本发明通过非负矩阵分解提取历史水文数据的特征因子并完成聚类,有效减少噪声数据,降低数据维度,增强了机器学习模型的预测能力和稳定性。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例的一种基于非负矩阵分解和机器学习的流域径流预报方法流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明提出了一种基于非负矩阵分解和机器学习的流域径流预报方法,本发明根据历史水文数据,进行非负矩阵分解,随机生成一个混合矩阵和一个信号矩阵,通过重构差异不断更新两个矩阵,将最终更新后的信号矩阵与径流数据拼接,输入机器学习模型实现流域径流的模拟和预测。如图1所示,本发明的技术方案具体包括以下步骤:
步骤1,采集历史水文数据,其中包括径流、降水、潜在蒸散发、土壤湿度、气温、积雪覆盖和积雪深度,并通过皮尔逊相关系数法计算各变量之间的相关性,保留相关性不强的输入数据集合X:
为了更好地了解流域的水文气象情况,需要采集历史数据,其中包括径流、降水和潜在蒸散发等多个指标。通过采集这些数据,可以更好地了解流域的水文气象特征,然后采用皮尔逊相关系数法,计算不同潜在影响因子与径流数据之间的相关性,在皮尔逊系数绝对值高于0.7时,认为潜在影响因子与径流数据有较高的相关性,将相关性较高的影响因子拼接,作为非负矩阵分解的输入变量集合。皮尔逊相关系数计算公式如下:
式中,r表示变量M和N之间的皮尔逊相关系数,cov(M,N)表示变量M和N的协方差,σM表示变量M的标准差,σN表示变量N的标准差。
步骤2,针对步骤1保留的数据集合X,对其进行非负矩阵分解,提取历史水文数据的特征因子集合W’。
具体操作过程包括:
(1)将历史水文数据随机生成一个非负矩阵W和一个非负矩阵H,使得历史水文数据矩阵近似等于两个非负矩阵W和H的乘积,用公式表示如下:
式中,X为输入的历史水文数据矩阵,其大小为m*n,W表示样本的特征矩阵,其大小为m*k;H表示特征的权重矩阵,其大小为k*n,m为样本数,n为特征数,k为聚类中心的数量。
(2)通过X与W×H之间的差异来更新W和H,直到X与W×H之间误差函数满足收敛条件为止;
对矩阵W和H进行更新主要分为两个过程,第一个过程为更新H,固定W,通过最小化误差函数来更新H;第二个过程为更新W,固定H,两个过程都采用梯度下降法最小化误差函数来更新。重复这两个过程,直到误差函数达到收敛(或达到最大迭代次数)。误差函数公式和矩阵更新公式如下:
E=||X-WH||2 (3)
式中,E为误差函数,‖.‖为Frobenius范数,а为学习率。
(3)根据更新后的W、H矩阵,将每个样本分配到其对应的最大值所在的列所代表的聚类中,构成聚类矩阵,即特征因子集合W’:
聚类过程中,需要计算每个聚类的质量指标,例如轮廓系数,Davies-Bouldin指数等,通过比较不同聚类数量下的聚类质量指标,确定最优的聚类数量,并将历史水文数据按照最优聚类数量进行分组,输出聚类结果。
轮廓系数计算公式如下:
式中,i表示第i个数据点,Si为轮廓系数,ai表示第i个数据点与同一聚类中其他数据点的平均距离,bi表示第i个数据点与其他聚类中所有数据点的平均距离的最小值,Si的取值范围为[-1,1],Si越接近1,表示数据点i所属的聚类越合理,反之越不合理。
步骤3,将步骤2第(3)步中得到的聚类矩阵W’作为机器学习模型(例如卷积神经网络)的输入数据,给定机器学习模型参数范围,并自动率定最优参数,输出对应径流预测结果:
通过聚类矩阵W’有效降低数据维度,简化机器学习模型的数据处理难度及参数设置。以7:3的比例将机器学习模型的输入数据分为训练期与验证期,采用贝叶斯优化算法,对机器学习模型超参数进行优化。
最终,模型选择最优的一组超参数进行径流预测。以神经网络为例,其计算公式可表示为:
式中,QF表示预测的径流量,f表示激活函数,xj表示输入的第j个特征值,ωj表示第j个特征对应的权重,b表示偏置项。
现有技术一般在特征因子提取时,所筛选出来的特征因子并不是非负的(例如主成分分析),而本发明在非负矩阵分解方法中,无论是分解矩阵,还是所得到的聚类矩阵,在整个过程中都是非负的,更符合径流形成过程规律,增强了径流预报的物理可解释性。
现有技术一般直接采用物理水文模型或机器学习模型进行径流模拟和预测,而本发明通过非负矩阵分解提取历史水文数据的特征因子并完成聚类,有效减少噪声数据,降低数据维度,增强了机器学习模型的预测能力和稳定性。
以上,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (9)

1.一种基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,包括:
采集流域历史水文数据,并计算所述历史水文数据之间的相关性,通过计算结果筛选输入数据集;
对所述输入数据集进行非负矩阵分解,提取历史水文数据的特征因子集合,获得聚类矩阵;
将所述聚类矩阵作为机器学习模型的输入数据,输出对应径流预测结果。
2.根据权利要求1所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,所述历史水文数据包括:
径流、降水、潜在蒸散发、土壤湿度、气温、积雪覆盖和积雪深度。
3.根据权利要求1所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,通过计算结果筛选所述输入数据集,包括:
基于皮尔逊系数法计算不同潜在因子与径流数据之间的相关性,在相关性较高的一组变量中,选择一个变量与其它相关性不强的变量拼接,作为非负矩阵分解的输入变量集合,即所述输入数据集;其中,当皮尔逊系数绝对值高于预设阈值时,判定所述相关性较高。
4.根据权利要求3所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,基于所述皮尔逊系数法计算所述各变量之间的相关性的方法为:
式中,r表示变量M和N之间的皮尔逊相关系数,cov(M,N)表示变量M和N的协方差,σM表示变量M的标准差,σN表示变量N的标准差。
5.根据权利要求1所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,对所述输入数据集进行非负矩阵分解,包括:
将历史水文数据矩阵随机分解为非负矩阵一和非负矩阵二,使历史水文数据矩阵近似等于所述非负矩阵一和所述非负矩阵二的乘积;
基于所述历史水文数据矩阵更新所述非负矩阵一和所述非负矩阵二,直至满足收敛条件,其中,所述历史水文数据矩阵即径流数据与历史水文数据拼接合并后的矩阵。
6.根据权利要求5所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,更新所述非负矩阵一和所述非负矩阵二,包括:
通过计算所述数据集与非负矩阵一、非负矩阵二的乘积之间的差异更新所述非负矩阵一和所述非负矩阵二,进行所述更新的方法为基于梯度下降法最小化误差函数;
其中,矩阵更新公式为:
式中,W为非负矩阵一,H为非负矩阵二,E为误差函数,α为学习率。
7.根据权利要求6所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,获得所述聚类矩阵,包括:
根据更新后的所述非负矩阵一和所述非负矩阵二,将矩阵中的每个样本分配到其对应的最大值所在的列所代表的聚类中,构成所述聚类矩阵;
计算每个聚类的质量指标,通过比较不同聚类数量下的聚类质量指标,确定最优的聚类数量,并将历史水文数据按照最优聚类数量进行分组,输出所述聚类矩阵。
8.根据权利要求1所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,输出所述对应径流预测结果,包括:
根据经验给定合理的模型参数范围和训练器与验证期,通过机器学习模型对每一组参数进行径流预测,最终模型自动率定输出验证期精度最优的一组参数和径流预测结果。
9.根据权利要求8所述的基于非负矩阵分解和机器学习的流域径流预报方法,其特征在于,计算所述径流预测结果的方法为:
其中,QF表示预测的径流量,f表示激活函数,xj表示输入的第j个特征值,ωj表示第j个特征对应的权重,b表示偏置项,k为聚类中心的数量。
CN202410076588.2A 2024-01-18 2024-01-18 一种基于非负矩阵分解和机器学习的流域径流预报方法 Pending CN117892162A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410076588.2A CN117892162A (zh) 2024-01-18 2024-01-18 一种基于非负矩阵分解和机器学习的流域径流预报方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410076588.2A CN117892162A (zh) 2024-01-18 2024-01-18 一种基于非负矩阵分解和机器学习的流域径流预报方法

Publications (1)

Publication Number Publication Date
CN117892162A true CN117892162A (zh) 2024-04-16

Family

ID=90645520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410076588.2A Pending CN117892162A (zh) 2024-01-18 2024-01-18 一种基于非负矩阵分解和机器学习的流域径流预报方法

Country Status (1)

Country Link
CN (1) CN117892162A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118072911A (zh) * 2024-04-18 2024-05-24 北京动亮健康科技有限公司 用户运动情况的数据处理方法、系统、电子设备和介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118072911A (zh) * 2024-04-18 2024-05-24 北京动亮健康科技有限公司 用户运动情况的数据处理方法、系统、电子设备和介质

Similar Documents

Publication Publication Date Title
CN114254561B (zh) 一种内涝预测方法、系统及存储介质
Abdollahi et al. Daily mean streamflow prediction in perennial and non-perennial rivers using four data driven techniques
CN109243172A (zh) 基于遗传算法优化lstm神经网络的交通流预测方法
CN111563706A (zh) 一种基于lstm网络的多变量物流货运量预测方法
CN109886464B (zh) 基于优化奇异值分解生成特征集的低信息损失短期风速预测方法
CN111665575B (zh) 一种基于统计动力的中长期降雨分级耦合预报方法及系统
CN111612055B (zh) 天气形势的分型方法、空气污染状况的预测方法及装置
CN117892162A (zh) 一种基于非负矩阵分解和机器学习的流域径流预报方法
CN113705877A (zh) 基于深度学习模型的实时月径流预报方法
CN109583635A (zh) 一种面向运行可靠性的短期负荷预测建模方法
CN111862592A (zh) 一种基于rgcn的交通流预测方法
CN115796351B (zh) 基于变分模态分解和微波衰减的降雨短临预测方法及装置
CN116187835A (zh) 一种基于数据驱动的台区理论线损区间估算方法及系统
CN115310536A (zh) 基于神经网络和gcn深度学习模型的水库水位预测预警方法
CN116311921A (zh) 一种基于多空间尺度时空Transformer的交通速度预测方法
CN112541636A (zh) 输电线路覆冰风险预警方法、装置、介质和电子设备
CN115423145A (zh) 一种基于Kmeans-VMD-WT-LSTM方法的光伏功率预测方法
CN116562414A (zh) 一种基于多源水文气象数据的陆地水储量变化预测方法
CN105303051A (zh) 一种空气污染物浓度预测方法
KR101703972B1 (ko) 공간정보를 이용한 지하수 부존 지역 예측시스템 및 지하수 부존 지역 예측방법
CN113449920A (zh) 一种风电功率预测方法、系统及计算机可读介质
CN114372631A (zh) 一种基于小样本学习和lstm的缺资料地区径流预测方法
CN117473305A (zh) 一种近邻信息增强的储层参数预测方法及系统
CN113420506A (zh) 掘进速度的预测模型建立方法、预测方法及装置
CN116090678B (zh) 一种数据处理方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination