一种卷积神经网络识别afm图象预测材料性能的方法
技术领域
本发明属于高分子材料技术与机器视觉深度学习交叉领域,尤其涉及一种卷积神经网络识别AFM图象预测材料性能的方法。
背景技术
聚合物材料的力学性能是在材料应用中极为重要的性能,如拉伸性能、断裂韧性、疲劳性能、冲击韧性等,也是生产制造过程中必须要考虑的因素,尤其是结构复杂的共聚物中,这些力学性能的指标更加多变。在实验室中,新的聚合物产品被合成出后,一般要通过原子力显微镜(AFM)人工观测其表面结构,再通过动态热机械分析DMA进行拉伸性能测试,验证其力学性能。
在通过人工观测AFM图象时会存在很大的局限性,一方面使用AFM很难定量给出具体的拉伸性能数值大小,而使用DMA测试的结果也很难解释其深层次的微观机理;另一方面观测AFM人员需要提前培训,一般要经验丰富的研究人员才可以从图像上读取更多的信息,而不同的研究人员在读取时也会产生不同的人为误差,准确度受主观影响较大,效率较为低下。
发明内容
本发明的目的在于针对传统AFM相图读取效率低、准确度差、局限性大且经验难以普及的问题,结合深度学习领域发展迅速的机器视觉技术进行人工智能识别,提供一种卷积神经网络识别AFM图象预测材料性能的方法。本发明可通过深度神经网络快速读取AFM图象的信息,准确预测材料相关力学性能。
本发明的目的是通过以下技术方案来实现的:一种卷积神经网络识别AFM图象预测材料性能的方法,利用机器学习的方法搭建并训练一个深度卷积神经网络,该网络通过AFM相图预测聚合物材料的力学性能。
进一步地,将合成的已知聚合物作为数据集的来源,通过DMA进行拉伸性能测试的结果作为数据集的标签,使用AFM采集的相图作为数据集的特征,使用数据集对深度卷积神经网络进行训练。
进一步地,将像素值归一化到[0,1]范围内来对数据集中的图像进行预处理。
进一步地,所述卷积神经网络使用Res-Net网络模型,通过残差学习建立跳过连接,加快训练速度。
进一步地,基于Res-Net网络模型,首先使用卷积层与最大池化层进行输入,并使用局部响应归一化确保先前的层识别各种模式,随后添加多个不同的残差单元,每个残差单元由两个卷积层组成且没有池化层;具有批量归一化和ReLU激活,使用n×n内核并保留空间维度。
本发明的有益效果是:
(1)本发明通过使用深度卷积神经网络对AFM图像进行识别,将图象的特征与对应材料的力学性能行进关联,属于材料科学与深度学习计算机视觉的交叉领域,借助深度学习的优势,可以有助于识别AFM图像中人眼难以观察出的规律,而材料的力学性能很有可能会取决于这些规律的特征,这进一步拓宽了AFM图象的应用场合,且有助于材料科学领域进一步研究材料相区分布与材料力学性能之间的关系;
(2)使用Res-Net残差卷积神经网络,卷积层和池化层可以较好的识别图像关键特征,在深层卷积过程中添加跳过链接,馈入层的信号也将添加到位于堆栈上方的层的输出中,该网络可以较好的解决模型越来越深而参数越来越少的问题,进而分析图象中的特征,找出规律并识别。除此之外在网络中加入dropout正则化技术减少数据特征,降低了模型自由度,进而减弱训练过程对于数据集的依赖,回避了大数据驱动技术与材料领域实验耗时数据较少之间的矛盾,该网络可以较好的分析AFM图象与对应材料的力学性能之间的联系。
附图说明
图1是本发明研究框架思路示意图;
图2是本发明Res-Net卷积神经网络的模型示意图。
具体实施方式
如图1所示,本发明一种卷积神经网络识别AFM图象预测材料性能的方法,包括以下步骤:
步骤1、获取不同聚合物材料的原子力显微镜AFM图象,基于材料本身的相关力学性能结果对图像进行标记。通过程序控制进料,合成不同单体组成的嵌段共聚物,梯度共聚物与均聚物等聚合物材料,使用DMA对其进行拉伸性能测试,得到不同合成条件下,不同单体不同排列组合的聚合物材料的断裂伸长率,作为原始数据集的标签。使用AFM得到聚合物的相图作为数据集的特征,取得聚合物晶区与非晶区的分布信息。
步骤2、将图像进行归类与预处理,包括中心化,标准化,归一化;随后划分训练集、验证集与测试集,便于后续网络训练。使用训练集和验证集对深度卷积神经网络进行训练,使用测试集对结果进行测试。通过numpy将像素值归一化到[0,1]范围内(最初所有的值都在[0,255]范围内)来对图像进行预处理,避免训练中可能产生的梯度消失。
步骤3、搭建Res-Net深度神经网络框架,选定适合的优化器、损失函数、正则化方法和迭代次数;用于进行AFM相图的特征提取,得到对应的特征神经网络。在Python中使用TensorFlow框架设置训练数据生成器(ImageDataGenerator);使用Sequential顺序模型搭建,使用dropout正则化避免数据量过小带来的过拟合问题。基于Res-Net网络模型,通过残差学习建立跳过连接,可以大大加快训练速度;如图2所示,在这个网络中,首先使用卷积层与最大池化层进行输入,使用较大的内核尽可能保留数据特征,并使用局部响应归一化确保先前的层识别各种模式,随后添加多个不同的残差单元,每个残差单元由两个卷积层(没有池化层)组成,具有批量归一化和ReLU激活,使用3×3内核并保留空间维度。
步骤4、基于已经获得的数据集进行神经网络的训练,得到训练模型,使用该网络可以通过识别原子力显微镜(AFM)相图的相关规律,做出聚合物材料的力学性能(断裂伸长率)的预测。读取源AFM中得到的图片,将它们转换为float32多维数组,并将图像数据(连同它们的标签)反馈给神经元网络。
实施例1:
步骤1、通过程序控制进料,使用RAFT乳液聚合合成苯乙烯和丙烯酸正丁酯的梯度共聚物,将合成的梯度共聚物送往原子力显微镜(AFM)进行切片检验观测其表面形貌,得到AFM相图。在进行步骤2之前对步骤1中数据集中的原子力显微镜(AFM)相图图像预处理,通过使用训练数据生成器(ImageDataGenerator)将图片剪裁dpi300×300,并进行归一化处理,将RGB三通道[0,255]内数值压缩至[0,1]之间。
步骤2、搭建深度卷积神经网络,深度卷积神经网络输入层由64个7×7滤波器所构成,而后链接包含64个3×3滤波器的最大池化层,每个残差单元由两个卷积层组成,内含64个3×3滤波器,具有批量归一化(BN)和ReLU激活,使用3×3内核保留空间维度,随后使用Flatten层展平,使用含有1024个神经元的全连接网络作为输出,采用softmax激活函数。
步骤3、从AFM相图数据集中选取若干图象进行训练,使用sklearn中的train_test_split函数对数据集进行训练集和测试集的划分,在本次实例中选取训练集与测试集的比例为0.9:0.1。在对数据集进行划分后,再将训练集划分为训练集和验证集,以供深度神经网络进行训练。将图片进一步作归一化、中心化处理,对训练集、验证集、测试集采取相同的图片处理操作保证数据的稳定性。
步骤4、将训练集与验证集数据导入搭建好的深度神经网络,采用SGD优化器,动量值为0.9,使用mse损失函数对数据集进行训练,验证集实时对训练批次进行验证,最终得到训练完成的深度卷积神经网络,对其在测试集上进行测试,完成卷积神经网络识别AFM图象对共聚物力学性能的预测。
实施例2:
步骤1、通过程序控制进料,使用RAFT乳液聚合合成苯乙烯和丙烯酸正丁酯的嵌段共聚物,并分别合成聚苯乙烯和聚丙烯酸正丁酯的均聚物,将合成的聚合物材料送往原子力显微镜(AFM)进行切片检验观测其表面形貌,得到AFM相图。在进行步骤2之前对步骤1中数据集中的原子力显微镜(AFM)相图图像预处理,通过使用训练数据生成器(ImageDataGenerator)将图片剪裁dpi300×300,并进行归一化处理,将RGB三通道[0,255]内数值压缩至[0,1]之间。
步骤2、搭建深度卷积神经网络,深度卷积神经网络输入层由64个7×7滤波器所构成,而后链接包含64个3×3滤波器的最大池化层,每个残差单元由两个卷积层组成,内含64个3×3滤波器,具有批量归一化(BN)和ReLU激活,使用3×3内核保留空间维度,使用dropout进行正则化限制模型,随后使用Flatten层展平,使用含有1024个神经元的全连接网络作为输出,采用sigmoid激活函数。
步骤3、从AFM相图数据集中选取若干图象进行训练,使用sklearn中的train_test_split函数对数据集进行训练集和测试集的划分,在本次实例中选取训练集与测试集的比例为0.8:0.2,因为网络中使用dropout正则化技术,考虑减少数据量进行训练力求得到相同效果,其余图像处理技术与实施例1相同。
步骤4、将训练集与验证集数据导入搭建好的深度神经网络,采用RMSProp优化器,学习率设置为0.001,衰减率设置为0.9,使用mse损失函数对数据集进行训练,同时读取训练集和验证集的损失和准确度,epochs设置为100,最终得到训练完成的深度卷积神经网络,训练与测试过程的操作与实施例1一致。
实施例3:
步骤1、通过程序控制进料,使用RAFT乳液聚合合成苯乙烯和丙烯酸正丁酯的梯度共聚物,使用RAFT乳液聚合合成苯乙烯和丁二烯的梯度共聚物,并分别合成三种单体的均聚物,将合成的聚合物材料送往原子力显微镜(AFM)进行切片检验观测其表面形貌,得到AFM相图。在对图像标记时除了对应的力学性能外,还需加入单体分子的分子描述符进行区分,其余手段与实施例1一致。
步骤2、搭建深度卷积神经网络,神经网络结构与实施例2一致。
步骤3、数据集划分,其基本步骤与实施例2一致,方法一致。
步骤4、将训练集与验证集数据导入搭建好的深度神经网络,由于数据更为复杂,采用Adam优化器,学习率采用默认值0.001,使用mse损失函数对数据集进行训练,同时读取训练集和验证集的损失和准确度,epochs设置为200,最终得到训练完成的深度卷积神经网络,训练与测试过程的操作与实施例1一致。