一种基于CGBP算法的深度基准面拟合方法与流程

文档序号:17665481发布日期:2019-05-15 22:40阅读:761来源:国知局
一种基于CGBP算法的深度基准面拟合方法与流程

本发明涉及海洋无缝垂直基准面构建,特别涉及一种基于cgbp算法的深度基准面拟合方法。



背景技术:

深度基准面是相对于当地长期平均海平面垂线方向以下l的基准面,根据验潮站的验潮资料,采用模型算法或传递算法可计算得到各验潮站的深度基准面。此外,在一般情况下,验潮站的平面位置(x,y)也可获得,所以根据验潮站已知平面位置和深度基准面高,则可采用几何插值或拟合的方法来构建某一区域连续无缝深度基准面。由于验潮站的布设成离散、点状分布特征,从而导致深度基准面也为离散非连续,所以进行深度基准面的高精度拟合对海洋无缝垂直基准面的建立具有重要意义。神经网络算法一直是国内外研究的热点,bp神经网络具有更小的模型误差而被广泛应用。传统的bp网络算法存在自身的限制与不足,主要表现在训练过程的不确定上,例如训练时间过长、陷入局部极小值、学习过程常常发生震荡等。bp网络训练的实质是一个非线性函数目标的优化问题,基于数值优化的训练算法除了利用目标样本的一阶梯度信息,往往还利用目标样本的二阶梯度信息,处理一些问题时在收敛速度上都存在着一定问题。



技术实现要素:

本发明的目的是克服现有技术中的不足,提供一种基于cgbp算法的深度基准面拟合方法,应用于海洋无缝垂直基准面的构建。本发明针对深度基准面的特点及应用需求,采用基于变梯度算法(cgbp)对bp网络进行训练,不仅能够提高收敛速度、减小计算的复杂度,从而提高深度基准面的拟合精度,还可以消除梯度幅度的不利影响。运用变梯度算法训练的神经网络具有很好的泛化能力,可以广泛应用于深度基准面的拟合。

本发明所采用的技术方案是:一种基于cgbp算法的深度基准面拟合方法,包括以下步骤:

步骤a,确定网络结构,确定网络层数、节点数与传递函数;

步骤b,采用基于fletcher-reeves共轭梯度算法对网络进行训练;

步骤c,对网络性能进行测试。

进一步的,步骤a具体包括:

步骤a1,提取验潮站的平面坐标(x,y)作为输入因子,深度基准面值为输出因子,为了实现基于神经网络的深度基准面拟合的数学模型表达为:

l=f(x,y)(1)

神经网络结构模型的输入层取两个神经元,输出层取一个神经元,则神经网络结构模型为2×m×1,其中m的经验取值为:

式中m为隐层节点数;ni为输入节点数;n0为输出节点数;a为1~10之间的常数;

步骤a2,隐层激活函数采用双曲正切s型函数作为传递函数,传递函数的数学表达式为:

式中,net1为隐层神经元的输入加权和;

输出层采用线性传递函数,线性传递函数的数学表达式为:

s2(net2)=net2(4)

式中,net2为输出层的输入加权和。

进一步的,步骤b具体包括:

步骤b1,正向传播阶段:输入已知学习样本,通过步骤a设置的网络结构和前一次迭代的权值和阈值,从网络第一层向后计算各神经元的输出;

步骤b2,反向传播阶段:对权值和阈值进行修改,从最后一层向前计算各权值和阈值对总误差的影响,据此对各权值和阈值进行修改;

步骤b1的正向传播过程和步骤b2的反向传播过程反复交替,直到收敛为止。

其中,步骤b1具体包括:

步骤b11:初始化网络,对每个连接的阈值和权值分别赋予区间(-1,1)的随机数;

步骤b12:输入学习样本:

ti=li(6)

式中,p2i为各验潮站的平面坐标,xi为第i个验潮站的横轴坐标;yi为第i个验潮站的纵轴坐标;ti为网络的期望输出;li为各验潮站对应的深度基准面值。

其中,步骤b2具体包括:

