基于决策树集成学习的桉树蓄积预估模型研究

2020-03-15 01:15李晓伟吴保国苏晓慧陈玉玲彭意钦于永辉范小虎
中国农业科技导报 2020年6期
关键词:蓄积桉树决策树

李晓伟, 吴保国*, 苏晓慧, 陈玉玲, 彭意钦, 于永辉, 范小虎

(1.北京林业大学信息学院,林业信息化研究所,北京 100083; 2.广西壮族自治区国有高峰林场,南宁 530000)

林分生产力的准确预测对森林经营及其方案编制意义重大,是实现人工林可持续经营的基础[1]。林分蓄积是衡量小班林分生产力的重要指标,国内外学者对蓄积预估模型已有大量研究,构建林分蓄积模型的方法很多,主要为传统统计建模方法和机器学习方法。传统方法包括多元非线性回归方程[2]、借助树高和断面积等中间变量的联立方程组法[3]、混合效应模型法[4-5]。传统方法是在满足数据独立、正态分布和方差齐性等假设前提下进行的,但是由于森林数据的固有变异性,上述假设通常难以满足[6]。此外,林分蓄积还受林分密度及经营水平等因素影响,林分生长系统具有非线性、复杂性本质特征,使得传统的数学公式模型难以精准表述[6]。而机器学习方法可对非线性关系进行良好模拟,不仅在预测精度上有明显优势,而且应用方便[7],因此,构建机器学习模型进行林分蓄积量预估的研究也越来越多。目前,机器学习方法中应用较多的是人工神经网络[8-12]。对于非神经网络方法,林卓等[13]用支持向量机构建福建西北地区杉木人工林蓄积模型,高若楠[14]使用小班数据采用随机森林方法对东北天然阔叶林蓄积生长量进行预估。决策树机器学习方法在预测方面表现更好的解释性,并且通过集成学习方式进行整合,既可以提高预测精度又可以减少产生过拟合的几率,在生态研究等领域中应用较多[15-16]。但以小班数据为基础,采用多种决策树为基础学习器的集成学习方法对考虑立地条件和密度因子的桉树(EucalyptusrobustaSmith)人工林进行蓄积预测的研究比较欠缺。本研究以广西国有高峰林场速生桉为研究对象,构建多种以决策树为基础结构器的非集成、集成学习模型,结合年龄、立地条件、密度因素研究蓄积预估。为采用蓄积预估模型作为生产力判断的泛化研究进行一定探索,并结合具体研究地区为林场速生桉的造林决策提供支持。

1 材料与方法

1.1 研究区概况

研究地点为广西壮族自治区国营高峰林场,该林场为广西最大国有林场,位于22°49′N~23°15′N,108°08′E~108°53′E,属南亚热带气候,夏长冬短,光热充足,雨量充沛,年平均气温在21 ℃左右,极端最高温40 ℃,最低温-2 ℃,积温为7 500 ℃左右,年降雨量为1 200~1 500 mm,多集中在每年6—9月[17-18]。地貌主要由山丘和丘陵构成。海拔为150~400 m,坡度为20~30°。土壤以赤红壤为主,质地为中壤土或轻粘土。森林植被主要有桉树、马尾松(PinusmassonianaLamb)、杉木(CunninghamialanceolataHook)等树种,其中桉树类全部为速生桉树种,主要包括尾叶桉(EucalyptusurophyllaS.T.Blake)、巨尾桉(Eucalyptusgrandis×urophylla)、尾巨桉(Eucalyptusurophylla×E.grandis)。

1.2 研究数据

本研究以广西壮族自治区桉树人工林为研究对象,选择2008年高峰林场森林资源规划设计调查(简称二类调查)中优势树种为桉树的3 500个小班以及2010年广西国家森林资源连续清查(简称一类清查)的200个桉树固定样地两个数据源作为研究数据。参照《森林资源规划设计调查技术规程》[19]与《森林资源数据采集技术规范》[20]确定二类调查、一类清查各因子。提取小班和固定样地数据中共有的立地因子(海拔高度、坡向、坡位、坡度、枯枝落叶厚度、腐殖质层厚度、土壤种类)和林分因子(林龄、公顷蓄积、公顷株数、平均胸径、平均树高)进行整理,其中二类调查数据用作模型训练与验证,一类清查数据用作模型泛化测试。用于此建模数据的因子统计量见表1与表2。

