APP下载

基于深度学习的图像识别处理

2017-11-17李如意

网络安全技术与应用 2017年11期
关键词:图像识别卷积神经网络

◆林 杰 李如意

(中国电子科技集团第28研究所 江苏 210001)

基于深度学习的图像识别处理

◆林 杰 李如意

(中国电子科技集团第28研究所 江苏 210001)

近年来,人工智能已经成为了计算机视觉与信息语言交互中的重要研究对象和热点话题,通过深度学习方法的学习和实践,来进行对图像的处理和描述是十分具有挑战性的。在这个过程中首先需要构建神经网络,从一端的编码解码结构到另一端的编码解码结构的深度学习模型,并且融合了图像目标点检测的识别研究和深度卷积网络相关的记忆模型,从中进行信息提取和学习处理。这种研究方式更加关注原始图像区域的特征显示与其他的多种信息处理模块区域的结合,有助于防止丢失处理信息和主题部分操作过程。在实验过程中通过调取数据集进行实验,通过实验操作成功生成了图像描述系统,依次来对目标进行描述。其结果显示也超出了综合预期水平。最后再通过多种机器评估的方式来显示该模块处理结果的综合性能。

深度学习;图像识别;CNN;LSTM;SSD

0 引言

近年来,随着计算机技术的不断发展,人工智能技术的不断提高,深度学习以及人工智能的需求也日益增大。而支撑其发展的大量的计算机资源的研究。计算机通过对图像的“观察”和“思考”形成自己的认知,通过一套类似于人类的描述语言来进行描述。随着图片的不断革新,图像识别遇到的问题也日益增多,所以图像的描述成为了对计算机算法要求更为高级的组成部分。图像描述也是对图像识别的进一步认识。这也就是所谓的“多模态”学习过程。

1 研究介绍

早在1999年就有Y.Mori对计算机图像识别和描述进行了尝试,只不过建立方法颇为简单,而且自然语言与计算机语言结合不是很完备的条件下无法像正常情况下来建立完整的计算机对图像的描述。

A.Farhadi等人于2010年提出了模块映射法,其本身是对空间中图像描述的映射算法,而在2014年Vinyals等人突出了端到端的图像描述NIC模型,通过CNN提取图像特征基于长短记忆语言的生成模型。针对这种生成结构最后进行筛选然后得到较为切合实际的图像识别及后续描述过程。近几年来图像识别技术在不断的发展,而更多的重心转移到了对图像描述的精确度和自然语言熟悉度的算法研究之中。在语言生成中通过对LSTM现有系统的改进强化了文本可读性,从而有了一些新的进展。

2 模型介绍

2.1 模型概述

本文通过NIC模型进行改进实验,结合目标检测SSD的方法,提取区域信息,对结构语言进行生成化描述。并且在描述区域借鉴了ATAE-LSTM模型用以实践。

模型图像处理以一个卷积神经网络来作为图像处理的主要学习对象使用Incption结构的cnn模型。在这个过程中通过SSD提取尽可能多的图像区域,然后产生一系列的图像集合,在这个过程中选取图片之中的有效信息。模型框图如图1所示。

图1 模型框图

模型对输入图像进行特征提取,然后通过SSD来进行图像特征检测,在输出部分来完善工作信息,同样的再次进行特征提取直到最终的自然语言描述能够生成结果。语言生成部分是一个很复杂的环节,首先生成词汇编码并嵌入模块运行中,然后通过LSTM作为运行核心,输入图像元素后进行综合状态评估,然后对语句进行链接,链接的同时载入到LSTM生成器之中。

2.2 卷积神经网络及特征提取

卷积神经网络(CNN)在近年来以一个非常高的发展速度在推动着科学研究,并且应用于计算机视觉之中产生了良好的进展。卷积神经网路主要以层级网络形式展开,从卷积层,到池化层,到全连接层等等各部分联系在一起,由于人工神经元的层级划分可以分为提取信息的接收部分和数据中枢的数据特征库,这种方式在图像处理方面应用表现的极为出色。

