公开/公告号CN112651168A
专利类型发明专利
公开/公告日2021-04-13
原文格式PDF
申请/专利权人 南京航空航天大学;
申请/专利号CN202011397119.9
申请日2020-12-02
分类号G06F30/27(20200101);G06N3/04(20060101);G06N3/08(20060101);G06Q10/04(20120101);G06Q50/26(20120101);
代理机构32326 南京乐羽知行专利代理事务所(普通合伙);
代理人李培
地址 210000 江苏省南京市江宁区将军大道29号
入库时间 2023-06-19 10:35:20
技术领域
本发明涉及一种基于改进神经网络算法的建设用地面积预测方法,属于数据预测技术领域。
背景技术
随着乡村振兴战略的提出,社会越来越关注村镇的可持续健康发展,建设用地面积作为表征其发展的最基本指标之一,能否把握某地区各影响因素与建设用地面积变化之间的关系,并对该地区的用地面积进行预测,是本发明的基本出发点。
建设用地面积变化受多种驱动因子的影响和制约,是一个动态的、非线性与多反馈回路的复合系统。现有的建设用地面积预测模型大多是线性回归模型,该模型需要先判断变量之间是否是线性关系,不能很好的拟合非线性数据,无法准确提取建设用地面积变化规律。
神经网络作为一个高度复杂的非线性动力学习系统,特别适合处理需要同时考虑许多因素的、不精确的信息处理问题,具有良好的非线性映射能力。
发明内容
发明目的:针对现有技术中存在的问题与不足,本发明提供一种基于改进神经网络算法的建设用地面积预测方法,以弥补现有预测方法的不足,更好地把握某地区各影响因素与建设用地面积变化之间的关系,提高建设用地面积预测的精度。
技术方案:基于改进神经网络算法的建设用地面积预测方法,其特征在于:包括如下步骤:
步骤一、收集数据——收集各年度待预测地区建设用地面积及其影响因素样本数据;
步骤二、构建网络——构建含一层隐含层的三层结构反向传播神经网络,以影响因素项数作为输入层节点数、以1作为输出层节点数,
结合试凑法和以下公式求解得到一组隐含层节点数;
m=log
其中,m:隐含层节点数;n:输入层节点数;l:输出层节点数;α:1-10之间的常数;
步骤三、训练模型,具体包括:
第一步、将收集的样本数据按前、中、后时间顺序分为训练集、验证集和测试集,对模型进行假设,并确定所述反向神经网络的输入与输出;
第二步、用训练集中的样本数据分别训练不同隐含层节点数的各所述神经网络,正向计算各层单元的激活值、反向计算各层单元激活值误差、计算代价函数关于各参数的偏导项,利用梯度下降法更新参数矩阵、重复所述正向计算与反向计算,直至各所述神经网络的预测输出值与实际值误差在5%以内,固定此时的参数,进而确定相应的假设模型;
第三步、将验证集样本数据分别输入各假设模型,预测相应的建设用地面积值,当误差大于5%时,重新训练该模型,当误差小于5%时,进入下一步,以此来对模型进行验证。
第四步、将测试集样本数据分别输入各假设模型,得到相应的预测建设用地面积值;
步骤四、模型定型——比较各假设模型相应的测定系数、变异系数,以其中精度最高的假设模型作为预测未来建设用地面积的定型模型。
本发明进一步限定的技术特征为:在步骤四中,所述测定系数的计算包括如下几个步骤:
A1,获取所预测年份的土地面积影响因数样本数据;
A2,计算每个神经网络模型的估计值;
A3,计算样本数据的总平方和TSS,计算公式用方程(4);
A4,计算残差平方和RSS,计算公式用方程(5);
A5,最终计算测定系数R2,计算公式用方程(6);
其中,m代表神经网络预测的次数,y代表所预测年份的实际样本输出值,
作为优选,在步骤四中,变异系数反映了数据的离散程度,其计算公式如下:
其中,σ是一组数据的标准差,μ是该组数据的平均值。
作为优选,在步骤四中,若神经网络模型的变异系数远小于15%,则固定其计算参数为有效性参考值。
作为优选,在步骤四中,分析各神经网络模型算法的测定系数对应的测定系数值,越接近于1则表明该神经网络模型对实际规律的非线性拟合效果越好,则该神经网络模型可用以预测建设用地的面积。
作为优选,所述建设用地面积变化的假设模型可表示为公式(8):
y=h
上述公式可简写为
y=h
式中:y表示雅安市建设用地面积;x
有益效果:与现有技术相比,本发明具有以下优点:
1)通过改进反向传播神经网络模型,提供了一种更科学地运用大数据分析发掘用地数据的隐含非线性规律的方法,并可用于提取建设用地面积变化规律,并对改进后的反向传播神经网络算法模拟结果的有效性进行了验证,大大提高了建设用地面积预测的精度。
2)提前设定预测输出值与实际值误差在5%以内,能有效改进反向传播神经网络容易陷入局部极小值的问题。
3)反向传播神经网络采用三层结构,设定隐含层层数为1,采用试凑法与公式结合的方法来确定隐含层神经元节点个数,这能更好的确定反向传播神经网络的隐含层层数以及隐含层单元数,简化了应用反向传播神经网络进行数据预测的步骤。
4)分析测定系数、变异系数以验证改进后的反向传播神经网络算法模拟结果的有效性,有效则用其进行预测,无效则将该模型舍去,加入此步骤防止了不准确预测情况的出现。
附图说明
图1为本发明实施例设定预测输出值与实际值相对误差在20%以内的神经网络误差函数曲线;
图2为本发明实施例设定预测输出值与实际值相对误差在10%以内的神经网络误差函数曲线;
图3为本发明实施例设定预测输出值与实际值相对误差在5%以内的神经网络误差函数曲线;
图4为本发明实施例使用不同神经网络分别进行100次预测的结果及误差示意图;其中:
a:BPNN(3HL)预测结果,c:BPNN(4HL)预测结果,e:BPNN(9HL)预测结果;b:BPNN(3HL)预测结果误差,d:BPNN(4HL)预测结果误差,f:BPNN(9HL)预测结果误差。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明。
如图1-4所示,本实施例以预测雅安市的用地面积为例来说明本发明的具体实施过程,包括如下步骤:
步骤一、收集并标准化雅安市数年的建设用地面积及其影响因素数据;
收集雅安市连续14年的数据,该数据包括各年的建设用地面积数据以及14种影响因素数据。则雅安市建设用地面积变化的假设模型可表示为公式(8):
y=h
上述公式可简写为
y=h
式中:y表示雅安市建设用地面积;x
步骤二,针对反向传播神经网络(BPNN)容易陷入局部极小值、隐含层神经元个数不易确定这两个问题对反向传播神经网络(BPNN)进行了改进。
首先,针对BPNN容易陷入局部极小值的问题,以较常见的神经网络误差函数来说明算法的改进过程,图1、2、3是神经网络误差函数曲线,神经网络训练的目标是求取全局最小值(global minima)处附近对应的参数值。
图1中,在网络训练中提前设定预测输出值与实际值相对误差在20%以内,当神经网络预测误差超出该范围,重新训练神经网络。此时误差函数在该误差区间内有三个极小值,而神经网络训练前均需随机设定参数的初始化值,因此,利用梯度下降法,神经网络训练过程中有可能陷入局部最小值,而不能准确提取全局最小值处附近对应的参数,此时该算法的预测值离散性大、预测精度差。
图2中,提前设定预测输出值与实际值相对误差在10%以内,否则继续重新训练,由图可知,利用梯度下降法,神经网络此时能较好的学习规律并预测。
图4中,提前设定预测输出值与实际值相对误差在5%以内,此时神经网络能更好的学习规律并预测。
为了防止神经网络对函数的过拟合,设定的预测输出值与实际值之间的相对误差不能太小。故这种逐步改进设定预测输出值与实际值相对误差的方法能一定程度改善BPNN陷入局部极小值的问题,提高神经网络的预测精度。本实施例中针对反向传播神经网络(BPNN)容易陷入局部极小值这个问题,提前设定预测输出值与实际值误差在5%以内,此时神经网络能更好的学习规律并预测。
隐含层神经元个数不易确定这个问题,将隐含层层数设为1,采用试凑法与公式(1)、(2)、(3)结合的方法来确定隐含层神经元节点个数为3、4或9,并构建了结构为14-3-1、14-4-1、14-9-1的三个神经网络模型。
m=log
其中,m:隐含层节点数;n:输入层节点数;l:输出层节点数;α:1-10之间的常数。
步骤三,用改进后的反向传播神经网络(BPNN)算法模型学习并提取雅安市的各影响因素与建设用地面积之间的规律;改进后的BPNN的具体运行步骤如下:
第一步、将收集的样本数据按前、中、后时间顺序分为训练集、验证集和测试集,对模型进行假设,并确定所述反向神经网络的输入与输出;
第二步、用训练集中的样本数据分别训练不同隐含层节点数的各所述神经网络,正向计算各层单元的激活值、反向计算各层单元激活值误差、计算代价函数关于各参数的偏导项,利用梯度下降法更新参数矩阵、重复所述正向计算与反向计算,直至各所述神经网络的预测输出值与实际值误差在5%以内,固定此时的参数,进而确定相应的假设模型;
第三步、将验证集样本数据分别输入各假设模型,预测相应的建设用地面积值,当误差大于5%时,重新训练该模型,当误差小于5%时,进入下一步,以此来对模型进行验证。
第四步、将测试集样本数据分别输入各假设模型,得到相应的预测建设用地面积值。
本实施例中将数据集中的前12年样本数据作为训练集,影响因素作为神经网络输入,历年建设用地面积数据作为神经网络输出。将第13年的样本数据作为验证集数据输入训练好的神经网络,用于提高训练精度,将第14年的样本数据作为测试集输入BPNN。
具体操作步骤如下:
(1)已知有m个样本数据的训练集为{(x
L:神经网络结构的总层数,这里L=3;
S
θ
a
激活值:由一个神经元或单元计算并输出的值;
g(x):激活函数sigmoid,
δ
J(θ):假设模型h
Δ
(2)令Δ
fori=1tom
计算a
其中a
a
a
计算δ
其中δ
δ
Δ
end for
(3)根据Δ
(4)当δ
当δ
(5)将验证集样本数据输入假设模型,预测相应的建设用地面积值,当误差大于5%时,重新训练该模型,当误差小于5%时,进入下一步,以此来对模型进行验证。
(6)输入测试集样本数据,并预测相应的建设用地面积值。
将结构为14-3-1、14-4-1、14-9-1的三个BPNN神经网络模型代入到上述步骤中并分别训练预测100次,绘制的结果见图4。
步骤四,分析测定系数(R
测定系数(R
A1,获取样本数据;
A2,计算每个神经网络模型的估计值;
A3,计算样本的总平方和TSS(Total Sum of Squares),计算公式用方程(4);
A4,计算残差平方和RSS(Residual Sum of Squares),计算公式用方程(5);
A5,最终计算测定系数R2,计算公式用方程(6);
其中,m代表神经网络预测的次数,y代表所预测年份的实际样本输出值,
变异系数(CV)反映了数据的离散程度,其计算公式如下
其中,σ是一组数据的标准差,μ是该组数据的平均值。在进行数据统计分析时,如果变异系数大于15%,则要考虑该该组数据可能误差较大,应更新模型参数重新训练并预测。
根据公式(6)、(7)得到三个不同结构的反向神经网络算法模拟结果的测定系数(R
表一
其中:HL:隐含层单元个数;MAE:平均绝对误差;RMSE均方根误差;AV平均值;RE相对误差;Variance方差;SD标准偏差。
分析反映不同结构神经网络算法预测结果有效性的指标变异系数,各结构的变异指标(CV)分别是0.0648%、0.0620%、0.0810%,均远小于15%的数据有效性参考值,因此上述不同结构神经网络算法的预测结果均有效。
分析各算法的测定系数(R
本实施例还将BPNN与其他神经网络模型预测结果对比:
构建结构为1-1-15-1的灰色模型神经网络(GMNN)、14-13-2-1的广义回归神经网络(GRNN)模型,分别训练预测100次。
将BPNN(4HL)模型的运算结果与GMNN、GRNN模型进行比较,结果如表二所示。
表二
分析变异系数(CV):三种神经网络模型的CV值均小于15%,所以三种模型均有效。但是在实际运行该算法程序时发现GRNN对训练样本量要求较高,不能从现有的少量数据中提取出发展规律,故将GRNN舍去。
对比BPNN(4HL)和GMNN的其他评价指标,BPNN(4HL)的各项误差的绝对值都较小,因此,在三种不同的神经网络预测中,BPNN(4HL)的精度最高,这表明本专利中对BPNN的改进部分是有效的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。
机译: 基于神经网络算法的对象控制系统及基于神经网络算法的评价方法
机译: 基于与神经网络算法关联的元数据在神经突触基质上实现神经网络算法
机译: 基于与神经网络算法关联的元数据在神经突触基质上实现神经网络算法