表1 建模数据林分因子统计

表2 建模数据立地因子统计

1.3 模型构建

集成学习主要分为并行与串行两种,本文选择决策树集成学习构建2种并行算法(Bagging和随机森林)和2种串行算法(梯度提升决策树和XGboost)来构建桉树小班蓄积模型。Bagging(bootstrap aggregating)算法[21]采用随机有放回的选择训练数据。随机森林[22]在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性(如小班数据中坡度、土壤厚度等字段)选择。相比Bagging,随机森林在当前结点的属性集合中选择一个包含m个属性的集合。随机森林的基学习器,分别采用CART模型与Ctree模型。梯度提升决策树GBDT(gradient boosting decision tree)算法[23]基于回归树模型,采用迭代的方法最小化损失函数,进而得到最优解。GBDT中每一棵回归树结点划分都是基于之前多个回归树的预测结果、采用梯度迭代法训练新弱分类器,使得新回归树的预测结果与实际值之间的损失函数达到最小。回归问题损失函数设定为均方差函数,其梯度结果与残差公式一致。回归树划分节点后样本的取值采用平均值法。XGboost[24]方法作为GBDT的改进,基于梯度提升部分目标函数为损失函数加正则项,损失函数为训练误差,正则项为训练树复杂度,通过正则项控制模型复杂程度,模型更为精准。

模型构建分为数据清洗与预处理、特征选择与数据集划分和训练模型构建与调优三步,具体流程如图1所示。采用统计软件R 3.5.4调用相关包进行模型训练、验证与结果分析。

图1 模型构建流程

Step1:数据清洗与预处理。数据预处理按顺序包括干扰数据清除、定性因子量化处理与数据标准化处理。广西壮族自治区速生桉树的轮伐期为5~6 a,因此,首先剔除数据中树木平均年龄大于 6 a 的数据,然后将土壤种类、坡位、坡向定性因子哑变量化[25]转化为定量因子,最后,由于min-max标准化会受极端值影响,对数据进行Z-score标准化处理,以消除量纲带来的影响。

Step2:特征选择与数据集划分。林分生长的主要影响因子包括立地质量、林分平均年龄、林分密度,因此选择2个林分因子(年龄和公顷株数,表1)和8个立地因子(表2)作为输入变量,公顷蓄积量为输出变量。数据集划分方式为70%训练数据集,30%测试数据集,对于验证数据集部分,不单独划分,而是统一采用十折交叉验证的方法3次重复进行模型验证。

Step3:参数单值预训练、参数全范围模型训练与调优。采用任一训练模型,初步选择参数取值范围中间值作为参数进行模型预训练,将其结果做理论性可用性验证。在理论可行性验证成功基础上进行参数全范围训练模型构建与调优,选择非集成与集成两种方式共9种模型,调用caret软件包的train函数进行模型训练。模型构建过程三个方面核心参数、参数训练范围见表3。

表3 模型构建与调优参数统计表

Step4:模型泛化预估测试。选择Step3对比结果最优模型,以2015年广西壮族自治区部分一类清查桉树数据进行泛化测试,判断其对广西所有地区桉树蓄积预估是否具有泛化性。对于训练好的最优模型,首先用R语言封装模型成为函数,之后使利用Java语言构建工程,输入一类清查数据文件,选择Step2中特征选择的10个自变量,使用Rserve模式调用并执行模型程序包文件,计算样地蓄积预测值[7],与观测值进行线性回归分析计算R2与P值,其结果作为泛化测试结果。

1.4 理论性可用性验证

蓄积预估属于生长收获模型,变化应符合生物S型生长曲线规律。随机选择一个小班,采用单变量法固定1.3 Step2中8个立地因子以及公顷株数,以时间为自变量,蓄积预估量为因变量,以1.3 Step3预训练模型作生长曲线图,评价模型是否符合树木生长规律,进而判断模型的理论可用性。若理论可用性通过,进入参数全范围的模型训练与调优、模型评价阶段。若理论可用性不通过,回到数据预处理部分对针对业务问题对数据再处理。