2012年起CNN开发并推广了多种卷积神经网络结构,各个结构部分都有其对应关系和使用维度,输入输出也随之变化。

卷积神经网络首先在图像预处理数据集上进行预训练,以保证提取特征的准确度和具备预备习惯。在这个过程中为了避免语言模型的初始训练会对卷积神经网络机构形成破坏,导致神经网络的权重部分无法修复还原,在预学习过程中会选取固定权重的方法来得到一个较好的权重训练结果。而后会根据预训练状况进行一部分调整,这部分被称作细节训练。

2.3 区域图像提取

在处理图像的过程中,对图像中关键信息的处理是尤为重要的,在图像所呈现的信息中将关键信息提取出来是对处理过程中必不可少的部分,相应的对关键部分的信息做出语言生成是描述过程的一部分,这样描述过程才会有明确的主次关系,在语言生成的时候涵盖了图像中全部的内容。

在我们所了解的区域图像提取中存在着多种提取方式,目前比较常见的是RCNN和两种RCNN算法的衍生算法,是2015年由Girshick等人连续提出的。经过长期的实验,在2016年又有了新的突破,通过SSD的方式将信息高效提取,并且形成成熟的目标检测方式。

由于SSD和RCNN是两种完全不同的方式,SSD通过多层卷积来得到最终输出结果区域,所以SSD作为图像区域处理部分选取aspect区域的图像之后再送入inception中进行特征提取。其图像提取算法结构如图2所示。

图2 图像提取算法结构

生成候选区域后会通过摘除背景,得到真正的关键词生成部分,作为aspect,进行归一化图像尺寸处理后通过卷积神经网络进行特征提取,并生成最终的语言模型。由于卷积神经网络的维度很高,这个过程中会使得语言输入模型的维度也变成可调节维度,使得图像嵌入向量的维度达到匹配,将Inception中的输出映射到512维的图像嵌入空间之中进行处理。

3 训练过程

3.1 深度学习库

在数据库编写的过程中语言选取为python,模型通过拟定的Keras作为最初的深度学习构建板块,基于 Keras的高度集成化和模块化系统来进行下一步的构建,但是可能会导致构建不够灵活,自由度没有预期的那样高。所以在定义LSTM的时候可能会遇到一些比较僵硬的结构性问题。在这个过程中选择增加编码量的方式来解决问题。模型中依旧使用SSD结构以及其附属的一些区域图像识别部分。由于Keras可选择使用tensorflow作为后端使用,因此其本身可以作为tensorflow的简明接口。在tensorflow中会对其余的数据预处理,语言生成模型,样本构建,Inception等步骤进行控制和完成。

3.2 数据集及数据预处理

在数据库建立的过程中使用了 MSCOCO数据集,MSCOCO数据集是一个标准化的图片数据集,其中拥有82783张训练图像数据集和40504张验证图片数据集,并且针对每一个图片你有5个描述语句。在图片描述上做到比较完善的程度。

在确定了数据集后便是要进行数据预处理,针对庞大的数据量使用tensorflow进行维护大量数据输入的方法来将训练过程,验证过程的数据转化成有标准输入输出格式的数据文件,然后及逆行多线程读取和操作。

根据 GPU的显存大小来确定训练容量,生成的训练结果由SSD进行提取操作,保证所有图像的维度完全一致,然后通过Inception对 SSD接收到的数据进行预处理,作为输入数据。在SSD训练结束前设置目标检测模块,对单张图像的目标检测进行归一化处理,在最后生成单元训练数据。

由于使用Inception和SSD模型在其他的使用模型上进行了一些预训练处理,所以两个模块的输入图像大小和维度应该与其他输入和训练部分保持一致。在使用Inception输入图像的时候保证图像的维度并且在相互转换的时候要进行 resize操作。由于SSD和Inception的输入数值范围有所差别,使用归一化操作的时候还需要进行严谨的数据处理以避免训练数据集和验证数据不一致。

