一种基于深度学习的光纤光栅波长解调方法及装置与流程

文档序号:14871293发布日期:2018-07-07 00:17阅读:198来源:国知局

本发明涉及一种光纤光栅的波长解调方法领域,具体涉及一种使用深度学习来分析光纤光栅波长解调仪中的波峰数据并进行寻峰的方法及装置。



背景技术:

随着现代工业的发展,各种传感检测领域对检测精度、速度、可靠性以及设备成本有了更高的要求,而当前一些相关的光纤光栅传感解调产品未能尽然满足其要求。只有提高光纤光栅解调仪的解调速度和精度,才能更好的实现复杂机械系统的状态监测,如何实现光纤光栅高速、高精度解调,已成为影响其广泛发展的瓶颈之一。

传统的解调方法具有解调速度不够快以及精度不高等问题,尤其是当数据量特别大时,解析速度尤为滞后。而神经网络具有很强的拟合能力,可以映射任意复杂的非线性关系;并且其泛化的特点能够对训练样本有很好的预测和控制,能有效解决波峰数据中存在的大量噪声所造成的影响;且网络的中间层数、各层的处理单元数及网络的学习系数等参数可根据具体情况设定,灵活性很大。结合这些特点,我们将其应用于光纤光栅波长解调仪的数据分析中,大大提高对数据的拟合结果的精度。

传统的神经网络具有参数选择繁琐、训练速度较慢、容易陷入局部最优和过拟合等问题,尤其是在深度神经网络中,当网络的层数加大时这些问题更为突出。



技术实现要素:

为了弥补现有技术的不足,完成对光纤光栅波长解调仪数据的高速高进度分析,本发明考虑到神经网络拟合能力强、泛化能力强和自适应性强的特点,并综合batchnormalization、dropout和l2范数正则化的技术,提出了一种基于深度学习的高速高精度的光纤光栅波长解调方法及装置。

本发明采用的技术方案如下:

一种基于深度学习的光纤光栅波长解调方法,包括以下步骤:

步骤a1:解析光纤光栅波长解调仪接收的波峰数据并生成训练样本;

步骤a2:初始化神经网络;

步骤a3:采集训练样本并对每层神经元进行batchnormalization处理;

步骤a4:对每层神经元进行dropout的处理,并引入l2范数进行正则化,使用随机梯度下降法更新网络权重参数θt

步骤a5:计算预测误差,更新网络的参数矩阵;

步骤a6:判断预测误差是否满足终止条件,若否,回转执行步骤a3;若是,更新θ*=θt

步骤a7:训练结束,得到网络模型;

步骤a8:将需要检测的波峰数据放入训练好的网络,通过模型获得波峰数据的高斯函数参数;函数的参数即是波峰所在位置和波峰值。

其中,步骤a1的具体实现包括以下子步骤:

步骤a1.1:获取光纤光栅波长解调仪的波峰数据,用传统方法拟合这些数据,得到它们的高斯函数参数,作为输出样本y;

步骤a1.2:用高斯参数决定的函数表达式随机生成l个数据点,作为输入样本其中依此法生成m个训练样本。

其中,步骤a2的具体实现包括以下子步骤:

步骤a2.1:定义n层的神经网络{h1,h2,...,hn},每层的输出函数表示为hi(x)=g(θix);其中g(x)表示非线性激活函数,不同神经网络层之间允许使用不同的激活函数,θi表示第i层的参数矩阵,x表示与其对应层神经元的输入向量;

步骤a2.2:定义网络执行第t次时包含了所有层的参数矩阵为θt,给初始状态网络参数θ0赋初值。

其中,步骤a3中所述的对每层神经元进行batchnormalization处理,具体实现方式实包括以下子步骤:

步骤a3.1:采集训练样本{(x1,y1),(x2,y2),...,(xm,ym)};

步骤a3.2:计算每一批训练数据每层神经元xi的平均值其中m是当前层神经元的个数,xi是每个神经元的输入;

