01
装维质检的目标
用户到营业厅或在线申请安装宽带后,BOSS系统会下发一个业务工单分配该用户资源,具体到用户住址和分光器端口序号。AI图像识别通过使用卷积神经网络算法识别出端口情况,并与原系统分配资源进行比对,可以保证装维资源分配准确性,完成质检校验工作,优化资源配置和管理
AI装维质检02
解决方案
接下来针对装维质检目标过程中如何实现根据回单照片检测端口情况,提出下图方案
2.1 整体思路模型实现思路
2.2算法介绍YOLO(You Only Look Once)是目前比较流行的目标检测(object detection)算法,速度快且结构简单,属于卷积神经网络范畴,为了更好的理解YOLO的精髓,本期我们先简单介绍一下卷积神经网络的基础知识。下一期文章再对YOLO算法的思想及应用进行详细的介绍2.2.1 卷积神经网络
从神经网络到CNN
我们知道经典的神经网络的结构是这样的:
神经网络架构 卷积神经网络依旧是层级网络,只是层的功能做了变化,可以说是传统神经网络的一个改进。比如下图就多了许多神经网络没有的层次,比如:CONV层、POOL层 CNN架构案例图 另外我们知道,图像是由一个个像素点构成,每个像素点有三个通道,分别代表RGB颜色。例如下图:关于猫的图像尺寸是(1000,1000,3),即代表这个图像的是一个长宽均为1000,channel为3的图像。当使用全连接的网络结构,即网络中的神经与相邻层上的每个神经元均连接,那就意味着我们的网络有1000 * 1000*3 = 3*103 个神经元,假如每个hidden层采用了10个神经元,于是需要的参数个数(w和b)就有: 3*103* 10*10*1+10+10+1 ≈ 3e+08 这个参数太多了,随便进行一次反向传播计算量都是巨大的,从计算资源和调参的角度都不建议用传统的神经网络。 神经网络识别猫CNN的网络结构
CNN的网络结构主要包括:数据输入层(Input Layer)、卷积层(CONV Layer)、ReLU激励层(ReLU Layer)、池化层(Pooling Layer)和全连接层(FC Layer) 卷积神经网络网络结构图数据输入层
Input Layer
该层要做的处理主要是对原始图像数据进行预处理,其中包括:去均值:把输入数据各个维度都中心化为0,如下图所示,其目的就是把样本match的中心拉回到坐标系原点上
归一化:幅度归一化到同样的范围,如下图所示,即减少各维度数据取值范围的差异而带来的干扰
PCA/白化:用PCA(主成分分析)降维;白化是对数据各个特征轴上的幅度归一化
卷积层
Conv Layer
这一层是CNN最重要的一个层次,也是“卷积神经网络”的名字来源。在卷积层,有两个关键操作:局部关联。图像本身具有“二维空间特征”,通俗点来说就是局部特性,譬如上图中猫,可能看到猫的眼睛或者嘴巴就知道这是一张猫图片,而不需要每个部分都要看了才知道这是个猫。故我们可以用某种方式对一张图像的某个典型特征识别,即知这张图片的类别
窗口滑动,filter对局部数据的计算
0 | 30 | 30 | 0 |
0 | 30 | 30 | 0 |
0 | 30 | 30 | 0 |
0 | 30 | 30 | 0 |
SAME和VALID,其中SAME:是填充,保持和输入图像大小一样,填充大小 p = (f-1)/2;VALID:是不填充,直接计算输出,输出大小在2.2.1.3中给出了通用计算公式
激励层
ReLU Layer
把卷积层结果做非线性映射: CNN采用的激励函数一般为ReLU(The Rectified Linear Unit修正线性单元),它的特征是收敛快,求梯度简单,但较脆弱,图像如下: ReLU图池化层
Pooling Layer
池化层夹在连续的卷积层中间, 对输入的特征图进行压缩,一方面使特征图变小,简化网络计算复杂度;一方面进行特征压缩,提取主要特征 作用:特征不变性,即特征的尺度不变性,池化操作就是图像的resize
特征降维
在一定程度上放置过拟合,更方便优化
全连接层
FC Layer
两层之间所有神经元都有权重连接,通常全连接层在CNN尾部,也就是跟传统的神经网络元的连接方式是一样的。卷积后图像大小
在上面卷积层或者池化层计算后,图像大小都发生了变化,针对这种变化并不是无规律可循的,是有通用计算公式的 卷积后图像的大小加入stride后卷积图像大小的通用计算公式为: 输入图像:n*n;过滤器(filter):f*f;padding:p输出图像大小为: 表示向下取整。
彩色图像的卷积
在上文中讲述的卷积都是灰色图像的,如果想在RGB图像上进行卷积,过滤器(filter)的大小不是3*3而是3*3*3.最后一个3对应为通道数(channels)。卷积生成图像中每个像素值为3*3*3过滤器对应位置和图像对应位置相乘累加,过滤器依次在RGB图像上滑动,最终生成图像大小为4*4 另外一个问题是,如果我们不仅仅检测单一特征,还要同时检测垂直边缘、水平边缘、45度边缘等等,也就是多个过滤器的问题。如果有两个过滤器,最终生成图像为4*4*2的立方体,这里的2来源于我们采用了两个过滤器。如果有10个过滤器那么输出图像就是4*4*10的立方体下期将为大家详细介绍YOLO算法的思想及应用
关注我了解更多