技术领域
本发明属于人工智能领域,主要涉及基于可信度的随机森林土壤重金属风险评价方法。
背景技术
土壤无机污染物中以重金属比较突出,主要是由于重金属不能为土壤微生物所分解,而易于积累.转化为毒性更大的甲基化合物,甚至有的通过食物链以有害浓度在人体内蓄积,严重危害人体健康。土壤重金属污染严重威胁生态系统和农产品安全。
目前有研究将随机森林算法用于土壤重金属含量影响因子评价,例如申请号为CN201610997260.X的专利文献。但是,随机森林算法的分类精度还有不足:
随机森林算法(Random Forest,RF)包含两个部分,分别是Bagging算法(Bootstrap aggregating,引导聚集算法)和随机子空间算法(Random Subspace Method,RSM)。Bagging算法使用有放回采样法从训练集中得到子训练集,并对子训练集训练出基学习器,对结果进行投票,而获得投票最多的作为输出的结果。而随机子空间算法,是对特征集进行无替换的随机采样形成特征子集,并使用特征子集训练基学习器,重复该过程训练出n个基学习器,最后,对n个基学习器的结果使用简单投票法获得最终结果。随机森林算法将CART决策树作为基学习器,首先使用Bagging获取子训练集,再使用随机子空间算法对子训练集抽取部分特征,形成最终子训练集输入CART决策树来学习训练。因为输入给每个基学习器的训练集不同,每个基学习器的学习结果也不同,所以随机森林泛化能力强,且每个基学习器的训练过程彼此独立,可并行执行。面对分类问题时,随机森林直接选择得票最多的类别作为最后的分类结果。因为每个基学习器学习的数据不同,所以有的基学习器分类性能更优或者更差。投票法给每个基学习器同样的投票权利,优秀的基学习器不能获得更多的投票数,这一点限制了随机森林的分类精度。
已经有许多学者尝试给分类性能优异的基学习器分配更高的权重,并证实了该方法能有效提高随机森林的分类准确率。目前,有学者以基学习器的袋外准确率或者后验概率作为分配权重的依据。但是,风险评价面对的数据集往往是不平衡甚至高度不平衡的(有风险样本占总样本比例不足10%),这些依据无法在面对不平衡数据集时,针对性的提高对少数类样本的分辨能力。
发明内容
针对现有技术无法应对不平衡数据集的缺陷,本发明提供的技术方案提供一种基于可信度的随机森林土壤重金属风险评价方案。
本发明技术方案为一种基于可信度的随机森林土壤重金属风险评价方法,包括以下步骤:
步骤1,数据预处理,包括对原始数据集进行预处理,得到未标记的数据集;然后进行数据标记,包括采用土壤污染评价方法标记数据集中样本是否有污染风险;
步骤2,数据集划分,包括对数据集按不同类别所占比例分层采样,划分训练集和测试集;
步骤3,模型训练,包括使用基于真阳率加权投票的随机森林算法对训练集进行学习得到模型,将测试集输入模型得到风险评价结果;使用贝叶斯优化算法以准确率为优化目标,找到使准确率最高的参数组合;
所述基于真阳率加权投票的随机森林算法实现如下,
对训练集使用子装袋算法,强制选择所有的少数类样本,仅对多数类样本有放回抽样,得到子训练集S
对子训练集S
将测试集输入所有基学习器,根据基学习器的分类结果计算真阳率以及每个基学习器的权重;
对于测试集中的样本,依据每个基学习器的权重,计算得出最终分类结果;
步骤4,利用训练好的模型进行进行土壤重金属风险评价评估。
而且,步骤1中对数据集中样本进行标记时,是采用二分类标记方式。
而且,步骤2中数据集划分是按照每种类别样本数的比例进行分层采样划分。
而且,步骤3中,根据基学习器的分类结果计算真阳率以及每个基学习器的权重,实现方式如下,
其中,TP表示风险样本中被归类为风险样本的数量,FN表示风险样本中被归类为非风险样本的数量,TPR表示真阳率;
其中,TPR(i)表示第i个基学习器的可信度,TPR(j)表示第j个基学习器的可信度,weigt(i)表示第i个基学习器的权重。
对于测试集中的样本x,依据得到的权重,计算得出最终分类结果H(x)如下,
其中,weight(t)表示第t个基学习器的权重,h
而且,步骤3中使用贝叶斯优化算法以准确率为优化目标,找到使准确率最高的参数组合,实现方式如下,
使用贝叶斯优化算法以最大化风险评价模型的准确率为目标,找到最优超参数组合,准确率Acc计算如下,
其中,TP表示风险样本中被归类为风险样本的数量,TN表示非风险样本中被归类为非风险样本的数量,P表示风险样本的数量,N表示非风险样本的数量;
贝叶斯优化以最大化准确率为目标函数,风险评价模型的超参数作为目标函数的自变量,在指定的超参数搜索空间中为每个超参数选择若干个采样点,使用高斯过程来代理目标函数的先验分布;通过最大化采集函数在目标函数自变量的域中选择一个新的自变量值并计算出对应的目标函数值,最后整合数据集更新概率模型,直到达到预设的迭代次数上限,输出结果,得出使目标函数最优的参数组合。
而且,采用最大化高斯过程的置信边界作为采集函数。
本发明还提供一种基于可信度的随机森林土壤重金属风险评价系统,用于实现如上所述的一种基于可信度的随机森林土壤重金属风险评价方法。
而且,包括以下模块,
第一模块,用于数据预处理,包括对原始数据集进行预处理,得到未标记的数据集;然后进行数据标记,包括采用土壤污染评价方法标记数据集中样本是否有污染风险;
第二模块,用于数据集划分,包括对数据集按不同类别所占比例分层采样,划分训练集和测试集;
第三模块,用于模型训练,包括使用基于真阳率加权投票的随机森林算法对训练集进行学习得到风险评价模型,将测试集输入模型得到风险评价结果;使用贝叶斯优化算法以准确率为优化目标,找到使准确率最高的参数组合;
所述基于真阳率加权投票的随机森林算法实现如下,
对训练集使用子装袋算法,强制选择所有的少数类样本,仅对多数类样本有放回抽样,得到子训练集S
对子训练集S
将测试集输入所有基学习器,根据基学习器的分类结果计算真阳率以及每个基学习器的权重;
对于测试集中的样本,依据每个基学习器的权重,计算得出最终分类结果;
第四模块,用于利用训练好的风险评价模型进行土壤重金属风险评价评估。
或者,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于可信度的随机森林土壤重金属风险评价方法。
或者,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于可信度的随机森林土壤重金属风险评价方法。
本发明提供了一种基于可信度的随机森林土壤重金属污染风险评价技术方案,实现了不平衡数据集中少数类样本的分类精度的提升,进一步提高了随机森林算法的整体精度,也为土壤重金属风险评价提供了一种新的解决方案。该方法具有简单、有效、精度高、易于实现的特点。
附图说明
图1为本发明实施例的流程图。
图2为本发明实施例的实例结果与原算法的准确率对比图。
图3为本发明实施例的实例结果与原算法的召回率对比图。
具体实施方式
本发明技术方案可采用计算机软件方式支持自动运行流程。以下结合附图和实施例详细说明本发明技术方案。
本发明针对现有技术缺陷,提出基于真阳率为随机森林基学习器赋权并用于土壤重金属污染风险评价。参见图1,本发明实施例提供的基于可信度的随机森林土壤重金属风险评价方法,包括以下步骤:
(1)数据预处理:包括对原始数据集进行预处理,得到未标记数据集;包括数据标记,包括选择土壤污染评价方法标记样本是否有污染风险。
进一步地,本发明优选提出对数据集进行标记时是二分类标记,无风险样本标记为-1,有风险样本标记为1。
实施例中,首先进行特征选择,对原始的重金属含量数据集,去除具有大量缺失值的特征,对有少量缺失值的特征使用邻近值填补。具体实施时,为确保后续数据标记的精度,可以参考《土壤环境质量农用地土壤污染风险管控标准(试行)》(标准号:GB15618-2018)规定的镉、汞、铅、铬、镍、砷、锌、铜八种重金属农用地土壤污染风险筛选值和管制值。依据重金属污染风险筛选值选用单因子污染指数法计算每种重金属的污染指数,再选用内梅罗综合污染指数法或地积累指数法等污染评价方法标记数据集目标值。
为便于实施参考起见,对基于单因子污染指数法和内梅罗综合污染指数法的实现介绍如下:
单因子污染指数法:该方法是以土壤元素背景值为评价标准来评价重金属元素的累计污染程度,计算方法如公式(1)所示:
P
其中,P
内梅罗综合污染指数法:该方法突出了高浓度污染物对土壤环境质量的影响,能反映出各种污染物对土壤环境的作用,计算方法如公式(2)所示:
其中,P是采样点综合八种重金属得到的污染指数,max(P
得到内梅罗污染指数后,据表(1)得到样本标记目标值。
表(1):样本标记参考值
(2)数据集划分:包括对数据集按不同类别所占比例分层采样,划分训练集和测试集,其中训练集包含样本数占总样本数的75%,测试集包含样本数占总样本数的25%。
进一步地,本发明优选提出数据集划分是按照每种类别样本数的比例进行分层采样划分。具体实施时,可以根据k折交叉的k值确定划分出的子数据集个数。
实施例依据数据集中每个类别的比例分层抽样,确保划分出的数据集均包含每个类别的样本。
(3)模型训练:使用基于真阳率加权投票的随机森林算法对训练集进行学习得到风险评价模型,最后将测试集输入模型得到风险评价结果;训练过程如下,
输入:设有训练集S=({x
输出:分类结果H(x)
步骤1:对训练集S=({x
步骤2:对S
步骤3:将测试集S′=({x
其中,TP表示风险样本中被归类为风险样本的数量,FN表示风险样本中被归类为非风险样本的数量,TPR表示真阳率。
其中,TPR(i)表示第i个基学习器的可信度,TPR(j)表示第j个基学习器的可信度,T表示基学习器的数量,weight(i)表示第i个基学习器的权重。该方程已被证明满足归一化条件,并且可信度越高,权重越大。
步骤4:把测试集输入到步骤3形成的风险评价模型中,对于测试集中的样本x,依据公式(4)得到的权重,使用公式(5)计算得出最终分类结果H(x)。
其中,weight(t)表示第t个基学习器的权重,h
步骤5:使用贝叶斯优化算法以最大化风险评价模型的准确率为目标,找到风险评价模型的最优超参数组合。准确率Acc计算公式如下:
其中,TP表示风险样本中被归类为风险样本的数量,TN表示非风险样本中被归类为非风险样本的数量,P表示风险样本的数量,N表示非风险样本的数量。
贝叶斯优化以最大化准确率为目标函数,风险评价模型的超参数作为目标函数的自变量,在指定的超参数搜索空间(例如表2所示)中为每个超参数选择若干个采样点,使用高斯过程(Gaussian Process)来代理目标函数的先验分布。选择最大化高斯过程的置信边界(Gaussian Process-Upper Confidenc Bound)作为采集函数(具体实施时也可以选择其他方法作采集函数),通过最大化采集函数在目标函数自变量的域中选择一个新的自变量值并计算出对应的目标函数值,最后整合数据集更新概率模型,直到达到预设的迭代次数上限,输出结果,得出使目标函数最优的参数组合。
表2:风险评价模型超参数及其取值范围
最大化高斯过程的置信边界是把后验分布的均值和协方差求一个加权和来寻找最大化高斯过程的置信区间的点。均值对应的是开发策略,协方差对应的是探索策略。
其中,μ(λ)表示均值,σ(λ)表示协方差,
(4)利用训练好的模型进行土壤重金属风险评价:
具体实施时,可以进行模型结果评估。根据公式(6)(7)计算风险评价结果的准确率和精准率。召回率(也就是真阳率)按照上文提到的公式(3)来计算,得到的结果用于判断模型对每个类别的分类性能。
下面以武汉周边农田重金属含量数据集为例对本发明提出方法进行说明:首先对原始数据进行特征选择,数据集标记等预处理操作;其次按照每种类别样本的比例对数据集进行分层采样划分,方便在训练时进行k折交叉处理;然后将训练集输入算法训练出基学习器,根据公式(3)计算每个基学习器的TPR值,利用公式(4)得到每个基学习器的权重。最后根据公式(5)中的函数得出最终分类结果,将得到的分类结果应用公式(6)、(7)(3)得到准确率,精准率和召回率。使用基于真阳率加权投票的随机森林(TWVRF)和原始随机森林算法(RF)对同一数据集进行了50次训练,并记录了每次训练的准确率和召回率,并画出相应折线图(见图2,图3)。比较后可以发现TWVRF的召回率明显高于RF算法,这表明以TPR作为可信度来为基学习器分配权重有效地提高了RF的区分有风险样本的能力。
具体实施时,本发明技术方案提出的方法可由本领域技术人员采用计算机软件技术实现自动运行流程,实现方法的系统装置例如存储本发明技术方案相应计算机程序的计算机可读存储介质以及包括运行相应计算机程序的计算机设备,也应当在本发明的保护范围内。
在一些可能的实施例中,提供一种基于可信度的随机森林土壤重金属风险评价系统,包括以下模块,
第一模块,用于数据预处理,包括对原始数据集进行预处理,得到未标记的数据集;然后进行数据标记,包括采用土壤污染评价方法标记数据集中样本是否有污染风险;
第二模块,用于数据集划分,包括对数据集按不同类别所占比例分层采样,划分训练集和测试集;
第三模块,用于模型训练,包括使用基于真阳率加权投票的随机森林算法对训练集进行学习得到风险评价模型,将测试集输入模型得到风险评价结果;使用贝叶斯优化算法以准确率为优化目标,找到使准确率最高的参数组合;
所述基于真阳率加权投票的随机森林算法实现如下,
对训练集使用子装袋算法,强制选择所有的少数类样本,仅对多数类样本有放回抽样,得到子训练集S
对子训练集S
将测试集输入所有基学习器,根据基学习器的分类结果计算真阳率以及每个基学习器的权重;
对于测试集中的样本,依据每个基学习器的权重,计算得出最终分类结果;
第四模块,用于利用训练好的模型进行土壤重金属风险评价评估。
在一些可能的实施例中,提供一种基于可信度的随机森林土壤重金属风险评价系统,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于可信度的随机森林土壤重金属风险评价方法。
在一些可能的实施例中,提供一种基于可信度的随机森林土壤重金属风险评价系统,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于可信度的随机森林土壤重金属风险评价方法。
本文中所描述的具体实例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
机译: 基于鱼心电信号的水中有机物和重金属污染综合评价方法及系统
机译: 基于鱼心电信号的水中有机物和重金属污染综合评价方法及系统
机译: 基于鱼心电信号的水中有机物和重金属污染综合评价方法及系统