本发明涉及模型预测,具体为一种基于混合机器学习法的山洪灾害风险预测方法。
背景技术:
1、山洪是最具破坏性的自然灾害之一,过去二十年中全球范围内造成了重大经济损失和人员伤亡。虽然不可能阻止山洪灾害的发生,但可以预测并绘制山洪灾害易发区域,特别是对于大范围和数据稀缺的地区,通过划定山洪灾害易发区,对非观测区进行山洪灾害风险预测是一种非常有用的方法。
2、传统的洪水预报预测的是未来数小时到数天的定量水文变量(如流量或水位),但是山洪不同于普通的洪水预报,山洪通常发生在短时间内,并且发生在中、小型集水区(小于100km2),这使得定量的水文变量预测比河流洪水更困难。随着对山洪物理过程的深入研究,一些基于物理的水文模型被用于区域内的山洪预测。然而,由于山洪易发区域内降雨和流量的数据收集困难,在应用基于物理的山洪预报模型时经常遇到数据缺失的问题,导致人们对山洪暴发的机制仍知之甚少。此外,山洪暴发的机制在不同的地理条件和气候类型下会发生显著变化,这使得基于物理过程的水文模型具有局限性,基本不适用于其他区域。随着山洪预警系统(ffw)的广泛使用,基于定量水文观测的山洪预报模型逐渐被淘汰。ffw系统主要通过降雨指数的临界阈值对山洪暴发进行预测,降雨指数的临界阈值包括降雨触发指数(rt i)和前期降雨指数,但是这些指数只关注山洪暴发的驱动因素,如降雨特征,而忽略了区域内的空间地理和水文条件,如地形、土地利用类型、河道信息等。为了解决ffw系统的局限性,提出了考虑降雨径流过程的山洪暴发指南(ffg),并在世界范围内广泛的使用。对于数据资源丰富的地区ffg的精度可以大幅提升,可以利用高分辨率降雨量、长期流量、土壤参数等数据对ffg模型进行校准和优化,然而对于数据缺失地区,ffg对山洪的预报精度也会成为问题。当前广泛使用的lstm模型与rt i方法相比有一个优点,即它可以自动检测来自各种预测因子的有用信息,避免了rt i方法中复杂的阈值选择过程。此外,不需要如同在ffg中开发水文模型时需要详细的流量或水位观测,并且非常适合用于无测量或数据缺失或稀疏地区的山洪预警。
3、针对当前山洪预测模型的优缺点,本发明提出一种基于混合机器学习法与遥感集成的方法。
技术实现思路
1、针对现有技术的不足,本发明提供了一种基于混合机器学习法的山洪灾害风险预测方法,解决了当前的山洪灾害风险预报模型使用过程中存在的模型数据获取困难、山洪灾害影响因素权重不确定性、模型局部过度优化、模型在非观测区不适用、机器学习模型学习效率不高等问题。
2、为实现以上目的,本发明通过以下技术方案予以实现:一种基于混合机器学习法的山洪灾害风险预测方法,包括:
3、步骤一、模型数据输入,模型数据包括研究区内有记录的山洪历史场次信息及与山洪暴发相关的影响因素,且将研究区域内山洪灾害暴发点和非山洪灾害暴发点分别表示为1和0;
4、步骤二、对步骤一中的山洪灾害相关的影响因素进行无量纲的归一化处理:
5、
6、其中xnor为该影响因素归一化后的值,xi为该影响因素的实际监测值,min为数据集中该影响因素的最小值,max为数据集中该影响因素的最大值,数据集里包括所有的影响因素;
7、接着进行影响因素评估,利用随机森林模型对无量纲归一化处理后的山洪灾害相关的影响因素进行评估,根据评估结果选择出形成用于模型输入的历史山洪灾害数据集;
8、步骤三、模型数据集划分,对历史山洪灾害数据集进行分组,分组为训练数据和测试数据;
9、步骤四、进行rbfnn模型参数确定,rbfnn模型具有三层结构:输入层、隐藏层和输出层,输入层包括研究区内历史山洪灾害场次信息和训练数据,输出层分为两类:山洪灾害暴发点和非山洪灾害暴发点,隐藏层中每个节点都是一个径向基函数,节点数是需要优化的关键网络结构参数,rbfnn模型在第一次迭代中,使用试错法随机识别初始网络结构参数,然后使用abc算法优化rbfnn模型的初始网络结构参数,最终得到经过参数优化的rbfnn-abc混合模型;
10、步骤五、进行rbfnn-abc混合模型评估,利用rbfnn-abc混合模型对步骤三中的测试数据进行模拟预测,使用auc、rmse统计指标来评估rbfnn-abc混合模型的准确性,选择auc、rmse统计指标结果最优的混合模型作为该地区山洪灾害风险的预测模型。
11、优选的,步骤一中山洪暴发相关的影响因素包括:高程、曲率、坡向、坡度、离河距离、离路距离、降雨量、土地利用/覆盖、归一化湿度指数、归一化植被指数、土壤、地形粗糙度指数、地形湿度指数和泥沙输运指数。
12、优选的,在步骤二中,随机森林模型通过以下步骤来进行评估,形成用于模型输入的历史山洪灾害数据集:
13、s1、建立多棵决策树:随机森林通过从数据集中随机抽取影响因素来构建多棵决策树;
14、s2、影响因素重要性评估:在构建决策树的过程中,每当一个影响因素被用来分裂节点,该影响因素的重要性会根据本身减少的基尼不纯度或信息增益来进行计算,通过计算得到的分裂后的不纯度的结果,判断该因素在节点分类中起到的作用;
15、s21、当计算得到的分裂后的不纯度越小,表示该因素在节点分类中起到的作用越大;
16、s3、平均重要性:在一棵决策树内,每个因素多次用于分裂节点,将贡献的不纯度减少量相加,然后对于随机森林中的所有树,计算每个素的平均不纯度减少量,作为该因素的重要性评分,相应得到该影响因素在整个模型中的平均重要性;
17、s31:评分方式为:平均不纯度减少量越小,重要性评分越高;
18、s4、排序:根据计算得到的平均重要性,对所有影响因素进行从大到小进行排序。
19、s5:模型数据集:选择平均重要性分值高于所有影响因素重要性平均值的影响因素,形成用于模型输入的历史山洪灾害数据集。
20、优选的,在步骤三中,设置三种分组方式:
21、从历史山洪灾害数据集取60%、70%或80%的数据作为训练数据,对应的从历史山洪灾害数据集取40%、30%或20%的数据作为测试数据。
22、优选的,在步骤四中,abc算法对rbfnn模型优化的方式为:
23、通过abc算法对初始设定进行迭代优化,迭代过程将持续进行,每次迭代都尝试改进网络的性能,直到达到预定的迭代次数,或者当网络性能的提升在连续x次迭代中低于一个阈值k,其中,x和阈值k为预设值。
24、优选的,在步骤五中,通过auc、rmse统计指标结果最优的混合模型作为该地区山洪灾害风险的预测模型的方式为:
25、rmse评估模型性:当rmse小于0.05时认为训练模型合格,rmse值越小模型精度越高,rmse计算公式如下所示,其中yprei表示模型预测值,yobsi表示实际观测值,n表示评估点的总数量,i表示当前评估点:
26、
27、auc为受试者工作特性曲线下的面积,用以评估模型的性能:auc值在0到1之间变化,当auc大于0.8时认为训练模型合格,auc值越接近1,模型越准确;
28、
29、其中tp为正确预测山洪灾害发生点的数量,tn为正确预测非山洪灾害发生点的数量,p为实际山洪灾害发生点的总数,n为实际非山洪灾害发生点的总数。
30、本发明提供了一种基于混合机器学习法的山洪灾害风险预测方法。与现有技术相比具备以下有益效果:
31、(1)本发明通过利用随机森林(rf)模型对山洪灾害暴发的影响因素进行权重划分;利用abc算法优化rbfnn模型初始网络结构和连接权重,有助于避免局部最优问题,提高了rbfnn模型的泛化能力和学习效率;本发明集成了rbfnn和abc算法,加速了模型学习,提高了山洪灾害预测模型的学习速度和准确性。
32、(2)本发明通过基于rf方法使得特征因素在模型中的权重根据历史数据进行确定的,非固定不变,让整个系统更具普适性;rbfnn模型拥有良好的泛化能力和输入数据抗噪能力,利用该模型使得系统能够有效地解决山洪灾害这类多因素致灾的非线性问题,且收敛速度更快,利用rbfnn的拓扑结构使得该系统算法不仅可以提高学习速度,而且可以避免局部过度优化的问题。
1.一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,包括:
2.根据权利要求1所述的一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,步骤一中山洪暴发相关的影响因素包括:高程、曲率、坡向、坡度、离河距离、离路距离、降雨量、土地利用/覆盖、归一化湿度指数、归一化植被指数、土壤、地形粗糙度指数、地形湿度指数和泥沙输运指数。
3.根据权利要求1所述的一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,在步骤二中,随机森林模型通过以下步骤来进行评估,形成用于模型输入的历史山洪灾害数据集:
4.根据权利要求1所述的一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,在步骤三中,设置三种分组方式:
5.根据权利要求1所述的一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,在步骤四中,abc算法对rbfnn模型优化的方式为:
6.根据权利要求1所述的一种基于混合机器学习法的山洪灾害风险预测方法,其特征在于,在步骤五中,通过auc、rmse统计指标结果最优的混合模型作为该地区山洪灾害风险的预测模型的方式为: