地球科学前沿  >> Vol. 10 No. 12 (December 2020)

应用随机森林模型识别南宁地铁线路地层结构特征
Research on Recognition of Stratum Structure Using Random Forest Model

DOI: 10.12677/AG.2020.1012125, PDF, HTML, XML, 下载: 47  浏览: 111  国家科技经费支持

作者: 李浩楠, 周念清*:同济大学,土木工程学院,上海;郑茂辉:同济大学,上海防灾救灾研究所,上海;李晓峰:南宁轨道交通集团有限责任公司,广西 南宁

关键词: 随机森林地层识别支持向量机三维建模超参稳定性Random Forest Lithology Identification Support Vector Machine 3D Geological Modeling Hyperparameter Stability

摘要: 利用传统空间插值方法对钻孔数据进行三维地层建模易受主观因素的影响,为了克服地层建模过程中产生的误差,本文基于随机森林模型提出了一种新型的地层识别方法。选取南宁地铁1号线部分工程勘察资料进行研究,利用网格搜索确定模型参数后,构建随机森林模型,并与支持向量机进行对比分析。通过研究表明,随机森林模型的预测精度达到81.7%,其超参稳定性明显高于支持向量机,且预测精度受其主要参数(树的数量和最小叶子节点数)变化的影响较小;交叉验证评估结果也证实了随机森林的泛化性能更好。当样本数量较少时,随机森林模型不论是在分类精度还是稳定性方面均较好。该方法在三维地质建模中具有良好的应用价值。
Abstract: Using traditional spatial interpolation method based on borehole data for 3D stratum modeling is easily affected by subjective factors. In order to overcome the errors in the stratum modeling process, this paper proposes a new stratum recognition method based on the Random Forest model. Part of the engineering investigation data of Nanning Metro Line 1 is selected to carry out the research. After the classifier parameters are determined by the grid parameter search, the Random Forest model is constructed and compared with the Support Vector Machine. Research shows that the prediction accuracy of the random forest model reaches 81.7%, and its hyperpa-rameter stability is significantly higher than that of the support vector machine, and the predic-tion accuracy is less affected by changes in its main parameters (the number of trees and the minimum number of leaf nodes). The cross-validation results also confirm that the generalization performance of random forest is better. When the number of samples is small, the random forest classifier still has a good performance in terms of classification accuracy and stability. This method has a good application prospect in 3D geological modeling.

文章引用: 李浩楠, 周念清, 郑茂辉, 李晓峰. 应用随机森林模型识别南宁地铁线路地层结构特征[J]. 地球科学前沿, 2020, 10(12): 1285-1294. https://doi.org/10.12677/AG.2020.1012125

1. 引言

地层结构是在漫长的地质历史演化过程中形成的,其时空分布具有不均匀、不规则等特点,在宏观上具有一定的统计规律 [1]。地层结构的识别有多种方法,其中钻探法是获取地层构造以及岩性分层详细分布信息最为直观、可靠的手段 [2];钻孔数据所记录的信息准确率高,是三维地质建模的重要依据 [3],也是地铁工程选线、设计和施工中必不可少的数据资料。在三维地质建模中连接各钻孔地层时,主要使用线性插值、多项式插值、反距离插值和kriging插值等空间插值方法,各种不同的插值方法得到的模拟结果存在一些差异,具有一定的局限性 [4]。

本文以南宁地铁1号线部分路段作为研究对象,由于线路要穿越人口稠密繁华商业区、市民居住区以及车流量较大的交通要道,勘察施工会给周围环境和市民生活带来影响 [5]。南宁地区可溶岩广泛分布,施工时很容易发生岩溶塌陷与突水事故 [6]。因此,在南宁地铁建设中,往往由于勘探场地受限,获取钻孔数据成本高,如何利用有限的钻孔数据识别地层岩性及其层序分布是值得关注和探索的问题。

近年来,机器学习算法得到了迅速发展,算法建模既可以用于大型复杂数据集,也可以在较小数据集上建立更准确的模型 [7],此方法在地质学领域得到不断推广和应用;陈玉林等 [8] 基于K近邻算法识别合水地区的岩性,分类准确率达到89.5%;郭甲腾等 [9] 基于支持向量机和BP神经网络实现钻孔数据自动地层分类,提出需进一步探索超参数的经验值确定方法;Cracknell等 [10] 基于地球物理数据对比研究了5种机器学习方法的地层分类效果,其中随机森林算法的分类效果最好;马梓程等 [11] 利用光谱和纹理信息,基于随机森林建立了火成岩分类模型;徐剑波和陈军林 [12] 应用随机森林算法结合区域的化探数据来推断地质体的空间分布。因此,在此基础上,本文提出了一种基于随机森林(Random Forest, RF)模型的钻孔数据地层识别方法,并与支持向量机(Support Vector Machine, SVM)模型进行对比分析。

2. 研究方法

2.1. 随机森林算法

随机森林是Bagging方法和Random子空间的组合 [13],基本构成单元是决策树,通过多棵决策树的组合提高分类的准确性。首先随机生成训练集,利用bootstrap方法随机为每棵树生成训练数据,可能重复包含,也可能不重复包含某些数据,并由此构建K棵分类决策树,每次未被抽到的样本组成袋外数据(Out-Of-Bag, OOB)。随机选择特征子集:当决策树节点拆分时,随机选择特征子集,该子集的大小m通常小于特征总数M。计算m个特征下的基尼系数,选择最佳分割特征。集合每棵决策树的预测结果,且每棵树被采样的机会均等,可以有效地生成随机树,并且将大量随机树组合在一起可以得出准确的模型,通过最终投票对未知类别的样本进行分类。

本文提出的基于随机森林的钻孔数据地层识别流程如图1所示。关键步骤包括:1) 对钻孔数据进行预处理,按地层类型划分样本并随机划分训练集和测试集;2) 利用训练集内部交叉验证寻找适合当前问题的随机森林模型超参数组合;3) 根据最优超参数,训练随机森林分类器;4) 由训练好的分类器对测试集进行预测分类,确定其地层类型。

Figure 1. Process of strata recognition for borehole data based on Random Forests

图1.基于随机森林模型的钻孔数据地层识别流程

2.2. 地层分类树

本文以CART分类树 [14] 为基学习器构建RF地层识别模型。CART分类树为二叉分类树,由根节点、子节点和叶子节点组成,其中每个从根节点到叶子节点的路径都对应着其依据地层相关属性的分类过程,而叶子节点则对应一种地层类别。使用CART决策树进行节点分割时,选择具有最小基尼系数的特征作为最佳分割属性 [15],计算如下:

Gini ( t ) = 1 i c P i 2 (1)

式中:Pi为地层类型it节点处的概率,Gini(t)为0时,表示在t节点处的样本数据为同一地层类型;Gini(t)越大,表明在t节点处的样本数据越趋于均匀,能获得的分类信息越少。

图2所示,样本集S1的训练过程对应于CART分类树的生长过程,即把位于根节点的样本集S1按所给定的属性划分不断进行递归分割。单棵地层分类树的生长训练过程如下:

1) 利用bagging方法获取训练集。从具有N个样本的总训练集中有放回地随机抽取n个组成单棵树的训练集S1

2) 随机选取节点的属性指标。在钻孔数据当中共有M个属性,随机地从M个指标中选取m个作为节点指标。

Figure 2. Single strata classification tree

图2. 单棵地层分类树

3) 节点的递归分割。对于每一个节点的钻孔属性指标都要遍历所有可能的分割方法,选择最小的基尼系数作为此节点的分割标准,对应的属性指标为最优的地层分类指标,然后按最优地层分类指标进行分割。如图2中数据集S4根据最优属性指标t3分为两个子数据集4和S5,其中4节点的基尼系数已经很小(通过设定的阈值判断),可认为该节点所有样本属于同一类别,即地层类别4,不用继续向下分割;而数据集S5则继续分割。

4) 然后将生成的多棵树组成RF,用RF对新的数据进行分类,分类结果按树分类器投票决定。

2.3. 模型评价

假定 n i j 表示被分类为j类的i类样本,k表示地层类别的数量,则分类准确率A以正确分类的样本数与总样本数N的比值来表示:

A = i = 1 K n i i N , K = k (2)

该指标是用来衡量分类器对于测试集的总体分类精度,总体分类精度越高说明算法的分类效果越好。除整体分类精度外,各单一地层分类准确率也十分重要,这里选用召回率R和精确度的综合指标F1来表达,R表示被正确分类的地层样本占所有实际为该地层的样本比例,P表示被正确分类的地层样本占所有预测为该地层的样本比例,F1是召回率R和查准率P的综合指标。随机森林模型的评价指标公式 [16] 如下:

R = n i i i = 1 K n i j (3)

P = n i i i = 1 K n j i (4)

F 1 = 2 P R P + R (5)

RF在训练过程中每次的bootstrap抽样,N个地层数据中的每条数据未被抽中的概率为 ( 1 1 / N ) N ,当N足够大时, ( 1 1 / N ) N 0.368 ,即为袋外数据(Out Of Bag, OOB)。RF利用这部分数据进行内部误差

估计,产生OOB误差,为在RF中为测试集误差的无偏估计,可利用python的机器学习库Scikit-learn直接输出。有2个主要参数会影响RF的效率和性能 [17]:树的数量以及叶节点的最小样本数量,可以使用网格参数搜索的办法来确定其最优超参数。

为量化地层分类预测的可靠性,引入余量函数(Margin function) [18],定义为:

m g ( X , Y ) = a v k ( h k ( X ) = Y ) max j Y a v k I ( h k ( X ) = j ) (6)

式中: I ( ) 为示性函数,余量函数用于度量平均正确分类数超过平均错误分类数的程度,余量值越大,分类预测越可靠。随机森林的泛化误差 [18] 定义为:

P E * = P X , Y ( m g ( X , Y ) < 0 ) (7)

式中:下标X,Y表示概率P覆盖X、Y空间。在RF当中,当决策树数量足够多时, P E * 会趋于一个上界,RF算法不会过拟合(Overfitting) [19]。

3. 应用算例

3.1. 研究区概况和钻孔数据分析

研究区域位于南宁市中心城区,选取地铁1号线170个钻孔勘察资料进行研究,其钻孔点位主要位于白苍岭站、南宁火车站站、朝阳广场站、新民路站、民族广场站,地铁5号线和7号线也将穿过本研究区域。朝阳广场站规划成为地铁1、2、7号线三线换乘车站,也是南宁市已有规划中唯一一座三线换乘站。钻孔揭露的地层主要为杂填土、粉土、泥岩、粉砂岩、砾石、黏土、粉砂共7类,统计的对应地层样本数量分别为124、75、221、101、131、180、68,总共900个样本。

首先将钻孔数据按钻孔编号整理,然后根据地层类型的不同,划分为不同的样本,表1为随机选取的2个钻孔数据及揭露的部分地层,展示了相关特征属性。钻孔剖面图如图3所示,训练中涉及的属性值包括钻孔位置坐标,每个地层分界点的起始深度、终止深度、层厚、钻孔地面标高。

Table 1. Drilling data and feature attributes

表1. 钻孔数据及特征属性

Figure 3. Drilling profile

图3. 钻孔剖面图

数据样本中钻孔坐标和土层厚度数量级差异很大,为了提高分类器的学习能力,对每个输入特征值进行标准化 [20],将处理后的输入数据标准化为零均值和单位方差,转化函数为

X * = ( X μ ) / σ (8)

式中: X * 为标准化后的值;X为待标准化的值; μ 为样本数据的均值; σ 为样本数据的方差。

3.2. 超参数的敏感性分析

机器学习方法中,对于不同的建模数据,超参数难以确定唯一值,而不同的超参数组合会对建模结果产生很大影响。RF的性能主要受树的数量以及最小叶子节点数的影响,而SVM的性能则受到惩罚因子C和RBF核函数参数gamma这2个超参数的影响 [21]。因此,需要研究RF和SVM模型的超参数选取对建模准确率的影响。RF与SVM模型的超参数敏感性分析结果如图4所示。在机器学习中,常采用交叉验证分析超参数的敏感性 [22],为方便比较,统一采用5折交叉验证和网格搜索方法计算分析不同参数设置下模型分类准确率,结果显示RF分类器整体表现更好,且具备较低的超参数敏感性。图4(a)显示RF的两个重要超参数树的数量以及最小叶子节点数变化时,分类准确率的波动很小,图4(b)和图4(c)中RF的2个参数敏感性曲线都很平滑,不存在过拟合(over-fitting)与欠拟合(under-fitting)情况,测试集的波动范围相比于整体准确率而言很小,体现了模型分类的稳定性。图4(d)、图4(e)、图4(f)结果表明,SVM的参数非常敏感,波动范围很大,甚至会出现训练集和测试集结果相背离的情形,需要重点调整优化关键参数。图4(e)结果还表明,当C值设置不当时,总体精度只有大约20%。同时, 值设置对分类性能也有明显影响(见图4(f))。在实际应用中,使用粗网格搜索可能难于选定最优SVM参数,而使用精细网格进行计算,无疑会加大计算工作量。