3.3 嵌入开发研究

嵌入过程分为词语嵌入和语言模拟生成开发两个部分,两个部分中由于模拟词库的大小为12000,所以在同样长度不同大小的词语在被调用的时候要加入pad标签,通过添加相应的指示标签来决定语句的起始和终止。词语嵌入模型服从固定的编码集合和映射,在512维度的词向量空间中与之对应提取,使用表达,生成最终的自然语言描述。

而语言生成部分的模拟是通过LSTM现有模块来进行,其本身拥有512层隐退状态,因素个号词库通过概率输出,在避免过拟合的过程中在词向量外部包裹aspect特征进行初始化。这两部分的主要目的都是对图像进行预处理。

3.4 训练过程

训练过程是对卷积神经网络使用的最重要的过程,在训练之前需要对整个数据库中的训练数据集进行预处理,并且在之后输入数据的时候要使得输入数据和训练数据预处理的过程一致,维度,大小匹配才不会出现错误。训练过程的参数如表1所示。

表1 训练过程参数

根据如上参数进行对卷积神经网络的训练,在完成了基础训练之后可以加入一些微调训练,使得整个参数模型得到改善,并且针对Inception和SSD的权重进行训练,起到适应MSCOCO数据库的特性。

4 结果评估

4.1 训练预期

从训练的角度来看训练分为三个部分,一个是训练时期,一个是训练方式,一个是训练的预期结果。在时间成本上参考了NIC模型,在训练过程中进行了1000000个batch的训练内容,并且通过2000000个batch的训练内容来对其数据处理能力进行了微调,以此来达到最好的训练效果。训练过程中加大训练量和微调部分的数据输入可以更好的实现结果中的精确程度和模型最优。在评估过程中依旧需要进行大量的训练来进行参考,这次参照的模型NIC模型也是国内最优模型。

4.2 深度学习训练详细过程

在评估过程中采取最好的办法就是人为评估,由于机器评估的局限性和理想划分效果的不可变性,因此很难达到我们所谓的人工智能效果。但是由于工作量的缘故更多的数据由计算机来进行聘雇和测试。由于选取的 NIC模型是一种目前较为完善的模型,并且在此基础上进行了改进,所以大多数实验结果都是优于常规NIC模型的,不过NIC模型是一个经过了完整训练的模型参考,所以其输出结果在一些其他方面依旧是有着很高的评价。

由神经框架来进行学习最终实现完整的生成数是一个十分强大的序列模型,通过定制化输入给出最大化的语句输入学习环境,从结果上来看较为先进。

首先我们根据实验过程来对图像进行一系列的描述部分,在使用卷积神经网络的时候我们调整变量长度,给出确切形式,作为输入和输出来进行进一步的处理。

而另一部分关于描述图像的过程就是语句生成器的部分,在设计了训练过程后要根据设计的训练步骤进行语句的生产和挖掘,在一个图像的描述过程中,语句生成无疑是一个很重要的部分,关系到整个图像的描述完整性和输出结果的准确性,直接反馈到卷积神经网络的训练成果。语言生成引用LSTM结构,是一种递归方式,通过递归网路来实现最终输出。

图3 LSTM结构

如图3所示,在LSTM中包含了三个门控制单眼,蓝色线条显示了递归的连接和运算过程,在时刻t-1的时候输出m通过三个门在时刻t反馈到储存器之中。

之后对 LSTM进行多次递归实践,通过多次实践来增加对LSTM的鲁棒训练,以消除其本身可能具有的消失和过载等情况。其训练过程如图4所示。

图4 LSTM的训练过程

4.3 图像描述

在本文中我们得到了一些实验结果作为示例来给出结论,在本文的模型中生成了一些同步训练样本,样本的扫描得益于aspect的特征提取,这些图中的文本识别可以识别出nic模型中未识别出的信息,具体的描述结果如图5所示。

图5 图像描述结果

