近年来,人工智能等相关技术得到井喷式发展,广泛应用于各行各业中,为技术的创新提供新的解决思路。20世纪90年代以来,计算机的迅猛发展也带动了CFD的快速进步,船舶设计领域积累了庞大的数值计算数据和相关经验[1]。数据量激增使得人工智能技术在船舶领域有深层的发展,发掘数据的价值,得到数据更高层的含义[2]。
在船舶水动力学领域研究和探索人工智能的应用中,关于流场数据的研究,本文主要关注船体运行中兴波所产生的波形图,并分析其对船舶航速的影响。传统判断方法由经验丰富的专家人为完成,由于船舶各航速之间的波形图差异较小,存在准确度不高的可能性[3]。因此采用人工智能技术,从历史数据中挖掘出波形图与船舶航速值之间复杂规律,辅助专家更好完成基于波形图的船舶航速判断,这样既可以减轻专家的负担,让专家有更多的精力投入到方法研究中,也能够提高基于波形图的船舶航速判断的准确性和稳定性[4]。
本文主要研究少量兴波波形图样本下如何高效利用深度学习等人工智能技术进行图像识别与分类。
1 整体方案设计对于识别小样本的各种问题,存在很多缺点[5]。如模型泛化能力不高,过拟合概率高等。本文采用基于深度学习的样本分类识别模型,优化方向主要以,提高图像样本数和优化识别模型2个方面为基础。为了增加样本数量,采用生成模型与图像预处理相结合的方法[6]。首先,采用参数量较少的卷积神经网络生成模型进行样本增强。由于样本图像的随机性,采用条件生成模型生成样本,生成的样本集包含标签,可以很好地应用于后续的监督分类学习。对于在条件生成模式中样本模糊出现的问题,提出以自我适应数学形态学为基础的图像边框检测技术,克服边缘模糊问题。
本文需要解决以下难点:
1)基于波形图的船舶航速判断目前只有部分专家靠自身经验来完成,没有成熟的公式和算法;
2)同一船舶各航速之间的波形图差异较小,目前很难通过波形图准确判断船舶航速;
3)能够从历史数据中获取到的样本数量非常少,只有400张波形图样本和相近船型的20张波形图样本。
在小样本分类模型中,采用迁移学习对模型进行分类,在少量训练样本的情况下,可以获得较高的识别效率。本文将生成式模型与迁移学习相结合,将融合模型用于小样本图像识别。迁移学习采用vgg16模式进行训练[7]。与卷积神经网络分类训练相比,加入传递学习可以提高模型的泛化能力,同时也大大提高了模型的训练效率。当样本不足时,基于转移学习的分类模型只需重新训练,识别精度大大提高。结合前一部分的样本增强技术,在样本缺失的情况下,通过加入模拟样本和转移学习进行模型融合和分类。在精度方面,与单纯使用传递学习和卷积神经网络相比,本文提出的算法得到了改进,对在样本数不足的实验环境下进行深度学习分类有很好的借鉴意义。
针对相应的难点,开展深度神经网络智能识别方法的研究、理解深度神经网络的原理,论证适用于船舶水动力学中通过船型、航速预报兴波的逆向工程即通过兴波的数据识别航速。采集并整理试验兴波场试验数据、图像和视频数据,增加深度学习的样本数据,通过仿真方法生产大量的样本数据,并建立大子样数数据库。研究以流场图作为深度神经网络输入的编码方式及以航速为输出的编码方式。在此基础上,确立最终的损失函数,运用深度学习框架构建智能预报的神经网络,调整网络模型的结构逐步提高预报精度。
本文的技术途径如图1所示。
首先研究模型输入输出。
1)以流场图为DNN输入的编码方式
神经网络的输入决定了神经网络可获取的特征,目前通过势流计算方法,可以得出船型外部的兴波值。编写程序将兴波值进行图形可视化,如图2所示。通过等高线图或者云图表达兴波的形状特征。物理试验可以通过摄像头进行兴波的拍摄,同样经过图像处理的方法获得等高线图或者云图。
生成的样本往往存在噪声,图2中黑色点和线为干扰噪声,这些噪声来源广泛,可能是水中物体游动的纹波或者空中掉落的物体产生的纹波等,都会对船体兴波纹理识别造成一定程度的干扰,影响最终的结果输出。解决图像噪声的去噪问题,主要有基于空域的滤波方法,其中最常用的是中值滤波方法[8],其基本原理是将数字图像或序列中某一点的值与该点所在区域内每个点的中值进行变换。设
$ \widehat{f}(x,y)=MED\underset{(x,y)\in A}{\left\{f\right(x,y\left)\right\}} 。$ | (1) |
2)以航速为DNN输出的编码方式
预报的航速采用无量纲的傅汝德数表示。傅汝德数是流体力学中表征流体惯性力和重力相对大小的一个无量纲参数,记为Fr,表示惯性力和重力量级的比,即
$ {{F}}_{{r}}=\frac{{U}}{\sqrt{{g}{L}}} 。$ | (2) |
式中:U为物体运动速度;g为重力加速度;L为物体的特征长度。
目前采取2种方案,第1种方案把图像按照Fr的取值进行分类。Fr的取值范围在[0.10,0.50]之间,因此设计一个40维度的向量,最终以Softmax的分类值进行分类[9]。第2种方案采用回归的方式进行计算获取Fr值,输出为一个值,激活函数使用ReLU[10]。
3)基于CNN的兴波云图识别模型确立
确定了输入的编码方式和输出的编码方式后,在卷积神经网络层级的研究基础上构建深度学习网络来获取图像的特征,再通过全联接网络进行分类或者回归。模型网络结构如图4所示。
在常用的数据样本扩展算法中,最常见的是数据增强,其次是使用生成模型的样本扩展。扩展后的样本图像可以很好地用于图像训练。在样本训练中,不同样本扩展方法的识别精度往往不同。
2.1.1 基于图片处理技术的样本扩充利用图像亮度的变化、噪声、反转、裁剪、缩放等制作大量样品,其中,在将原始小样本进行图像平移操作时,可以使网络学习到的模型具有图像的平移不变特征。图像旋转技术可以在进行网络学习时学习旋转不变的特点。根据任务的不同,可能会有各种各样的姿态,旋转可以弥补样品中姿态少的问题,增加数据集的丰富度。图像镜像技术是一个可以用图像的不同姿态来表达的问题,具有与图像旋转相似的功能。图像亮度的变化一般通过图像直射的均衡化表示,可以很好地强化不同亮度的图像样本。其次,有裁剪、放大缩小、模糊等方法。
2.1.2 基于生成式模型的样本扩充最近的研究中,生成模型受到了广泛关注。由于小样本的识别率较低,仅仅依靠基于图像处理的样本扩展技术获得的某些样本在数据集中的性能不好,容易发生过拟合现象,因此通过采用生成对抗网络达到丰富数据集的作用。
生成模型是利用深度学习生成样本的模型,如图5所示。与一般的样本强化技术不同,网络模型包括判别器和生产器,生成器产生噪声样本,判别器进行判别,两者相互进化来优先判断,直到判别器己经无法判断当前图像来自噪声数据还是原始数据,即生成器产生的样本与原始样本基本一致,这种基于博弈论方法产生的样品有助于扩展样本识别,并且不容易出现拟合现象。
基于利用上述2种方法进行样本扩充的效果如图7所示。
迁移学习(transfer learning)[12]的目标是利用从环境中学习到的知识帮助新环境下的学习任务。在传统的机器学习框架下,学习任务是根据所提供的足够的训练样本学习分类模型,并使用所学的分类模型对测试样本进行分类和预测。首先,这种学习过程需要大量已有标签训练样本的支持。如果没有大量的标签数据,很多机器学习研究和应用将无法实现。其次,传统的机器学习方法假设训练数据和测试数据遵循相同的数据分布。只有满足上述2个前提,传统的机器学习方法才能进行有效的工作。然而,在特定领域中,由于标注训练和测试数据需要大量的人力和物力,所以很难获得大量的训练数据。除此之外,在很多情况下,训练和测试数据的相同分布假设是不满足的。如训练数据过期的情况等,需要重新标注大量的训练数据。
迁移学习可以定义为:给定一个源领域
深度CNN可以将以下特点提取的特点运用到迁移学习中:
1)利用迁移,将预训练的深度CNN模型在新任务的小规模数据集中进行再训练,完成网络参数的微调,可以进一步强化提取特征的表达能力。
2)从深层提取的高层特征具有足够的图像表示和泛化能力,利用简单的线性分类器可以区分不同样本的高层语义信息。
3)利用大型图像数据集训练Imagenet等深层CNN模型,由于样本和参数数量庞大,即使使用GPU加速,也需要较长的训练时间,这是无法接受的。然而,深层CNN体系结构的另一个优点是预先训练好的网络模型可以实现网络结构和参数信息的分离,并且都以配置文件的形式保存。网络结构一致,可以利用已训练的权重参数构建网络,初始化,大大节约网络学习时间。
3 结果与分析本文实验分为3个部分,分别基于原始数据、数据增强后的数据和利用迁移学习的方法进行实验对比。各实验数据分布如表1所示。
原始数据与数据增强模型实验中采用的卷积神经网络模型结构如图8所示。网络首先使用2层卷积层,卷积核大小是5×5,每层后加上一个最大值池化。卷积核数目从128开始,每经过一次最大池化,卷积核数目翻倍。卷积层之后是2个全连接层和1个softmax分类器。由于该模型的分类数为5,所以softmax有40个输出单元,依次对应相应类别,采用交叉熵做为损失函数。
迁移学习模型采用大型分类网络vgg结构。对VGG16模型进行部分替换,首先需要利用TensorFlow提供的model.get_layer方法从VGG16模型中,找到模型替换的起始层。模型替换的起始层找到后,需要利用TensorFlow提供的模型编写方法,对VGG16模型进行修改。模型构建完成后,最终的输出结果只有一系列概率值,即输入图片的对应航速预测值的概率。
使用相近船型样本集中的20个样本对模型进行测试,测试结果如图10所示。以曲线图的方式展现加入迁移学习的船舶航速识别实验结果,其中X轴为测试数据样本,Y轴为测试样本的识别航速。图11为加入迁移学习后与之前实验的误差结果对比,误差值的期望值E(error)= 0.0001,表明十分接近真实值。可以看出,本次实验中有多个样本的识别航速和真实航速基本一致,且所有的识别航速均匀分布在真实航速曲线两侧,模型识别出的航速与真实航速之间的误差小于0.05,准确率较原始数据和数据增强的实验结果有了进一步的提高。
由上述结果可以看出,加入迁移学习后,相比单纯的利用卷积神经网络,准确率有了很大的提升。
4 结 语本文论证了适用于船舶水动力学中通过船型、航速预报兴波的逆向工程,实现了通过兴波的数据识别出航速的深度神经网络模型。
1)论述了研究背景,确定以兴波云图或流场图反向推断船舶航速的研究方向,难点为样本数量不足;
2)针对相应难点,采用生成对抗网络扩充样本,同时利用图像处理方法数据扩充,并进行数据预处理;
3)确定VGG神经网络结构,利用迁移学习加快训练模型速度,最终测试误差达到0.05以下,满足最初目标。
[1] |
张天姣, 钱炜祺, 周宇, 等. 人工智能与空气动力学结合的初步思考[J]. 航空工程进展, 2019, 10(1): 5-15. DOI:10.16615/j.cnki.1674-8190.2019.01.001 |
[2] |
周迪斌, 解利军, 张帅, 等. A feature-based data mining method for fluid dynamics[J]. 空气动力学学报, 2010, 28(5): 540-546. DOI:10.3969/j.issn.0258-1825.2010.05.010 |
[3] |
周芃. 基于CFD的高速舰船阻力与尾部伴流场的数值模拟[D]. 北京: 中国舰船研究院, 2013.
|
[4] |
曹雪. 内河大型自航绞吸挖泥船的阻力性能研究[D]. 上海: 上海交通大学, 2013.
|
[5] |
章林柯, 崔立林. 潜艇机械噪声源分类识别的小样本研究思想及相关算法评述[J]. 船舶力学, 2011, 015(008): 940-947. DOI:10.3969/j.issn.1007-7294.2011.08.015 |
[6] |
赵威. 基于迁移学习的小样本深度学习研究[D]广州: 广东工业大学. 2017.
|
[7] |
LIU B, ZHANG X, GAO Z, et al. Weld defect images classification with VGG16-Based neural network[J]. International Forum on Digital TV and Wireless Multimedia Communications. Springer, Singapore, 2017. |
[8] |
王圳萍, 张家树, 陈高. 加权低秩矩阵恢复的混合噪声图像去噪[J]. 计算机科学, 2016, 43(1): 304-307. DOI:10.11896/j.issn.1002-137X.2016.01.064 |
[9] |
JANG E, GU S, POOLE B. Categorical reparameterization with gumbel-softmax[J]. ArXiv E-prints, 2016.
|
[10] |
PHILIPP P, FELIX V. Optimal approximation of piecewise smooth functions using deep ReLU, neural networks[J]. Neural Networks, 2017.
|
[11] |
唐贤伦, 杜一铭, 刘雨微, 等. 基于条件深度卷积生成对抗网络的图像识别方法[J]. 自动化学报, 2018, 44(5): 855-864. DOI:10.16383/j.aas.2018.c170470 |
[12] |
WANG Y, WANG C, ZHANG H, et al. Combing single shot multibox detector with transfer learning for ship detection using chinese Gaofen-3 images[C]//2017 Progress in Electromagnetics Research Symposium-Fall(PIERS-FALL). IEEE, 2017.
|