基于XGBoost 的山核桃干腐病多分类预测模型研究*

2023-12-16 04:58徐炳潮罗煦钦程云霞
南方农机 2023年24期
关键词:干腐病临安山核桃

李 波 ,徐炳潮 ,罗煦钦 ,程云霞

(1.浙江农林大学数学与计算机科学学院,浙江 杭州 311300;2.杭州市临安区农业农村信息服务中心,浙江 杭州 311300;3.杭州市临安区太阳镇公共服务中心,浙江 杭州 311300)

0 引言

山核桃(Carya cathayensis Sarg.)是胡桃科山核桃属乔木植物,具有很高的经济价值[1],全球各地均有种植,在我国主要分布于浙江、安徽两省。山核桃干腐病又叫山核桃溃疡病、墨汁病[2],是危害山核桃产量产值的重大病害。据调查统计,2018 年杭州市临安区山核桃干腐病发生面积达40 万亩,发病率高达86.5%,安徽省绩溪县和宁国市均有不同面积的山核桃产地受到山核桃干腐病危害,个别地区发病率高达80%~90%[2],对山核桃种植户造成了一定影响。

相关学者在病理和生物学方面对山核桃干腐病进行研究[3],张传清等研究发现山核桃干腐病菌(B.dothidea)菌丝生长的温度范围为8 ℃~40 ℃,适宜温度为26 ℃左右[4];张璐璐研究发现山核桃干腐病的发生与树龄、郁闭度等因子有关,幼龄树木和树龄超过30 年的树木干腐病发病较轻,阳坡比阴坡发病严重[5];袁紫倩等研究发现山核桃干腐病的感病状况和土壤pH、速效钾含量之间呈显著负相关,与土壤氮钾比呈显著正相关,并得出土壤pH 和碱解氮含量、速效钾含量是影响植株山核桃干腐病感病概率的主要因子,而其中以土壤碱解氮的供应最为重要的实验结论[6];吴志辉等研究发现冬季温度较高,降雨量严重不足,而春季雨水又过多的年份,通常病害发生十分严重[7];曹跃腾等在ResNet 算法基础上开发了一种轻量化病虫害识别算法Simplify-ResNet[8],为病虫害识别提供有效算法;宋中山等提出的基于二值化的Faster R-CNN(Binary Faster R-CNN)区域检测神经网络模型对柑橘的黑斑病、溃疡病、黄龙病、疮痂病、健康叶片的平均检测准确率分别为87.2%、87.6%、89.8%、86.4%、86.6%[9],对复杂背景下的病斑检测也有较好的效果;冯亚枝等通过分析气候因素与种植规模对山核桃产量的影响,建立了以Lasso-GM 为基础的山核桃产量预测模型[10];夏其表等通过研究建立了基于SFM 算法的山核桃生长发育三维模型[11],通过图形方式为研究者展现山核桃生长过程中出现的各类规律。基于上述分析,本研究通过建立干腐病与影响因子之间的预测模型,为干腐病预防工作提供参考,为科学防治、绿色防治提供思路。

1 材料与方法

1.1 实验材料

本研究通过机器学习算法对未来5 天或者7 天等短期内干腐病的发病程度进行分类预测[10]。前期准备工作是整理所需的历史气象数据和干腐病测报记录,干腐病测报记录中共有87 条可用于模型预测的数据,分别记录于临安区太阳镇武村、临安区湍口镇湍口村和临安区龙岗镇兴龙村。历史气象数据是从临安区气象局获得的临安区各个站点的气象数据,采用距离干腐病记录地点最近的气象站数据,即临安区太阳镇太源村宋家(K1250)、临安区湍口镇湍口村小学操场(K1610)和临安区龙岗镇兴龙村西部基地(K1156)站点信息。图1 为山核桃干腐病发病程度数据中各类别占比。

图1 山核桃干腐病发病程度数据中各类别占比

山核桃干腐病发生程度根据病斑数目进行划分,将得到已发生的干腐病严重程度,可以作为统计数据为日后其他工作提供帮助及参考;根据气象指标[12]进行划分并建立相应模型后,可以通过天气预报的气象数据进行干腐病发病程度的预测,因此图1 中的发生程度是根据气象指标进行划分的,更加符合机器学习算法模型对未来发病程度的预测。用气象指标进行划分主要参考李绍进等起草的标准《山核桃干腐病发生气象等级》[13-14]。

1.1.1 干腐病测报数据获取及预处理

从专家记录的干腐病实地观测报告中获取到临安区2013 年、2015 年、2016 年、2017 年的干腐病测报数据并进行纵向处理(2014 年数据因丢失未选取)。将观测日期对应的10 株山核桃干腐病病斑数目累加,并取平均值作为当时的病斑数目和整理过后的历史气象数据对应。

1.1.2 气象数据获取及预处理

所采集的气象因素数据包括每个站点每小时的温度(0.1 ℃)、湿度(%RH)、降水量(0.1 mm)。将记录干腐病发病情况日期前5 天(包括记录当天)的温湿度数据进行累加取平均,对降水量进行累加得到所需的数据。

1.2 实验方法

1.2.1 特征选取

