赵恒 陈玮 陈禹
(中国移动通信集团江苏有限公司,南京 210023)
随着5G、家宽与集客业务的大力发展,光交箱作为光缆接入网中主干光缆与接入光缆交接处的接口设备,其规模快速增长。但是光交箱资源信息维护主要以手工台账为主,数据准确率不高,变更不及时,对业务快速开通、网络精准投资、故障快速处理、风险有效防控等均有较大影响。
针对以上问题,本文对现有的图像分类算法和目标检测算法进行改进,实现对光交箱工艺的分类检测和端子占用情况的智能识别,打破长期以来识别精准度不高的困局,满足实际生产需求。在江苏移动管线系统APP端开发现场核查功能,将AI能力嵌入到资源入网、资源调度、资源核查和资源释放4个实际生产流程,构建光交箱资源全生命周期的自动化、智能化的运营能力。
光交箱工艺图像的检测算法需要兼顾准确率和速度,针对现有多目标跟踪算法参数量和计算量大,难以满足移动端实时检测要求的问题,而Transformer网络模型采用自注意力机制提取图形的特征信息,且可以并行化利用资源加快模型的训练速度[1],因此适用于光交箱工艺图像检测的场景。为提高模型的识别速度和准确率,考虑使用改进的EfficientNetv2作为特征提取层,重新构建YoloV5的特征提取网络,增强网络模型的提取能力,达到提高实时检测速度的目标。改进后的Transformer模型结构图如图1所示。
图1 改进后的Transformer模型结构图
图1中的编码器包含N个相同的编码块,每个编码块包含多头注意力层和前馈全连接层,每个编码块中的前馈全连接层都是一样的,包含两个线性转换和一个ReLU激活函数。多头注意力是把多个自注意力块连接,计算后进行拼接操作形成同纬度的输出。每个自注意力块包含查询Q、键K和值V,其中Q∈Rdk、K∈Rdk、V∈Rdv。注意力Attention(Q,K,V)的计算如公式(1)所示:
(1)
给定所有查询Q,键K和值V后,先通过公式(2)计算得到每个注意力头的输出值headi,即:
headi=Attention(Q,K,V)
(2)
然后将不同注意力头的输出进行拼接,得到多头注意力MultiHead(Q,K,V),如公式(3)所示:
MultiHead(Q,K,V)=Contact(head1,head2,…headh)WO
(3)
公式(3)中,h为注意力头的数量,WO∈Rhdv*dmodel,dmodel表示模型的纬度。
图1中的解码器同样包含N个相同的解码块,解码块的结构与编码块类似,区别在于其多头注意力层的K和V输入来自编码器的输出,而查询Q来自解码块的输出。
考虑到光交箱工艺识别的图片具有类似的背景,具有判别性的信息大多在局部区域。可以采用弱监督注意力数据增强网络(Weakly Supervised Data Augmentation Network, WS-DAN),通过弱监督注意力机制的数据增强解决背景过拟合的同时[2],增强网络对图片局部特征的学习,即使用WS-DAN算法进行工艺识别的测试。该算法先使用卷积操作获取注意力特征图,然后将注意力特征图和特征图进行双线性池化得到特征矩阵[3],算法流程如图2所示。
图2中,输入图片经过预处理后,通过卷积神经网络对图像进行特征提取得到特征图F∈RH×W×C,其中H、W、C分别表示特征图的长、宽和通道数,然后通过M个1×1的卷积核得到注意力图A∈RH×W×M,计算使用的公式如下:
(4)
公式(4)中,f(·)表示卷积操作,M为超参数,代表特征图的数量,Ak∈RH×W,表示目标的部分特征。
图2 WS-DAN算法流程图
然后利用双线性注意力池化操作将注意力图和特征图进行融合,逐元素将特征图F与每个注意力图Ak相乘,生成M个部分特征图Fk,接着使用全局平均池化或全局最大池化操作进一步对Fk进行特征提取,得到局部特征向量fk,通过将局部特征向量拼接得到特征矩阵,计算公式如下:
(5)
公式(5)中,P表示拼接得到的矩阵,Γ(A,F)表示对注意力图和特征图的双线性池化操作,g(·)表示全局池化操作,最后再通过全连接层计算损失函数。
为了比较EfficientNetv2改进后的Transformer模型和WS-DAN模型两个算法图像检测的性能,分别选择WS-DAN细粒度分类算法和Efficientnetv2算法,搭建2个平台进行测试。从2022年4月1—30日,每天随机抽样选择100 个光交进行测试,50 个用WS-DAN细粒度分类算法平台进行识别,50 个用于Efficientnetv2平台进行识别,分析其总识别时长和光交工艺识别率,结果如图3所示。WS-DAN细粒度分类算法平台平均每天识别时长优于Efficientnetv2算法平台,且光交工艺识别率高于Efficientnetv2算法平台,综上所述,选择WS-DAN细粒度分类算法。
图3 WS-DAN细粒度分类算法和Efficientnetv2算法识别结果对比
利用WS-DAN深度神经网络构建细粒度分类模型,通过采用类Center Loss的注意力监督机制,在训练中快速实现模型“注意力”机制的构建,提升训练效率。引入多种基于注意力的数据增强策略,提升模型的识别准确率,弥补初始样本不足的问题。通过在模型中引入双线性注意力池化机制,有效地消减了光交箱在拍摄过程中受背景因素影响的特点,将模型“注意力”聚焦在光交箱本身。光交箱工艺检测算法优化过程如图4所示。
图4 光交箱工艺检测算法优化过程
光交箱端子图像分辨率高,包含的像素点较多,图像信息量较大,而Transformer网络处理信息量大的图像容易产生计算量大的问题。因此考虑采用包含滑窗操作和层级设计的Swin Transformer网络模型,该网络模型的主要结构如图5所示。
图5 Swin Transformer主要结构
由图5可知,网络中主要包括多层感知机(Multi layer Perceptron,MLP)、窗口多头自注意力层(Window Multi-head Self Attention,W-MSA)、滑动窗口多头自注意力层(Shifted Window Based Multi-head Self attention,SW-MSA)和标准化层(Layer Normalization,LN)等。网络的输入首先通过LN层进行归一化,然后经过W-SMA层进行图像特征的学习,计算残差后再通过LN层和MLP层,再次计算残差后得到这一层的输出Xi。然后通过网络的下一层,每部分的输出计算公式如公式(6)~(9)所示:
(6)
(7)
(8)
(9)
通过这种层次结构,Swin Transformer网络在各类视觉任务中取得良好的效果。而YoloV5网络作为一种目标检测算法,将目标检测问题中的目标分类和目标位置回归两个问题统一为回归问题,有效减少了图像处理的计算量[4]。YoloV5网络结构包括输入(Input)、骨干网络(Backbone)、颈部(Neck)和预测层(Prediction)4个部分[5],如图6所示。
图6 YoloV5网络结构框图
输入端部分用于图片的预处理,包括图片的缩放、自适应锚框的计算等,并使用Mosaic进行数据集扩充。Backbone部分包含Focus结构、跨阶段局部网络 (Cross Stagepartial Connections,CSP)结构和空间金字塔池化模块 (Spatial Pyramid Pooling,SPP)结构等,用于输入图形的特征提取,Neck的作用是融合从Backbone部分提取的特征信息,并发送到Prediction部分,Neck包含FPN和PAN结构,特征金字塔网络 (Feature Pyramid Networks,FPN)通过将高层特征上采样和底层特征融合得到新的特征图来进行预测[6]。最后是Prediction用于目标的检测,包含预测框、损失函数等部分。YoloV5中GIoU损失函数计算如:
(10)
式(10)中,Ac是预测框与真实框的最小外接矩形,U表示Ac中不属于预测框与真实框的部分。真实框与预测框越接近,U越小,则损失函数GIoU越小。当网络处于预测阶段时,对同一个目标会产生多个预测框,使用非极大值抑制使预测框合并。
为比较两种目标检测算法的性能,分别搭建基于YoloV5目标检测算法和Swin Transformer算法的软件识别系统,分别对100个光交进行端子识别,分别对每个光交的光交信息识别精度进行统计,通过图7可以看出两种系统的光交信息识别精度集中于92%~100%,且均值都为96%,无法判断优劣。
图7 YoloV5目标检测算法和Swin Transforme算法识别精度对比
进一步对两种系统对每个光交图像每秒的读写帧数进行分析,如图8所示,YoloV5目标检测算法的每秒读写帧数优于Swin Transforme算法,因此选择YoloV5目标检测算法。
图8 YoloV5目标检测算法和Swin Transforme算法每秒读写帧数对比
YoloV5目标检测算法只支持水平矩形框的目标检测,对于倾斜的图片检测效果较差,但实际场景中由于设备安装位置空间有限,拍摄图片倾斜不可避免。本方案通过在神经网络训练过程中对每个标注目标计算角度信息,从而使得改进模型支持带有倾斜角度的矩形框检测,无需更改原有标注,即使在推理阶段输入倾斜图片,仍然能够计算出需检测目标的坐标及角度。同时,采用自适应锚框设计,针对性地解决了光交接箱中法兰盘、行标签以及空闲端子大小尺寸不一致的问题。
为了弥补初始样本不足的问题,同时为了提升实际应用场景中多种混合目标的识别准确率,在数据增强方面使用了Mosaic、Mixup、Random_Perspective等多种数据增强的级联策略;在后处理阶段,本方案设计并应用了支持旋转框的非极大值抑制算法,从而极大地提升了空闲端子的检测准确性,同时通过端子和法兰盘的位置关系准确定位空闲端子所在的行和列。现场检测场景要求实时返回结果,因此为了使得复杂模型能够满足实时推理,通过使用自适应图片缩放技术,在大幅提升模型推理速度的同时,也大大节省了计算资源。光交箱端子识别算法优化过程如图9所示。
图9 光交箱端子识别算法优化过程
基于光交箱工艺检测和端子识别的人工智能算法,在江苏移动管线系统APP端开发现场核查功能,现场核查流程如图10所示。
(1)面板拍照
支持全景拍照和普通拍照两种模式。
普通拍照:在拍照界面中,能标示区域边框,以辅助用户在拍照时将光交箱面板拍入照片中。
全景拍照:支持用户在狭小空间中拍出完整的设备面板照片。
图10 光交箱现场资源核查流程
(2)照片上传与合格判别
传入参数:省份、地市、资源id、图片文件。
返回参数:{“id”:202001002,”validate”:0,”msg”:“合格”},其中Id:上传文件的id;Validate:判断文件是否合格,1:合格 0:不合格 -1:不合规;Msg:返回图纸检查信息,合格或不合格原因。
(3)光交箱面板图识别与提取
传入参数:Id:上传文件返回的id。
返回参数:{“id”:“202001001”,“count”:20, “free_ports”:[{1,2},{3,4}],“free_count”:10,“tags”:10, “rows”:20},其中Id:上传文件的id;Count:返回识别的面板端口容量数;free_ports:返回识别的空闲端口位置,通过行列号标识来标识位置,[{1,2},{3,4}];free_count:空闲数;tags:标识的标签数量(白色标签);rows:盘数。
(4)数据对比
将提取的空闲端子信息与资源系统的数据进行比对,对存在差异的数据进行标识,为一线人员快速发现错误提供辅助,提升勘误效率。
将训练完成的光交箱工艺检测和端子识别的算法模型部署到中国移动九天人工智能平台,通过江苏移动管线系统APP端的3000 个现场核查任务工单对算法效果进行验证,工艺检测算法模型的查准率为96.45%,端子识别算法模型的查准率为97.11%,光交箱工艺检测和端子识别效果如图11所示。
图11 光交箱工艺检测(a)和光交箱端子识别试验效果(b)
本文利用WS-DAN深度神经网络构建细粒度分类模型,增加注意力机制,模拟人眼观察图片时关注重点区域忽略无关信息,侧重提取光交箱施工违规特征,提升分类识别准确率达97.75%。基于神经网络原理构建光交箱端子、标签、法兰盘识别模型,创新性提出支持旋转角度的目标检测算法,解决现有算法只能识别水平视角目标的弊端,光交箱端子信息识别平均精度MAP提高到97%。
通过江苏移动管线系统APP端开发现场核查功能完成全省现网22.8 万存量光交箱施工工艺、端子数量和占用情况的智能核查,并将识别提取的信息与系统中数据比对,触发勘误单5 万+条。单光交箱巡检时长由原来的0.5 天缩短到0.1 天,存量端子资源准确性从70%提升到95%,全年节约一线人员现场维护工作量5.2 万人/天,累计盘活光缆19.8 万芯公里,可节省4 950万元新建光缆投资。