1.5 模型评价

对于数字评价,交叉验证模型评价方法采用3个指标进行评价和检验,分别是决定系数(R2)、均方根误差(RMSE)以及平均绝对偏差(MAE)。

R2越接近1表示模型拟合效果越好,MAE与RMSE相对越低表示模型误差越小。对于模型训练集效果,选择R2与RMSE,对于模型测试集效果选择RMSE与MAE。

2 结果与分析

2.1 理论可用性分析

预训练和修正训练结果得到图2所示。发现第5 a蓄积量相较第4 a增长量较小,整体不符合S型生长曲线,因此返回数据预处理阶段进行数据再处理。分析原因,该地区桉树主伐年龄为 5 a,在二类调查时对n<年龄

图2 理论可用性预训练与修正训练结果

2.2 模型结果与对比分析

表4与表5分别显示9个模型以最优R2为标准的最优参数组合以及模型在训练集与测试集中的相关精度指标。

表4 模型训练最优参数组合

由表5结果可知,相同方法、不同基学习器的模型训练结果不同。其中单棵树模型Ctree基学习器相比CART基学习器在训练集上的R2与RMSE几乎相同,但是在测试集上Ctree基学习器的R2与RMSE明显降低。无论训练集还是测试集,并行集成学习模型R2与RMSE均明显低于采用CART基学习器模型;而在随机森林方法中实验结果出现反转,即CART基学习器模型各指标在训练集与非测试集结果均好于Ctree基学习器模型,并且模型整体精度与误差数字均为相对最低,模型整体效果为前六种中相对最优。

表5 模型训练与测试结果

非集成学习与集成学习的模型评价量化指标明显不同,集成学习模型整体优于非集成模型。无论训练集还是测试集,并行集成学习中采用相同基学习器的随机森林模型相关指标优于一般并行Bagging方法。串行集成学习方法中模型评价指标R2与RMSE最优的依次为XGboost模型、增强回归树模型。对于串行与并行两种集成学习方式,同时选择CART作为基学习器,结合模型评价指标,模型训练集结果由好到坏依次为XGboost、随机森林、增强回归树与Cubist,模型测试集结果由好到次依次为XGboost、随机森林、Cubist与增强回归树。

2.3 模型变量重要性评估与解释

2.3.1变量重要性评估 选择非集成决策树类、并行集成类以及串行集成类中效果最优的CART的单棵决策树、随机森林以及XGboost三种模型,计算得到各自变量相对于因变量每公顷蓄积的影响重要性。由图3可知,对于立地、树木以及密度三类自变量因子,三种模型的自变量重要性排名几乎一致,特别是前5名重要性自变量三个模型相同,说明重要的几个变量对于蓄积预估的影响程度不会因模型不同而改变,只是在贡献度次序上有相对的改变。对于各自变量重要性排名,占比最高的为树木因子中的年龄,其对于因变量重要性显著高于其他因子,三种模型分别为达到86.5%、83.5%、78.0%。其次对于因变量存在影响的三个自变量在CART、随机森林以及XGboost模型中的重要性数值排序分别为:土层厚度(3.0%)、腐殖质层厚度(2.9%)、海拔(2.4%);土层厚度(4.5%)、密度(3.0%)、海拔(2.4%);海拔(4.9%)、土层厚度(3.8%)、密度(3.2%)。而坡向、坡位、坡度、土壤种类等因素重要性在三个模型中占比都低于1%,影响极小。

注:图中编号1~10分别为海拔(m)、坡向、坡位、坡度(°)、枯枝落叶厚度(cm)、腐殖质层厚度(cm)、土层厚度(cm)、土壤种类、年龄(a)、密度(hm-2)。

