浅谈人工神经网络在林业中的应用

时间:2022-08-13 02:59:12

浅谈人工神经网络在林业中的应用

摘要 以c++程序设计为平台,运用人工神经网络的方法建立林分林种出材率的BP神经网络模型。通过查阅学习伐区设计资料和实际生产码单数据,最后确定以平均树高,平均胸径,树种年龄,保留密度,蓄积量为输入输入神经元,分析明确了从影响BP算法的学习率和预测精确度的因素中的隐含层的神经元数量,训练次数,隐含层函数,样本数量应诉进行对林分材种出材率预测的BP网络模型进行优化设计,也明确了林分材种出材率预测的人工神经网络模型。

关键词 人工神经网路 林分材种出材率 BP算法

引言

林分材种出材率是林分调查工作的重要指标,它可以进一步评价森林木材资源的经济价值,而研究森林木材,又可以合理正确的经营森林资源,达到人与自然和谐相处的目的。林分林种出材率就是原木材积于立木材积之比,我国现行的森林采伐限额制度、查处乱砍滥伐林木案件、制订林业发展规划、计划和编制森林经营方案、预测和计算、开展森林资源资产评估等等,都需掌握积蓄量和材种的出材率的指标。我国已经不断学习借鉴前苏联的先进技术编制自己的材种出材率表了,随着我国天然林保护工程的全面实施和林业分类经营的逐步推行,人工商品林比例的不断提高,我国森林结构和性质也有所变化,所以传统的统计学以难以解决很多问题,运用人工神经网络在林业生成与运用则是一个不二之选的方法,对林业的发展也有很大的理论价值和推广意义。

人工神经网络(Artificial Neural Network-ANN),简称“神经网络”,是由大量处理单元过极其丰富和完善的互联组成的非线性、自适应信息处理系统。它的提出是基于现代神经科学研究成果上,以模拟大脑神经网络处理、记忆信息的方式进行信息处理。涉及学科较多,较为广泛。

1 研究内容和方法

平均树高,平均胸径,林种年龄,立地质量,积蓄量,保留密度等等因素都会影响林分材种出材率,而林分林种出材率具有非线性和非确定性的因素,一般采用统计分析方法进行预测采样,需要大量的林木样本元素,模型涉及的许多参数无法或很难有较高的精确度。

人工神经网络(Artificial Neural Network)具有非线性,非局限性,自适应,自组织,自学习的特征,相较于传统的统计学方法,不同之处在于它的容错性和储存量,通过单元之间的相互作用,相互连接能模拟大脑的局限性。ANN的独到之处,也使得人们注意了ANN,并且广泛的应用于各种学科之中,如心理学,逻辑学,数学模型,遗传算法,语音识别,智能控制等等。当然,运用人工神经网络对林分林种出材率进行预测也同样具有很好的效果与实现。

研究主要完成,通过对数据的采样和分析处理,对神经网路预测模型的结构,参数进行优化,再应用到林分材种出材率的预测中。以c++程序设计为设计平台,运用人工神经网络中的BP算法,分析各隐含层神经元的数量,训练的次数,隐含层函数,样本数量,进行优化建立林分材种出材率的预测模型。

1.1BP人工神经网络

BP(Back-Propagation Network)神经网络是一种以误差逆传播算法(BP)训练的多层前馈网络,目前应用较为广泛的神经网络模型之一。BP神经网络能学习和存贮多个输入-输出模式映射关系,而且无需事前对这种映射关系的数学方程进行描述。它通过不断反向传播来调整神经网络的权值和阈值,使神经网络的误差平方和最小。BP神经网络模型拓扑结构由三层组成分别是输入层(input)、隐层(hidelaver)和输出层(output layer)。

BP人工神经网络主要以标准BP算法为主,而标准BP算法有存在许多问题,由于是非线性梯度优化算法,就会存在局部极小值问题,使得精确度受限;算法迭代系数过多,使得学习率降低,收敛速度降低;网络对初始化的值存在发散和麻痹;隐节点不确定性的选取。所以引进了几种BP算法:动量BP算法、学习速率可变的BP算法和LM算法(Levenberg-Marquardt)。动量BP算法以上一次修正结果来影响本次的修正,动量因子越大,梯度的动量就越大。学习效率可变的BP算法怎是力求算法的稳定,减小误差。为了在近似二阶训练速率进行修正时避免计算HeSSian矩阵,选择LM算法。所以为了神经网络计算的速度与精确度,所以运用不同的优化算法来改善BP网络中的局部极小值问题,提高收敛速度和避免了抖动性。

2 基于BP人工神经网络和林分材种出材率预测模型的建立

分析了大量的材种出材率的相关资料后,均有非线性的特征,对于模型的建立和预测,传统的识别系统在研究和实践中有很大的问题,而采用人工神经网络,不仅其特征是非线性,而且人工神经网络具有较为稳定的优越性,所以,对于林分材种出材率的预测和建立采用BP人工神经网络。

2.1建模工具

研究采用c++程序设计对数值的计算和预测,对模型进行编译和实现。c++语言是受到非常广泛应用的计算机编程语言,它支持过程化程序设计,面向对象程序设计等等程序设计风格。c++是一门独立的语言,在学习时,可以结合c语言的知识来学习,而c++又不依赖于c语言,所以我们可以不学c语言而直接学习C++。

用c++来模拟BP网络是相对较好的程序设计语言,以面向对象程序设计来设计和实现林分材种出材率的BP算法,直观而简洁。

2.2BP神经网络结构的确定

对于使用BP算法,关键在于隐含层层数和各层节点数。而神经元的输入输出又影响着隐含层层数,而对于BP万罗中的输入输出层是确定的,重点就在于隐含层层数,增加隐含层数可以提高网络的处理能力,是的训练复杂化,样本数目增加,收敛速度变慢等,而隐含层的节点数越多,可以提到其精确度。

研究过程中,多层隐含层会将训练复杂化,所以我们往往选择三层就够了,即一个输入层,一个隐含层,一个输出层的基本单层BP网络结构。最后确定以下四个神经元:平均树高、平均胸径、林种年龄、每公顷积蓄量作为输入单元。输出单元为林分材种出材率。

结论

以BP神经网络建立林分材种出材率的网络模型,使得出材率的精确度提高。根据样本的选取和整理,算法的优化,避免了异常数据和算法的不安全性对神经网络的学习影响,提高了网络的繁华能力,利用数据归一化节约了网络资源,学习负担减轻,避免了训练过程中的抖动与麻痹状态。岁模型的总体分析,减少神经元个数的输入,权值减少,极大的提高了网络训练中的收敛速度,也使得网络的稳定性和容错性提高。

参考文献:

1 黄传春,基于神经网络林分材种出材率模型研究(硕士学位论文)2007,4

上一篇:城市电网10kV配电系统继电保护分析探讨 下一篇:铸造厂空调安装中存在的问题与处理方法