采用基于fletcher-reeves共轭梯度算法的训练方法对网络进行训练,x(k)为第k次迭代时网络所有权值和阈值组成的向量;s(x(k))为由x(k)的各分量组成的向量空间中的搜索方向;η(k)为在s(x(k))方向上的搜索步长;

基于fletcher-reeves共轭梯度算法的计算过程如下:

基于fletcher-reeves共轭梯度算法第一次迭代的搜索方向确定为负梯度方向,即

式中,s(x(0))为第一次迭代中搜索方向的初始值;f(x(0))为第一次迭代中网络的总误差;

第一次迭代之后各次迭代的搜索方向由公式(8)确定:

式中,s(x(k-1))为第k-1次迭代的搜索方向;β(k)为调整参数,表示形式采用fletcher-reeves形式,如公式(9)所示:

式中,gk为第k次迭代时的梯度,表示为gk-1为第k-1次迭代时的梯度。

第k次迭代的网络输出总误差性能函数e(k),采用均方误差mse(meansquareerror)进行计算,验证网络是否达到预设精度,若达到预设精度,则训练结束;若未达到预设精度,则继续网络训练,直到达到预设最大的训练次数时结束训练。

进一步的,步骤c具体包括:采用待构建海洋无缝垂直基准面区域的共n个验潮站深度基准面数据对基于cgbp算法的深度基准面拟合方法进行测试,其中选取n-1个验潮站深度基准面数据作为训练样本,对网络的阈值和权值进行学习和修正,1个验潮站的深度基准面数据作为测试样本对网络进行测试,以使网络实现验潮站平面坐标/深度基准面值的输入/输出映射关系。

本发明的有益效果是:本发明基于cgbp算法构建bp神经网络模型对深度基准面进行拟合,用于提高网络训练速度与拟合精度,相比于传统的深度基准面拟合方法,具有更好的拟合精度,且基于cgbp算法的bp网络所具有的泛化能力使该方法在海洋无缝深度基准面构建中,对不同海域的验潮站数据都具有较好的适用性。

附图说明

图1:本发明一种基于cgbp算法的深度基准面拟合方法流程图

图2:本实施例中基于cgbp算法的深度基准面拟合网络训练仿真效果图;

图3:本实施例中训练状态图;

图3a:本实施例中训练的梯度图;

图3b:本实施例训练过程中的验证图;

图3c:本实施例中网络学习速率图。

具体实施方式

为能进一步了解本发明的发明内容、特点及功效,兹例举以下实施例,并配合附图详细说明如下:

如附图1所示,一种基于cgbp算法的深度基准面拟合方法,采用变梯度算法(cgbp)对传统bp网络算法进行改进,从而获得更高的拟合精度与训练速度。误差反向传播多层前馈神经网络(bp)神经网络是目前处理非线性映射问题中应用较为广泛的一类神经网络。网络结构分为三部分,分别为输入层、隐含层和输出层。本方法采用单隐层bp神经网络,以验潮站平面坐标(x,y)为输入,对应的深度基准面值为输出,采用fletcher-reeves共轭梯度算法(cgbp)对神经网络进行训练。在确定了网络的结构及训练方法后,要通过输入和输出样本集对网络的阈值和权值进行学习和修正,以使网络实现给定的输入/输出映射关系。整体拟合方法具体包括以下步骤:

步骤a,确定网络结构,确定网络层数、节点数与传递函数。具体包括:

步骤a1,为了实现基于神经网络的深度基准面拟合,提取验潮站的平面坐标(x,y)作为输入因子,深度基准面值为输出因子,为了实现基于神经网络的深度基准面拟合的数学模型表达为:

l=f(x,y)(1)

深度基准面值和验潮站平面坐标(x,y)有关,神经网络结构模型的输入层取两个神经元,输出层取一个神经元,则神经网络结构模型为2×m×1,其中m的经验取值为:

式中m为隐层节点数;ni为输入节点数;n0为输出节点数;a为1~10之间的常数;

步骤a2,隐层激活函数采用双曲正切s型函数作为传递函数,传递函数的数学表达式为:

