刘 军,李伯中,陈 芳,李子凡,郭 莹,孙雨潇,邓春雪,张儒依,王英旭
(国家电网有限公司信息通信分公司,北京 100761)
深度神经网络(Deep Neural Network, DNN)作为机器深度学习的基础网络之一,被应用于链路光信噪比(Optical Signal-to-noise Ratio,OSNR)的监测之中[1-2]。利用经过模/数转换器(Analog-to-Digital Converter, ADC)后的电信号数据作为训练数据,输入到5层DNN中。卷积神经网络(Convolutional Neural Network, CNN)在图像处理领域取得了巨大的突破与进展,不同的OSNR水平下,信号的眼图与星座图表现不尽相同,因此,信号的眼图与星座图被用作CNN的输入数据[3-5],将OSNR监测由回归问题转变成分类问题,实现了OSNR的监测。另一方面,由于OSNR数据是时间连续的,所以很适合利用循环神经网络(Recurrent Neural Network, RNN)与长短期记忆(Long Short-Term Memory, LSTM)网络回归拟合。相干接收机的4路信号作为输入数据直接训练LSTM网络对OSNR进行拟合[6-7],能够获得不错的效果。
以上基于机器学习的链路OSNR监测方案在相干光通信系统中都取得了一定的成果,但在直调直检(Intensity-Modulation and Direct Detection,IMDD)系统中还有待进一步研究。针对IMDD系统高效低成本OSNR监测需要,本文提出了基于DNN链路的监测方案。将通信数据作为沟通物理层和网络层的桥梁,通过大批量样本训练挖掘链路信息。本文采用5层DNN的网络结构,在5~15 dB范围内,成功估计出了2 GBaud 开关键控(On-Off Key,OOK)信号的OSNR值,平均绝对误差(Mean Absolute Error, MAE)小于0.8 dB。该OSNR监测方案具有准确率高、成本低、运行速度快和复杂度低的特点,有助于实现精准和动态地链路监测,辅助光网络高效运维。
神经网络由大量神经元(Neuron)构成。每个神经元的示意图如图1所示,图中,X={x1,x2,x3,…,xn}为神经元的输入向量,W={w1,w2,w3,…,wn}为神经元的权重向量。
图1 神经元示意图
设该神经元的阈值为φ,则该神经元的输出值y为
(1)
式中,f(x)为激活函数。激活函数一般选取Sigmoid函数:
(2)
假设训练集T={(X1,Y1),(X2,Y2),…,(Xn,Yn)},Xn={x1,x2,x3,…,xa}为神经网络的输入向量,a为输入层神经元个数,Yn={y1,y2,y3,…,yc}为网络的输出向量,c为输出层神经元个数,搭建含有输入层、输出层和隐藏层的3层全连接神经网络,如图2所示。
图2 神经网络示意图
(3)
反向梯度下降的权值更新公式为
(4)
反向梯度下阈值更新公式为
(5)
式中:η∈(0,1)为学习率(Learning rate),是神经网络最重要的超参数,决定目标函数收敛到全局最小值的概率以及收敛到全局最小值的速度;∇为梯度下降算法,其不断地调整权重至使误差不断减小;E为输出层的输出误差,又被称作损失函数;t为迭代次数。
DNN是一种含有多个隐藏层的人工神经网络(Aritificial Neural Network,ANN),在机器视觉、语音识别和航天航空等领域得到了广泛的应用。DNN的多层隐藏层可以自动提取输入数据的深层次特征,增加模型的表达能力,帮助DNN对更复杂的数据进行建模。本文提出了一种利用DNN预测光链路中OSNR的方法。光/电探测器(Photoelectric Detector, PD)将信号从光域转换到电域后,直接输入至DNN中。本文将长度为512的信号序列送入DNN中进行训练,所以DNN的输入层神经元数量也为512,最后输出的OSNR 值是单个数据,故将输出层的神经元数量设置为1。训练好的DNN将不需要预知系统的结构参数,可通过接收的数字信号预测得到链路当前的OSNR值。
实验室对2 GBaud OOK信号传输进行了建模仿真,仿真系统设置如图3所示。激光光源输出光入射至马赫-曾德尔调制器(Mach-Zehnder Modulator, MZM)中接受调制编码,信号码元由任意波形发生器(Arbitrary Waveform Generator, AWG)生成。而后,光信号经由光耦合器(Optical Coupler, OC)与掺铒光纤放大器(Erbium Doped Fiber Application Amplifier, EDFA)连接,引入自发辐射(Amplifier Spontaneous Emission, ASE)噪声,可变光衰减器(Variable Optical Attenuator, VOA)用于控制ASE噪声的大小,测量不同噪声水平下的信号序列。PD将光信号转换成电信号,并将信号送入带通滤波器(Band-Pass Filter, BPF)进行带通滤波,示波器(Digital Storage Oscilloscope, DSO)可以读取电信号信号序列。最后将电信号序列送入训练好的DNN中,即可计算出系统的OSNR值。由于仿真的特殊性,我们可以轻松地记录加入噪声前后光信号的功率变化,将光信号功率代入下面的公式(6)计算可以求得链路的OSNR值。在实际的测量过程中,我们只能读取到电信号的幅值,所以需要利用DNN去学习电信号与链路OSNR之间潜在的关联。
图3 监测OSNR的仿真系统示意图
链路的OSNR变化范围设置为5~15 dB,步长为1 dB。为了探究训练网络所需要的数据集以及学习深度,我们选取的数据集分别为22 000、110 000和550 000组,网络的隐藏层数目为1、3和5层,一共9种配置[3],并分别观察了神经网络的学习性能。特别地,数据集由训练集、测试集和验证集3部分组成,其数量的比值为8∶1∶1,每组数据是一个长度为512的信号序列。OSNR的计算公式为
(6)
式中:Psig为光信号的能量;Pnoise为噪声的能量;Ew/o·noise为不含噪声的信号幅值;Ew·noise为包含噪声的信号幅值,|·|为绝对值函数。
DNN的结构如图4所示,输入层用于接收并处理信号,随后与1/3/5层隐藏层连接,提取信号的特征,最终将数据送入输出层,输出由信号序列预测出的OSNR值。其中,输入层包含512个神经元,隐藏层每层包含500个神经元,由于输出的OSNR值只有1个,所以输出层的神经元数量也为1。输入和输出层均采用线性函数(Linear Function)作为激活函数(Activation Function),隐藏层的激活函数选用线性整流函数(Rectified Linear Unit, ReLU)。网络搭建完成后,选取Rmsprop优化器针对训练数据的MAE进行优化处理,训练批次(Epoch)设置为300,批次大小(Batch size)设置为1 024。
图4 DNN结构示意图
图5所示为DNN在不同数据集数量和网络层数下的预测结果。通过对比图5(c)、5(f)和5(i)可知,隐藏层数目为1,即网络总层数为3时,相较于其他两种网络,网络的学习深度不够,无法识别出电信号幅值与链路中OSNR的内在联系。进一步对比图5(d)与5(g)、5(e)与5(h)和5(f)与5(i)可知,3层和5层隐藏层对于网络的学习性能差异并不明显,而5层隐藏层需要训练的参量要多于3层隐藏层,训练速度更慢,更容易出现过拟合情况,所以3层隐藏层相较下是更好的网络结构。从数据集的角度来看,数据集为22 000组时,3种隐藏层结构的网络表现均不佳;数据集为110 000组时,3种隐藏层结构的网络都已初步学习到了信号幅值与OSNR的内在联系,但仍处于欠拟合状态;当数据集增加至550 000组时,3层和5层隐藏层结构的网络预估的OSNR值与实际OSNR值误差已经在1 dB以内,具备了快速、动态和精准地估计链路OSNR的能力。图6所示为不同训练集数量下MAE随网络总层数的变化图。总的来说,数据集的量太小,神经网络无法从训练中学习到信号序列与OSNR值之间的联系,网络深度不够,神经网络没有能力提取信号的特征。
图5 不同DNN结构与训练集数量下的OSNR网络预测图
图6 不同训练集数量下MAE随网络总层数的变化图
综合9种情况下网络的表现,数据集的量应选为550 000组,隐藏层数应设置为3层,即网络总层数为5层,此时DNN的训练速度和学习表现都为较佳状态。
网络总层数为5层的DNN在550 000组数据集下的训练过程如图7所示,随着网络训练轮次的不断增加,训练集和验证集的MAE都在不断减小,当网络经历了50轮次的训练后,验证集MAE变化趋于平缓。最终,神经网络的训练集MAE为0.31 dB,验证集MAE为0.65 dB。将测试集数据输入训练好的DNN中,得到OSNR的预测MAE为0.67 dB,与验证集的结果相近。虽然网络训练集和验证集的MAE相差较大,存在着一定的过拟合,但验证集和测试集的MAE相差较小,说明模型具有很强的泛化能力。
图7 5层DNN在550 000组数据集下的训练过程图
网络预测OSNR值与真实OSNR值之间的关系如图8(a)所示,预测OSNR与真实OSNR相差大部分在1 dB以内。图8(b)所示为不同OSNR水平下,预测OSNR的MAE。由图可知,所有OSNR水平下,预测MAE均低于0.8 dB,且实际OSNR为5 dB时,预测出OSNR的MAE只有不到0.4 dB,说明其预测准确性最高。OSNR处于较低水平时,信号受噪声影响较大,故而DNN更能准确地识别此时的OSNR值;当链路的OSNR处于较高水平时,噪声对信号的影响较小,网络对于OSNR值的识别误差逐渐增加。本文所提方案只需将电信号输入至1个DNN中,处理时延为3 ms,就可以实现链路OSNR的精准和动态监测。相较于其他神经网络,DNN结构简单,运算速度更快,并且网络的输入数据为电信号幅值,相较于输入其他统计特征参量的方案,省去了数据处理步骤,进一步降低了系统的复杂度,因此本文所提电域OSNR监测方案具有成本低、运行速度快和复杂度低等优点,是未来智能光网络的理想选择。
图8 网络预测性能评估
本文提出了一种基于DNN的电域信号处理、精确监测OSNR的方案。该方案从PD接收到的电信号中提取OSNR的特征,不需要提前预知光传输链路的传输特性或人为输入其他参数,就可以准确、灵活地监测光链路的OSNR值。由实验结果可知,当OSNR在5~15 dB时,监测的MAE<0.8 dB。本文所提基于DNN的电域OSNR监测方案,能根据实时信号动态反馈链路中的OSNR信息,辅助优化光链路结构,有望助力未来智能光网络更加稳定和可靠。