3.3. 地层识别结果分析

为验证建模准确率,按照4:1划分训练集与测试集,即随机选择180个地层数据(占全部地层数据的20%)作为测试集用以评判建模结果,利用Scikit-learn机器学习包中的网格搜索进行模型参数调优 [23],混淆矩阵分析方法是评价模型性能好坏最直接有效的方法 [24]。图5图6以混淆矩阵形式分别给出RF和SVM的分类预测结果。通过对比发现,2种模型都具有较好的分类能力,但RF模型在不同地层的分

Figure 4. Hyperparameter sensitivity map of Random Forest (a)~(c) and Support Vector Machine (d)~(f) under 5-fold cross-validation.

图4. RF(a)~(c)和SVM (d)~(f)在5折交叉验证下的超参数敏感性图

类结果几乎均强于SVM模型。表2给出了利用公式(2)、(3)、(4)、(5)得到的模型整体精度、综合指标F1值以及5折交叉验证得到的结果,随机森林模型3项指标分别为0.817、0.816和0.824,均略高于SVM,另外,RF的OOB值为0.824,具备较好的泛化性能。

为应对实际工程中钻孔数据样本有限的问题,此处验证RF对样本量的鲁棒性,随机选择不同数量样本,因需要验证在样本数量较少时的模型性能,所以此处按7:3划分样本集进行模型训练测试,以减

Figure 5. Confusion matrix of the RF classifier

图5. RF分类器分类结果的混淆矩阵

Figure 6. Confusion matrix of the SVM classifier

图6. SVM分类器分类结果的混淆矩阵

Table 2. Classification results of RF and SVM classifiers

表2. RF与SVM模型的分类结果

小测试误差。图7是不同样本数量下的测试集分类结果。由图7(a)可知,RF运行100次后获得的平均精度随样本数量的增加而增加,图7(b)显示标准差则会随之减小。样本数量由100增至900时,平均精度增加约20%,标准偏差下降约0.05。计算结果表明RF对于样本集数量的标准差稳定性较好,样本数量为300以上时,其准确率就达到70%以上,基本可以满足实际工程的需求。

Figure 7. Mean accuracy and its standard deviation (RF runs 1000 times) versus the number of samples

图7. 随机森林随机划分1000次数据集,平均准确度及其标准偏差与样本数的关系

4. 结语

本文以南宁市地铁1号线的钻孔勘探资料为研究基础,提出了基于钻孔数据的随机森林地层分类方法,比较分析了随机森林和支持向量机2种机器学习算法在地层岩性分类中的应用,得出以下主要结论:

1) 分类模型评价指标为总体准确率和综合指标F1值,随机森林的准确率达到81.7%,F1值为0.816,不论是整体的分类能力还是各个地层的分类能力随机森林均强于支持向量机,它们的交叉验证结果也在0.8以上,保证了其泛化能力,同时随机森林在实际应用当中还可以不用划分测试集,用OOB误差精准便捷地评价其泛化能力。

2) 在超参数敏感性方面,与支持向量机比较,随机森林的参数敏感性更低,这在实际应用中会更加便捷、快速。与此同时,随机森林模型对于样本集数量的要求低,在低样本数量时得到的地层预测准确率和标准差良好。

3) 随机森林模型在利用钻孔数据识别地层方面具有明显的优越性,可以有效解决城市区域岩土工程勘探钻孔有限、稀疏的问题,对后续南宁地铁工程建设具有一定指导意义。

基金项目

国家重点研发计划资助项目(2017YFC0803300),南宁市科技局重点研发项目(02902530072)。

NOTES

*通讯作者。

参考文献