在对比了nic模块后发现其中尚且包含着一些未被识别的信息出现,但是其信息量已经很小了,而且由于训练步骤有限的问题仍然会导致一些不可避免的事情发生,但是其结果的误差在可控范围之内。

在上述案例中,虽然在一些图片中识别出了图片中的有效信息,但是信息还是存在重复出现随机生成结果不准确的问题存在着,这其中的nic模型结果就是在不断实践后的训练下得到的,进行了重复训练有助于缓解这些不完全信息的产生。

在描述和检测过程中检测应用在图像之中应用 SSD提取图像区域信息作为aspect信息提供生成模型来作为保险可以避免数据丢失和关键信息造成的损失,在最终结果中得到了结论性验证。由于本文中选取的SSD是集成模块,所以在关键区域提取的正确性上没有做很完善的检验工作,在人眼手动检查了一些图像之后会在其中发现一些小的错误,在提取图像关键信息的过程中提取了一些图片中的明显因素但是这不是图片中的关键点。

在相比较 NIC数据库模型的时候会发现由于训练不足的情况会出现不完全呈现的状况,那么随着技术的革新和发展,训练速度也一定会得到提升,进而使得图像识别描述模块有所提升。

5 结语

在设计基于卷积神经网络的图像识别处理中将自然语言描述作为一个重要的组成部分进行梳理和研究,将该工作提升到端到端的层次,依此建立了由端到端的深度模型,在模型搭载过程中使用 inceptionV3,SSD,LSTM 等神经网络结构,这些结构有一部分是经过借鉴和改良的结构网,其效果要超过本身的结构。并且借鉴了aspect的设计思路来对卷积神经网络的语言描述学习进行了优化和设计。在实验中也是得到了一些较为具有竞争力的结果。这些结果本身是以模块化的形式出现,同样的以模块化的形式作为搭载依据,并且根据其模块的特殊性和卷积神经网络训练过程来制定了统一规格的输入维度和大小,这些都是在模块建立中必不可少的部分。

实验中采取训练,监察训练,输入测试数据然后输出,最后首先由机器进行只能误差分析,然后再由人工进行手动误差分析。在分析过程中对nic结构的借鉴进行了改进,加速了训练时间,在进一步的检验环境中打下了基础。

在之后的模块设计和实验过程中,首先要做到的是减少信息的重复录入与不正确输出的产生,其次要转换设计思路,让训练过程加速。在将这些问题克服了之后基于深度学习的卷积神经网络处理上对于图像描述部分一定会有一个显著提高。

[1] 余永维,殷国富,殷鹰,杜柳青.基于深度学习网络的射线图像缺陷识别方法.仪器仪表学报,2012.

[2] 丰晓霞.基于深度学习的图像识别算法研究. (Doctoral dissertation.太原理工大学,2015.

[3] 王标.基于深度学习的图像识别与搜索系统. (Doctoral dissertation.中国科学院大学,2016.

[4] 吕国豪,罗四维,黄雅平,蒋欣兰.基于卷积神经网络的正则化方法.计算机研究与发展,2014.

[5] 卢宏涛,张秦川.深度卷积神经网络在计算机视觉中的应用研究综述.数据采集与处理,2016.

[6] 许可.卷积神经网络在图像识别上的应用的研究.浙江大学,2012.

[7] 王振,高茂庭.基于卷积神经网络的图像识别算法设计与实现.现代计算机:普及版,2015.

[8] 余萍,赵继生,张洁.基于非线性修正函数的卷积神经网络图像识别研究.科学技术与工程,2015.

[9] 龚震霆.基于卷积神经网络的图像识别和检索方法研究.桂林电子科技大学,2016.

猜你喜欢

图像识别卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
神经网络抑制无线通信干扰探究
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
从滤波器理解卷积
基于神经网络的中小学生情感分析
图像识别在物联网上的应用
图像识别在水质检测中的应用
基于傅里叶域卷积表示的目标跟踪算法