王 鑫,赵 康,蒋叶林,朱 文
(1.昆明理工大学 国土资源工程学院,云南 昆明 650031;2.武汉大学 测绘遥感信息工程国家重点实验室,湖北 武汉 430072;3.云南省基础地理信息中心,云南 昆明 650034)
泥石流是我国地质灾害中危害和影响程度仅次于地震的灾害种类之一[1],开展泥石流易发性区划研究可为地质灾害防治工作提供参考,对保障人民生命财产安全和社会稳定意义重大[2]。云南省目前广泛使用的泥石流易发性区划成果存在受主观经验影响较大和时空颗粒度较粗等问题,怒江流域是云南省泥石流灾害的典型高频发区,精细、准确的怒江流域泥石流区划成果对当地防灾减灾工作具有重要意义。
怒江流域地形、地质、地貌、气候等条件复杂,区域泥石流触发机理研究难度很大[3]。同时,地域环境的差异性使泥石流研究模型一般不具有普适性[4]。在泥石流触发机理不明确的情况下,提高模型在预测泥石流发生概率方面的有效性需先分析数据中的非线性关系[5]。神经网络良好的非线性映射能力,能够在海量地质数据中揭示数据内部联系,在泥石流易发性评价中应用效果显著[6]。在众多神经网络算法中,反向传播(BP)算法应用最为广泛[7]。本文以怒江流域为研究对象,分析泥石流灾害的影响因子,通过BP神经网络技术构建泥石流易发性动态区划模型。
怒江流域地处云南省西北部,高山陡坡的地形、密集的河流以及复杂的地质类型为泥石流提供了孕育环境,也为泥石流触发机理研究带来了挑战。李益敏等[8]选取至断裂带距离、岩性、年均降水量、至道路距离、至居民点距离为评价指标,采用确定性系数模型CF和多因子叠加权重确定法开展了怒江泥石流易发性评价研究,精度达到了74.2%;孔艳等[9]选取地貌类型、土壤类型、土地利用类型以及公路分布为评价指标,采用统计指标法和层次分析法相结合的方法对该区域的泥石流危险性进行了分区和评价,精度达到了75.6%;魏苏杭[10]选取至断裂带距离、岩土体类型、流域高差、平均坡度、河流纵坡降、河流弯曲系数、流域面积、流域累积汇水流量、植被指数(INDV)、多年平均降雨量、至公路距离、至自然村距离等12个因子,通过确定性系数法和多因子叠加权重确定法进行了泥石流易发性评价;李芳[11]选取了地貌、坡度、地震烈度、河网密度、岩土体类型、断裂、路网密度、坡向等8个因素作为易发性评价因子,将信息量法与层次分析法相结合进行了易发性评价,精度达到了78.78%。
以上研究存在的不足主要有:①影响因子的组合受主观经验影响较大,直接影响评价结果的准确性;②未充分利用历年灾害数据,如已发生的泥石流、滑坡、崩塌灾害可能为泥石流的孕育提供物质基础;③现有易发性区划成果是静态的空间区划,未反映易发分区随时间的变化规律。
随着大数据技术的发展,机器学习为研究非线性变量关系提供了解决办法[12],可以有效避免主观因素对分析结果的影响。在机器学习方法中,BP神经网络具有出色的非线性分析能力,可用来筛选泥石流触发因素[13]。因此,本文基于广泛搜集的泥石流影响因子及历史灾害数据,通过相关性分析筛选出评价因子,采用BP神经网络技术,以月为时间维度构建泥石流易发性动态区划模型。
相关研究表明,泥石流的形成与触发受地形、地质、地貌、气象等多方面因素影响,且这些影响因素具有时空维度特征,内在关系复杂。传统的数据处理分析方法很难应对此类多源、异构、海量的环境和灾害数据。将大数据与高性能计算方法应用于地质灾害研究是当今的热门手段[14],本文集成了GIS服务平台以及基于Hadoop组件的分析计算处理能力,总体研究框架如图1所示。
图1 总体研究架构
针对多源异构的地质环境数据特征,Hadoop提供了分布式处理引擎、空间数据引擎、Map/Reduce处理框架等;基于Hadoop的HBase分布式数据库可以满足大数据快速存取需求;TensorFlow提供了分析和挖掘算法库;GIS平台用于空间计算分析和可视化表达输出。通过以上完整的支撑架构,可以实现从搜集相关数据到泥石流易发性区划可视化的完整流程。
2.2.1 影响因子搜集及预处理
泥石流是在水力、地貌、地质和人为共同作用下发生承载流动固体相互作用的流动现象[15]。可将形成泥石流的条件归纳为水源、物源和地形条件:水源是泥石流形成的必然条件和主要动力[16],主要搜集降雨数据为影响因子;物源是泥石流形成的物质基础,主要搜集土壤质地、INDV、土壤侵蚀、土地利用、土壤类型等数据;地形条件是形成泥石流的制约条件,可以控制泥石流的规模和运动,主要搜集地貌、高程、坡度、坡向潜在影响因子等数据。
根据研究需要,从时间维度、空间维度和指标维度对数据进行处理变换:空间维度上,将分辨率细化为30 m×30 m的细评价网格;时间维度上,以月为时间维度,选取当月降雨量为有效降雨量,前两个月的降雨量作为前期降雨量的累积,分别用R0、R1、R2表示;指标维度上,历史发生的自然灾害(如滑坡、崩塌等)会为泥石流的孕育提供物质基础,提出历史灾害发生率(Ho)和历史灾害最近距离(Hd)两个指标来衡量历史自然灾害对泥石流易发性的影响。
(1)
Hd=minθ,
(2)
式中:a、b、c分别为滑坡、崩塌、泥石流的发生次数;ai、bi、ci分别为i评价单元的滑坡、崩塌、泥石流的发生次数;θ为评价单元至灾害点的距离。
将影响因子进行汇总,结果见表1。
表1 影响因子汇总
2.2.2 数据相关性分析
检验采集的影响因子和提出的指标与泥石流发生的相关性,剔除不关联或弱关联因子,以保证模型分析结果的准确性,也是为了避免浪费计算资源。多源变量不服从正态分布,且分为连续变量和分类变量,因此采用Spearman秩相关系数评价变量和泥石流易发性之间的相关性[17]。相关系数的取值范围为 (-1,+1),-1表示完全负相关,+1表示完全正相关,0表示没有线性关系。相关性系数如表2所示。
表2 各影响因子的相关性系数
由于怒江州内多以高山陡坡地形为主,艰苦的监测条件使大量泥石流灾害事件未能统计入库,导致实验数据存在误差。因此,本实验将相关系数在区间(-0.1,0.1)的变量视为弱相关并剔除,保留土壤质地(Clay、Silt、Sand)、INDV、土壤类型、高程、坡度、坡向、降雨量(R0、R1、R2)以及历史灾害影响因子(Ho、Hd)等13个评价指标用于模型训练。
BP神经网络是由输入层、隐藏层和输出层组成的复杂网络,由于输入层和输出层节点是确定的,隐藏层层数和隐藏层节点数在很大程度上影响了网络的性能。在神经网络中,当且仅当数据非线性分离时才需要隐藏层,且如果隐藏层数大于2,超出的隐藏层可以学习复杂的描述[18]。在神经网络中,隐藏神经元的数量应在输入层和输出层的层数之间。隐藏神经元的数量应为输入层层数的2/3加上输出层层数的2/3。
以上是学者根据经验得出的大致区间结论,隐藏层层数和隐藏层节点数的最佳取值需要通过实验获得。因此本文建立了一个3~6层、隐藏层节点数为7~11的BP神经网络,即该BP神经网络模型包含1个输入层、2~5个隐含层和1个输出层。将筛选后的影响因子作为输入层(x1,x2,…,x13),将预测的泥石流易发性概率(y)作为输出层。
激活函数是在人工神经元上将神经元的输入映射到输出的函数。根据泥石流易发性区划,需要利用Sigmoid将多层感知器最后的结果映射到(0,1)之间,完成数据归一化,得到概率值
(3)
二分类中最常用的损失函数为交叉熵,交叉熵是实际输出与期望输出的距离,距离越小,分布越接近。假设p为期望输出,q为实际输出,则
H(p,q)=-∑p(x)logq(x)。
(4)
构建的BP神经网络结构示意图如图5所示。
图2 BP神经网络结构
经分析得知,怒江流域在每年4-9月伴随降雨量的剧增而常发生泥石流灾害,因此采用等距取样,在时间和空间上皆保证数据分布均匀。为保证模型有良好的稳定性,本文通过10折交叉验证将数据分为10份,依次取其中的1份作为验证集,剩下的9份作为训练集;最后取10次实验模型精度的平均值作为最后模型的精度。
结合Python语言采用TensorFlow学习框架构建2.3中提出的网络模型,并将BP神经网络的隐藏层数、隐藏层节点数以及训练得出的AUC值绘制成三维图(见图3)。
图3 模型训练AUC值
由图3可知,模型精度随着隐藏层数和节点数的增加先上升后趋于平稳,因此选择 4、9作为所建模型的最佳隐藏层数和节点数,该模型精度达到了98.44%。
将2019年4-9月各评价单元的13个评价指标动态输入最佳预测模型中,将易发性概率以0.2为步长划分成5个等级,得到了动态区划图(见图4)。图中叠加了云南省地质环境监测院重点监测的413个隐患点以及对应时空发生的泥石流事件。
(a)4月区划图
隐患点等级越高表示该点越容易发生泥石流灾害,且隐患点分类等级与实验易发性区划等级相同。由图4可知,预测模型划分的高发生(对应隐患点等级为4,共111个隐患点)、极易发生(对应隐患点等级为5,共42个隐患点)区域覆盖隐患点各86个和31个,准确率达到了77.5%和73.8%;搜集的2019年9起泥石流灾害事件中,该区划模型准确预测到了7起,准确率达到了77.7%。无论从与隐患点等级划分的吻合程度分析,还是从预测泥石流灾害发生的契合度分析,所建模型都能从时空角度较好地反映怒江泥石流易发性现状。
针对在我国频发的泥石流地质灾害,如何准确预测泥石流的发生,及时发布信息提醒群众撤离是防灾减灾工作的重点和难点。时空大数据分析不仅提供了多种分析手段,也能在不同程度上节省人力和物力。
经与泥石流灾害历史记录进行比对,本文提出的基于BP神经网络的预测模型准确地反映了怒江流域泥石流灾害易发性的时空变化规律。将研究范围扩大至整个省份,对数据进行集中管理,结合其他大数据分析技术进行泥石流预测,将是后续的研究方向。