步骤a3.3:计算每层神经元xi的均方差

步骤a3.4:对输入xi进行归一化处理,其中ε是防止分母过于接近于0的较小的常数;

步骤a3.5:得到新的神经元输入其中γ、β是通过链式法则学习到的重构参数,通过调节该参数可以恢复出原始网络所具有的特征分布。

其中,步骤a4中所述的dropout处理的具体实现方式包括以下子步骤:

步骤a4.1:以概率p,随机生成一个0、1的向量,记为门控变量σj;依此法生成门控变量σ1,σ2,...,σm

步骤a4.2:设置门控矩阵ai,为含有门控变量rj的矩阵;定义经过门控层后的输出函数其中·表示按元素相乘。

其中,步骤a5中所述的计算预测误差的具体计算方式包括以下子步骤:

步骤a5.1:用fθ,σ表示参数为θ、门控变量为σ的神经网络,定义误差函数rθ并引入l2范数,其中是用于惩罚预测误差的损失函数,λ∈[0,1]为正则化的超参数;

步骤a5.2:由于采取了batchnormalization操作,更新验证误差函数中的其中e[x]=eβ[μβ],

步骤a5.3:生成新的学习率ηt,更新参数矩阵

一种基于深度学习的光纤光栅波长解调装置,包括:

解析单元,用于解析光纤光栅波长解调仪接收的波峰数据并生成训练样本;

初始化单元,用于初始化神经网络;

第一处理单元,用于采集训练样本并对每层神经元进行batchnormalization处理;

第二处理单元,用于对每层神经元进行dropout的处理,并引入l2范数进行正则化,使用随机梯度下降法更新网络权重参数θt

数据更新单元,用于计算预测误差,更新网络的参数矩阵;

判断单元,用于判断预测误差是否满足终止条件,若否,回转执行第一处理单元;若是,更新θ*=θt

网络模型获取单元,用于训练结束,得到网络模型;

计算单元,用于将需要检测的波峰数据放入训练好的网络,通过模型获得波峰数据的高斯函数参数;函数的参数即是波峰所在位置和波峰值。

其中,所述解析单元,具体用于:

步骤a1.1:获取光纤光栅波长解调仪的波峰数据,用传统方法拟合这些数据,得到它们的高斯函数参数,作为输出样本y;

步骤a1.2:用高斯参数决定的函数表达式随机生成l个数据点,作为输入样本其中依此法生成m个训练样本。

其中,所述初始化单元,具体用于:

步骤a2.1:定义n层的神经网络{h1,h2,...,hn},每层的输出函数表示为hi(x)=g(θix);其中g(x)表示非线性激活函数,不同神经网络层之间允许使用不同的激活函数,θi表示第i层的参数矩阵,x表示与其对应层神经元的输入向量;

步骤a2.2:定义网络执行第t次时包含了所有层的参数矩阵为θt,给初始状态网络参数θ0赋初值;

所述第一处理单元中的对每层神经元进行batchnormalization处理,具体实现方式实包括以下子步骤:

步骤a3.1:采集训练样本{(x1,y1),(x2,y2),...,(xm,ym)};

步骤a3.2:计算每一批训练数据每层神经元xi的平均值其中m是当前层神经元的个数,xi是每个神经元的输入;

步骤a3.3:计算每层神经元xi的均方差

步骤a3.4:对输入xi进行归一化处理,其中ε是防止分母过于接近于0的较小的常数;

步骤a3.5:得到新的神经元输入其中γ、β是通过链式法则学习到的重构参数,通过调节该参数可以恢复出原始网络所具有的特征分布。

其中,所述第二处理单元中的dropout处理的具体实现方式包括以下子步骤:

步骤a4.1:以概率p,随机生成一个0、1的向量,记为门控变量σj;依此法生成门控变量σ1,σ2,...,σm