2.3.2模型解释 相比于其他机器学习模型,决策树具有一定的模型可解释性,从而根据其树杈分支的决策过程可以从中探究各自变量属性在蓄积预估模型的划分顺序与划分节点数字,从而对机器学习方法应用于蓄积预估提供更好的解释性。单棵树模型相比集成学习方法,从实验工程的角度可以还原决策的属性划分过程,具有更好的模型解释性。属性划分为五级,第一、二级为年龄,第三级为土层厚度与枯枝落叶厚度,第四级为密度与海拔,层级越小划分属性影响越大。年龄值、土层与枯枝落叶厚度、密度与海拔值越大,蓄积越大。

2.4 模型泛化预估

模型调用结果如表6所示。由表6可知,桉树在1~6 a蓄积平均值持续增长,且从第3 a开始蓄积增长值明显扩大,但是相对应标准差也显著地提升。残差整体残差分布较为均匀,不存在异方差情况(图4)。模型经检验后调整后R2为0.785,P值为2.2e-16,符合检验标准(图5)。

表6 蓄积预估结果

图4 XGboost模型在泛化测试数据集上残差图

图5 XGboost模型在泛化测试数据集上值的散点图

3 讨论

本研究选择二类调查数据用作模型拟合与验证,选择一类清查数据用作模型泛化。二类调查数据特点是数据量大,研究范围相对集中,可以满足该地区决策树集成学习等机器学习模型对于数据训练量的基本要求,并且较多训练数据量可以在一定程度上增加模型拟合精度。泛化测试即模型对于未知数据预测的相对准确性,两个核心要求体现在待测试的未知数据不同于训练数据集所属地区以防止过拟合以及未知数据精度有一定保证从而可以反馈泛化测试结果。一类清查数据精度相对较高、调查范围大而分散的两个特点符合模型泛化测试核心要求。

对于模型判定数字指标,基于二调数据,XGboost在森林蓄积预估问题上有着最优的模型效果,R2超过0.8,同比陈玉玲等[7]采用BP神经网络模型进行华北落叶松蓄积预估精度有一定的提高。模型泛化应用结果R2为0.785,P值小于0.000 1,符合检验,说明该模型精度达到应用水平。本研究以海拔、坡向、坡位、坡度以及土壤相关等立地属性来作为立地因素,以每公顷种植株数作为密度因素。林卓等[13]、王少杰等[5]分别使用断面积、计算密度指数作为密度因素。仅考虑变量独立性以及与其他自变量较小的交互性,株数相对更合适。受年龄影响的林分因子是否可以作为自变量引入模型仍有待讨论,李宗俊[26]认为可以先预估林分因子再代入模型进行二次训练的方法也是参考选项但可能面临自变量多重共线性等问题。

决策树模型相比神经网络可以避免潜在的数据的过度拟合等特点[7]。集成学习方法精度显著高于非集成方法,原因在于单一的决策树模型具有一些不足,如模型的不稳定性(数据中微小的变动可能会引起树的巨大变化,从而影响解释性)、次优的预测能力等[27]。作为基学习器的模型,在集成学习方法上CART效果好,非集成学习上条件推断树更好。采用串行集成学习方法普遍好于一般并行集成学习,但是若并行集成考虑到随机性而采用随机森林的方式则与串行集成学习差异不明显,该结果与Fernández-Delgado等[28]关于回归问题采用的多种机器学习方法对比研究结果一致,原因是相比于条件推断树对于切分结果偏度的纠正,随机森林在切分属性的选择上的随机性改变更有效的减小了误差,说明基于属性划分的选择对于误差的影响效果要大于切分后切分值的偏度修改。模型参数训练范围与欧强新[19]的研究类似,但是最优参数组合存在明显不同,说明因变量、自变量属性的不同会影响同类模型的训练情况。对于集成学习,本研究探讨了并行与串行两种方式,后续可以采用混合集成方式进一步研究。

猜你喜欢
蓄积桉树决策树
信息时代基于决策树对大学生情绪的分类
桉树生态效益与经营方式探究
简述一种基于C4.5的随机决策树集成分类算法设计
彩虹桉树
桉树茶饮
海伦市护林林场森林资源现状及特点
决策树学习的剪枝方法
桉树会引发白血病?
孙吴县沿江林场资源结构及特点
新开道林场森林资源现状与特点