式中,net1为隐层神经元的输入加权和;

输出层采用线性传递函数,线性传递函数的数学表达式为:

s2(net2)=net2(4)

式中,net2为输出层的输入加权和。

步骤b,采用基于fletcher-reeves共轭梯度算法对网络进行训练。具体包括:

步骤b1,输入已知学习样本,通过步骤a设置的网络结构和前一次迭代的权值和阈值,从网络第一层向后计算各神经元的输出,该阶段为正向传播。

步骤b11:初始化网络,对每个连接的阈值和权值分别赋予区间(-1,1)的随机数;

步骤b12:输入学习样本:

ti=li(6)

式中,p2i为各验潮站的平面坐标,xi为第i个验潮站的横轴坐标;yi为第i个验潮站的纵轴坐标;ti为网络的期望输出;li为各验潮站对应的深度基准面值。

步骤b2,对权值和阈值进行修改,从最后一层向前计算各权值和阈值对总误差的影响,据此对各权值和阈值进行修改,该阶段为反向传播。

采用基于fletcher-reeves共轭梯度算法的训练方法对网络进行训练,x(k)为第k次迭代时网络所有权值和阈值组成的向量;s(x(k))为由x(k)的各分量组成的向量空间中的搜索方向;η(k)为在s(x(k))方向上的搜索步长;

基于fletcher-reeves共轭梯度算法的计算过程如下:

基于fletcher-reeves共轭梯度算法第一次迭代的搜索方向确定为负梯度方向,即

式中,s(x(0))为第一次迭代中搜索方向的初始值;f(x(0))为第一次迭代中网络的总误差;

第一次迭代之后各次迭代的搜索方向由公式(8)确定:

式中,s(x(k-1))为第k-1次迭代的搜索方向;β(k)为调整参数,表示形式采用fletcher-reeves形式,如公式(9)所示:

式中,gk为第k次迭代时的梯度,表示为gk-1为第k-1次迭代时的梯度。

第k次迭代的网络输出总误差性能函数e(k),采用均方误差mse(meansquareerror)进行计算,验证网络是否达到预设精度,若达到预设精度,则训练结束;若未达到预设精度,则继续网络训练,直到达到预设最大的训练次数时结束训练。

步骤b1的正向传播过程和步骤b2的反向传播过程反复交替,直到收敛为止。

步骤c,对网络性能进行测试:采用待构建海洋无缝垂直基准面区域的共n个验潮站深度基准面数据对基于cgbp算法的深度基准面拟合方法进行测试,其中选取n-1个验潮站深度基准面数据作为训练样本,1个验潮站的深度基准面数据作为测试样本对网络进行测试,对网络的阈值和权值进行学习和修正,以使网络实现验潮站平面坐标/深度基准面值的输入/输出映射关系。

本实施例中,采用某区域共9个验潮站深度基准面数据对本发明拟合方法进行测试,其中选取8个验潮站深度基准面数据作为训练样本,1个验潮站的深度基准面数据作为测试样本对网络进行测试,数据如下表所示:

表1测试数据

经多次网络训练及测试后输出的结果如下表所示:

表2测试结果

如附图2所示,本实施例中基于cgbp算法的深度基准面拟合网络训练仿真效果图,共进行了8次训练,在第3次训练时达到最好的验证结果,均方误差(mse)为0.01304。附图3为本实施例中训练状态图:图3a为本实施例中训练的梯度图,绘制了每次训练对应的梯度,在第8次训练时,梯度为0.006184;图3b为本实施例训练过程中的验证图,对网络的泛化能力进行检验,在第8次训练时达到了验证检查的最大次数6;图3c为本实施例中网络学习速率图,训练参数a表示训练的步长,在第8步时训练步长为0.26223。

经测试基于cgbp算法的深度基准面拟合方法能够达到很高的拟合精度,可以作为一种深度基准面的拟合方法,从而实现海洋无缝垂直基准面的更高精度的构建。

尽管上面结合附图对本发明的优选实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,并不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可以做出很多形式,这些均属于本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1