步骤a4.2:设置门控矩阵ai,为含有门控变量rj的矩阵;定义经过门控层后的输出函数其中·表示按元素相乘;

所述数据更新单元中的计算预测误差的具体计算方式包括以下子步骤:

步骤a5.1:用fθ,σ表示参数为θ、门控变量为σ的神经网络,定义误差函数rθ并引入l2范数,其中是用于惩罚预测误差的损失函数,λ∈[0,1]为正则化的超参数;

步骤a5.2:由于采取了batchnormalization操作,更新验证误差函数中的其中e[x]=eβ[μβ],

步骤a5.3:生成新的学习率ηt,更新参数矩阵

有益效果:

本发明将神经网络应用于光纤光栅解调中,大大提高了对波峰数据解调的精度,改善了传统解调方法精度不够、面对大量数据时速度过慢的问题;本发明考虑神经网络的特性,并综合batchnormalization、dropout和l2范数正则化的技术,解决了深度神经网络中训练速度过慢、参数修改繁琐、易陷入局部最优和容易产生过拟合的问题,能非常有效地对光纤光栅的波峰数据进行高速高精度解调,灵活度高、适应能力强,可以有效面对各种应用场景。

附图说明

图1为本发明实施例的一种基于深度学习的光纤光栅波长解调方法的流程图;

图2为本发明实施例的一种基于深度学习的光纤光栅波长解调装置的结构示意图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

实施例1

请见图1,本发明提供的一种基于深度学习的光纤光栅解调方法,包括以下步骤:

步骤01:获取光纤光栅波长解调仪的波峰数据,用传统方法拟合这些数据,得到它们的高斯函数参数,作为输出样本y;

步骤02:用高斯参数决定的函数表达式随机生成l个数据点,作为输入样本其中依此法生成m个训练样本;

步骤03:定义n层的神经网络{h1,h2,...,hn},每层的输出函数表示为hi(x)=g(θix);其中g(x)表示非线性激活函数,不同神经网络层之间允许使用不同的激活函数,θi表示第i层的参数矩阵,x表示与其对应层神经元的输入向量;

步骤04:定义网络执行第t次时包含了所有层的参数矩阵为θt,给初始状态网络参数θ0赋初值;

步骤05:采集训练样本{(x1,y1),(x2,y2),...,(xm,ym)}

步骤06:计算每一批训练数据每层神经元xi的平均值其中m是当前层神经元的个数,xi是每个神经元的输入;

步骤07:计算每层神经元xi的均方差

步骤08:对输入xi进行归一化处理,其中ε是防止分母过于接近于0的较小的常数;

步骤09:得到新的神经元输入其中γ、β是通过链式法则学习到的重构参数,通过调节该参数可以恢复出原始网络所具有的特征分布;

步骤10:以概率p,随机生成一个0、1的向量,记为门控变量σj;依此法生成门控变量σ1,σ2,...,σm

步骤11:设置门控矩阵ai,为含有门控变量rj的矩阵;定义经过门控层后的输出函数其中·表示按元素相乘;

步骤12:用fθ,σ表示参数为θ、门控变量为σ的神经网络,定义误差函数rθ并引入l2范数,其中是用于惩罚预测误差的损失函数,λ∈[0,1]为正则化的超参数;

步骤a13:由于采取了batchnormalization操作,更新验证误差函数中的其中e[x]=eβ[μβ],

步骤a14:生成新的学习率ηt,更新参数矩阵

步骤15:判断预测误差是否满足终止条件,若否,回转执行步骤步骤05;若是,更新θ*=θt

步骤16:训练结束,得到网络模型;

步骤17:将需要检测的波峰数据放入训练好的网络,通过模型获得波峰数据的高斯函数参数;函数的参数即是波峰所在位置和波峰值。