[1] 周翠英, 张国豪, 杜子纯, 等. 基于机器学习的地层序列模拟[J]. 工程地质学报, 2019, 27(4): 873-879.
[2] 贺怀建, 白世伟, 赵新华, 等. 三维地层模型中地层划分的探讨[J]. 岩土力学, 2002, 23(5): 637-639.
[3] 刘晓明, 罗周全, 杨彪, 等. 复杂矿区三维地质可视化及数值模型构建[J]. 岩土力学, 2010, 31(12): 4006-4010+4015.
[4] 刘智勇. 曲面插值算法在三维地质建模中的研究[D]: [硕士学位论文]. 成都: 成都理工大学, 2016.
[5] 陈爱侠, 关卫省, 陈宽民. 轨道交通建设对城市生态环境影响分析——以西安市城市轨道交通2号线为例[J]. 安全与环境学报, 2007(3): 70-73.
[6] 周念清, 邹朴, 黄钟晖, 等. 多物性参数耦合建模探测地铁站岩溶空间概率分布及风险[J]. 地球科学前沿, 2019, 9(10): 13.
[7] Breiman, L. (2001) Random Forests. Machine Learning, 45, 5-32.
https://doi.org/10.1023/A:1010933404324
[8] 陈玉林, 李戈理, 杨智新, 等. 基于KNN算法识别合水地区长7储层岩性岩相[J]. 测井技术, 2020, 44(2): 182-185.
[9] 郭甲腾, 刘寅贺, 韩英夫, 等. 基于机器学习的钻孔数据隐式三维地质建模方法[J]. 东北大学学报(自然科学版), 2019, 40(9): 1337-1342.
[10] Cracknell, M.J. and Reading, A.M. (2014) Geological Mapping Using Remote Sensing Data: A Comparison of Five Machine Learning Algorithms, Their Response to Variations in the Spatial Distribution of Training Data and the Use of Explicit Spatial Information. Computers and Geos-ciences, 63, 22-33.
https://doi.org/10.1016/j.cageo.2013.10.008
[11] 马梓程, 帅爽, 安志宏, 等. 基于RF模型的火成岩提取与分类研究——以吉布提阿里萨比耶地区为例[M]//国家安全地球物理丛书(十五)——丝路环境与地球物理. 西安: 西安地图出版社, 2019: 94-103.
[12] 徐剑波, 陈军林. 利用区域化探数据推断地质体空间分布[J]. 地质与勘探, 2019(5): 1214-1222.
[13] Breiman, L. (2001) Statistical Modeling: The Two Cultures (with Comments and a Rejoinder by the Author). Statistical Science, 16, 199-215.
https://doi.org/10.1214/ss/1009213726
[14] Breiman, L., Friedman, J.H., Olshen, R.A., et al. (1984) Classification and Regression Trees (CART). Biometrics, 40, 358.
https://doi.org/10.2307/2530946
[15] 冯少荣. 决策树算法的研究与改进[J]. 厦门大学学报(自然科学版), 2007, 46(4): 496-500.
[16] 曹正凤. 随机森林算法优化研究[D]: [硕士学位论文]. 北京: 首都经济贸易大学, 2014.
[17] 马骊. 随机森林算法的优化改进研究[D]: [硕士学位论文]. 广州: 暨南大学, 2016.
[18] 姚登举, 杨静, 詹晓娟. 基于随机森林的特征选择算法[J]. 吉林大学学报(工学版), 2014(1): 142-146.
[19] Sun, A. and Lim, E.P. (2001) Hierarchial Text Classification and Evaluation. IEEE International Conference on Data Mining, San Jose, 29 November-2 December 2001, 521-528.
[20] 杨根云, 周伟, 方教勇. 基于信息量模型和数据标准化的滑坡易发性评价[J]. 地球信息科学学报, 2018, 20(5): 674-683.
[21] 范昕炜. 支持向量机算法的研究及其应用[D]: [博士学位论文]. 杭州: 浙江大学, 2003.
[22] 郑茂辉, 刘少非, 柳娅楠, 等. 基于粒子群优化极限学习机的排水管结构状况评价[J]. 同济大学学报(自然科学版), 2020, 48(4): 513-516, 551.
[23] Pedregosa, F., Varoquaux, G., Gramfort, A., et al. (2011) Scikit-Iearn: Machine Learning in Python. Journal of Machine Learning Research, 12, 2825-2830.
[24] 张雪蕾, 汪明, 曹寅雪, 等. 3种典型机器学习方法在灾害敏感性评估中的对比[J]. 中国安全生产科学技术, 2018, 14(7): 80-85.