特征选取采用主成分分析(PCA)和皮尔逊相关系数结合的方法,通过对比选出对分类结果影响较大的相关因子。

主成分分析法是一种降维的统计方法,借助主成分的方差来表达,方差越大代表此特征包含的信息越多,对最终分类结果的影响越大。皮尔逊相关系数用于度量自变量与因变量之间的相关性,是一种线性相关分析,虽然自然界中存在的相互影响关系大多属于非线性,但是皮尔逊相关系数可以作为其他分析方法的辅助手段,从而得到更好的分析结果。皮尔逊相关系数得到的结果如表1所示。

表1 皮尔逊相关系数分析表

从表1中可以看出与发病程度类别相关性最低的是风速,仅有0.15,再结合主成分分析(PCA)做综合对比考量选出实验所需特征。主成分分析结果如图2所示。

图2 主成分分析结果图

从图2 中可以看出候平均温度、候平均湿度、候降水量和病斑数目的个体解释方差要大于风速的个体解释方差,上述前四个特征的累计解释方差相加后上升度大于风速相加后的累计解释方差上升度,这一结果和皮尔逊相关系数得到的结果基本一致。

因此,综合考虑后决定选取候平均温度、候平均湿度、候降水量和病斑数目作为实验所需特征。

1.2.2 XGBoost算法

XGBoost(eXtreme Gradient Boosting)算法具有较高的效率和预测准确度[15]。XGBoost 算法采用分布前向加性模型,通过优化结构化损失函数实现弱学习器的生成,并且加入了正则项的损失函数以降低过拟合风险[16],使用预排序、加权分位数等技术来提高算法性能[15]。可用于回归、分类[17]、排序等任务。其基本工作过程如下:对特征进行预排序,然后分裂,将每一个叶子节点分数加权相加得到最终结果,XGBoost算法工作过程如图3 所示。

图3 XGBoost算法工作过程

2 结果及分析

2.1 模型参数设置

经训练得到的XGBoost模型参数设置如表2所示。

表2 XGBoost参数设置表

2.2 实验结果

为避免训练集当作测试集来验证模型的问题,选用五折交叉验证方法[16]来测试模型。本研究对比了逻辑回归、BP神经网络和XGBoost三种算法作为山核桃干腐病发病程度识别分类器的结果,具体如表3所示。

表3 各模型分类结果评价指标对比

从表3 中可以得出:XGBoost 算法建立的模型要优于另外两种算法建立的模型。本实验中XGBoost算法构建的模型优于其他模型的原因在于其预测结果是赋予一定权重的叶子节点相加得到,而非简单的函数对应关系。

XGBoost 算法通过计算特征得分,对特征重要性进行排名,即可得到哪个特征的变化对干腐病发病的影响较大,从而采取相应的防治措施,具有一定的实际意义。图4 是四种特征对干腐病发病程度影响的排名。其中,候平均温度得分79,是山核桃干腐病发病程度气象判别指标中的关键指标;候平均湿度得分30;候降水量得分12;病斑数目得分29。从XGBoost算法给出的各特征得分可以看出,山核桃干腐病发病期未来5 天的平均温度和平均湿度变化会对干腐病的发病程度产生较大影响,符合诸多学者对病原菌在何种环境下易感易发的研究结论。

图4 特征重要度排名

3 实验讨论

本研究基于集成学习算法XGBoost、逻辑回归和BP 神经网络分析山核桃干腐病发病程度和候平均温度、候平均湿度、候降水量和病斑数目的关系,在训练完成后选出预测结果最好的算法。从不同评价指标来看,XGBoost 算法均优于其他两个算法,采用XGBoost 算法给出的特征权重排名作为干腐病影响因子排名结果。

经过实验发现短期干腐病发病程度的影响因子中,候平均温度的得分比其他三个影响因子的得分总和还要高,与张传清等学者对干腐病病原菌适宜温度的研究结果相吻合[4];候平均湿度和病斑数目得分接近,属于次要影响,但是众多学者在研究干腐病发病机理的时候将病斑数目作为弱影响因子或者不在考虑范围内;而候降水量在短期干腐病发病程度的预测中得分最低,表明其影响最小。

诸多学者还研究了土壤[6]、管理条件和树龄[5]等影响因素与干腐病发病的关系,但是考虑到未来5 天或者7 天内干腐病的发病受上述因素影响较小,所以未列入此次研究中,这是本实验的不足之处。

4 结语

1)将候平均温度、候平均湿度、候降水量和病斑数目对短期内山核桃干腐病发病程度的影响进行排名,由图4 可以得出候平均温度对山核桃干腐病发病程度影响最大,候平均湿度和病斑数目次之,候降水量影响最小。

2)集成机器学习算法XGBoost 在山核桃干腐病发病程度多分类预测问题上得到的效果优于传统机器学习算法。

猜你喜欢
干腐病临安山核桃
石榴干腐病及其防治技术研究进展
山核桃
我校临安校区简介
苹果干腐病咋防治
云南省石榴干腐病病菌生物学特性研究及其防治药剂筛选
石榴干腐病的发生与防治
浙江临安郎碧村宋墓 一座平凡墓葬的启示
山核桃
临安37吨电镀污泥倾倒者被查处
美洲山核桃中微量元素的组成