本发明公开了一种基于深度学习的光纤光栅波长解调方法及装置,具体提出了一种基于深度神经网络来对光纤光栅获取的波峰数据进行拟合的寻峰方法。综合batchnormalization、dropout和l2范数正则化的技术,解决了深度神经网络中训练速度过慢、参数修改繁琐、易陷入局部最优和过拟合的问题。本发明实现了针对光纤光栅波长解调仪波峰数据的高速高精度寻峰算法。

实施例2

本实施例属于装置实施例,与上述实施例1方法实施例属于同一技术构思,在本实施例中未详尽描述的内容,请参见方法实施例1.

如图2所示,本发明所述的一种基于深度学习的光纤光栅波长解调装置,包括:

解析单元,用于解析光纤光栅波长解调仪接收的波峰数据并生成训练样本;

初始化单元,用于初始化神经网络;

第一处理单元,用于采集训练样本并对每层神经元进行batchnormalization处理;

第二处理单元,用于对每层神经元进行dropout的处理,并引入l2范数进行正则化,使用随机梯度下降法更新网络权重参数θt

数据更新单元,用于计算预测误差,更新网络的参数矩阵;

判断单元,用于判断预测误差是否满足终止条件,若否,回转执行第一处理单元;若是,更新θ*=θt

网络模型获取单元,用于训练结束,得到网络模型;

计算单元,用于将需要检测的波峰数据放入训练好的网络,通过模型获得波峰数据的高斯函数参数;函数的参数即是波峰所在位置和波峰值。

其中,所述解析单元,具体用于:

步骤a1.1:获取光纤光栅波长解调仪的波峰数据,用传统方法拟合这些数据,得到它们的高斯函数参数,作为输出样本y;

步骤a1.2:用高斯参数决定的函数表达式随机生成l个数据点,作为输入样本其中依此法生成m个训练样本。

其中,所述初始化单元,具体用于:

步骤a2.1:定义n层的神经网络{h1,h2,...,hn},每层的输出函数表示为hi(x)=g(θix);其中g(x)表示非线性激活函数,不同神经网络层之间允许使用不同的激活函数,θi表示第i层的参数矩阵,x表示与其对应层神经元的输入向量;

步骤a2.2:定义网络执行第t次时包含了所有层的参数矩阵为θt,给初始状态网络参数θ0赋初值;

所述第一处理单元中的对每层神经元进行batchnormalization处理,具体实现方式实包括以下子步骤:

步骤a3.1:采集训练样本{(x1,y1),(x2,y2),...,(xm,ym)};

步骤a3.2:计算每一批训练数据每层神经元xi的平均值其中m是当前层神经元的个数,xi是每个神经元的输入;

步骤a3.3:计算每层神经元xi的均方差

步骤a3.4:对输入xi进行归一化处理,其中ε是防止分母过于接近于0的较小的常数;

步骤a3.5:得到新的神经元输入其中γ、β是通过链式法则学习到的重构参数,通过调节该参数可以恢复出原始网络所具有的特征分布。

其中,所述第二处理单元中的dropout处理的具体实现方式包括以下子步骤:

步骤a4.1:以概率p,随机生成一个0、1的向量,记为门控变量σj;依此法生成门控变量σ1,σ2,...,σm

步骤a4.2:设置门控矩阵ai,为含有门控变量rj的矩阵;定义经过门控层后的输出函数其中·表示按元素相乘;

步骤a4.3:用fθ,σ表示参数为θ、门控变量为σ的神经网络,定义误差函数rθ并引入l2范数,其中是用于惩罚预测误差的损失函数,λ∈[0,1]为正则化的超参数;

所述数据更新单元中的计算预测误差的具体计算方式包括以下子步骤:

步骤a5.1:用fθ,σ表示参数为θ、门控变量为σ的神经网络,定义误差函数rθ并引入l2范数,其中是用于惩罚预测误差的损失函数,λ∈[0,1]为正则化的超参数;

步骤a5.2:由于采取了batchnormalization操作,更新验证误差函数中的其中e[x]=eβ[μβ],

步骤a5.3:生成新的学习率ηt,更新参数矩阵

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

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