一种利用生成对抗网络加速的结构优化设计方法与流程

文档序号:17724078发布日期:2019-05-22 02:23阅读:1917来源:国知局
一种利用生成对抗网络加速的结构优化设计方法与流程

本发明属于人工智能领域,具体涉及一种应用生成对抗网络加速的结构优化设计技术,在保证生成结果正确的前提下,最大程度降低计算复杂度的方法。



背景技术:

为了在给定的负载情况、约束条件和性能指标下设计出高效的材料结构分布,国内外的研究者应用拓扑优化方法来进行优化设计;拓扑优化的基本思想是将寻求结构的最优拓扑问题转化为在给定的设计区域内寻求最优材料的分布问题,目前拓扑优化方法主要有simp算法、eso算法、水平集法等,这些方法的计算量取决于网格的规模,随着网格的不断增大,计算量成倍增加,使得获取最优设计结果需要花费很长的时间。

随着深度学习的不断发展,其在各个领域的作用也越来越大;深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据;通过使用神经网络模型,使得利用前期优化过程图生成最终结果图变为可能。

在利用传统的simp算法进行结构优化设计时,将优化的中间过程图输入到已经训练好的神经网络模型中,可在几秒内获取最终优化结果图,从而解决了传统拓扑优化算法计算复杂度高、耗时长的问题。生成对抗网络是一种深度学习模型,是近年来无监督学习中最具前景的方法之一;相比于其他生成式模型,生成对抗网络具有产生的样本更加清晰、无需利用马尔科夫链反复采样,无需再学习中进行推断等优点,因此这里的模型我们选用生成对抗网络。



技术实现要素:

为克服上述拓扑优化算法的缺点,本发明提供了一种应用生成对抗网络加速的结构优化设计方法,大幅度降低计算复杂度,减少计算开销。

一种应用生成对抗网络加速的结构优化设计方法,包括以下步骤:

第一步、使用simp算法准备数据

在所有拓扑优化方法中选用传统的simp算法来生成少量优化过程图,并按照9:1的比例将生成的过程图数据分为训练集和测试集;

第二步、利用数据增强技术对数据集进行扩充

随机获取数据集中的数据,并进行以下操作:1)产生随机数a,若其大于0.5则进行上下翻转;2)产生随机数b,若其大于0.5则进行左右翻转;3)产生随机数c,若其大于0.5则进行顺时针旋转;

第三步、使用编码器-解码器构建生成器

自动编码器算法将神经网络的隐含层看成是一个编码器和解码器,使用编码器学习输入数据的隐含特征,解码器可使用学习到的新特征重构出原始输入数据;具体操作如下:取出数据集中的数据并进行第二步中的操作,将处理后得到的数据喂入编码器网络进行特征提取并完成图像压缩任务;将编码器网络输出的featuremap再送入解码器网络,可将被压缩的图像进行放大,在此过程中,将编码器和解码器过程中具有相同尺寸的featuremap连接到解码器中,以便充分利用编码器网络中的结构信息,保持特征的不变性,达到更好的重建效果;

第四步、使用深度卷积网络构建判别器

将一张生成图片或者真实的最终结果图像作为判别器的输入;经过多层带有步长的卷积层网络进行特征提取后,最终得到和标签大小相同的、内参仅为0或1的标签数据;

第五步、使用变形的pix2pix模型进行训练

生成器网络和判别器网络分别定义完成后,需要将两者连接起来循环训练;先固定生成器训练判别器,使用均方误差(mse)方法计算损失值,该损失值来自两部分,一部分为输入真实结果图得到的输出值与全1标签之间的均方误差,另一部分为输入生成结果图得到的输出值与全0标签之间的均方误差,向着判别器总损失下降的方向进行训练以达到训练判别器的目的;再固定判别器训练生成器,使用均方误差(mse)方法计算损失值,该损失值的获取较判别器损失值的获取复杂,应先构建一个model,该model的输入为生成器的两个输入,输出为生成器的输出和判别器生成的标签,其中判别器的输入为生成器的输出;则生成器的损失值即为判别器生成的标签和全1标签之间的均方误差,向着生成器损失下降的方向进行训练以达到训练生成器的目的;多次循环进行固定生成器训练判别器、固定判别器训练生成器的操作,直到判别器的错误率为50%左右为止;

第六步、使用最终模型

对变形的pix2pix模型进行训练,生成器的图像生成能力和判别器的判别能力将会得到提高,每训练10次后进行训练结果输出和当前生成器模型的保存;当训练总过程结束后,首先通过传统的simp算法计算少量迭代步骤,将迭代结果输入到最终保存的生成器模型中进行处理,可迅速得到最终生成结果图,从而实现最终优化结构的快速计算;

本发明的有益效果体现在:

由于本方法使用了生成对抗网络,所以可以在拥有少量simp算法生成的优化过程图的情况下训练好模型;通过使用训练好的生成器模型,在保证生成结果正确的前提下,可大幅度降低计算复杂度,减少计算开销。

附图说明

图1为本发明的流程示意图。

图2为实施例中构建生成器网络的示意图。

图3为实施例中构建判别器网络的示意图。

图4为实施例中构建变形的pix2pix模型的示意图。

具体实施方式

下面结合附图和实施例对本发明做详细说明;

本发明提供了一种应用生成对抗网络加速的结构优化设计方法;如图1所示,一种利用生成对抗网络加速的结构优化设计方法,包括以下步骤:步骤一:使用simp算法准备数据;步骤二:利用数据增强技术对数据集进行扩充;步骤三:使用编码器-解码器构建生成器;步骤四:使用深度卷积网络构建判别器;步骤五:使用变形的pix2pix模型进行训练;步骤六:使用最终模型;本发明具有准确生成优化结构、大幅度降低计算复杂度、减少计算开销的优点。

生成对抗网络加速的结构优化设计方法的步骤如下:

第一、使用simp算法准备数据:在所有拓扑优化方法中选用传统的simp算法来生成少量(100组)优化过程图并保存为npz格式;按照9:1的比例将这100组过程图分为训练集(90组)和测试集(10组);

第二、利用数据增强技术对数据集进行扩充:产生一个取值范围为[0,99]的随机数a,从第一步准备的数据中取出第a组;对取出的数据进行以下操作:1)产生一个随机数b,取值范围为[0,1],若b>=0.5则对该组数据中的每一张图像进行上下翻转,否则不进行任何操作;2)产生一个随机数c,取值范围为[0,1],若c>=0则对该组数据中的每一张图像进行左右翻转,否则不进行任何操作;3)产生一个随机数d,取值范围为[0,1],若d>=0则对该组数据中的每一张图像进行顺时针旋转,否则不进行任何操作;将进行以上三步操作得到的数据组作为真正的输入以扩大数据集;

第三、使用编码器-解码器构建生成器:

如图2所示,先进行第二步操作以获取可作为输入的数据组,产生一个随机数a,取值范围为[20,99],将该数据组中的第a张图像作为输入a,将该数据组中的第a张图像与第a-1张图像的灰度差作为输入b;将输入a和输入b从最后一个维度进行拼接后喂入生成器网络的编码器部分,在使用卷积层进行特征提取的同时,还使用最大池化层(maxpooling2d)进行图像压缩;将经过编码器处理后得到的featuremap喂入解码器部分,在使用卷积层进行特征提取的同时,还使用上采样(upsampling2d)进行图像放大,同时将编码器中与解码器过程中相同尺寸的featuremap连接到一起,以便充分利用编码器网络中结构信息,达到更好的重建效果;

第四、使用深度卷积网络构建判别器:

如图3所示,将一张生成图像或者真实的最终结果图像作为判别器的输入;经过4次步长为2的卷积层网络进行特征提取,最终得到大小为5*5、内参为0或1的标签数据;

第五、使用变形的pix2pix模型进行训练:

如图4所示,生成器网络和判别器网络需要连接起来循环训练;先固定生成器训练判别器,使用均方误差(mse)方法计算损失值,该损失值来自两部分,一部分如图4(a)所示,将真实结果图输入判别器网络,得到的输出标签与大小为5*5的全1标签之间的均方误差,另一部分如图4(b)所示,将生成结果图输入判别器网络,得到的输出标签与大小为5*5的全0标签之间的均方误差,向着判别器总损失下降的方向进行训练以达到训练判别器的目的;再固定住判别器训练生成器,使用均方误差(mse)方法计算损失值,该损失值的获取较判别器损失值的获取复杂,应先构建一个model如图4(b)所示,该model的输入为输入图片a和输入图片b,输出为生成结果图和该生成结果图输入判别器后生成的标签,则生成器的损失值即为生成的标签和大小为5*5的全1标签之间的均方误差,向着生成器损失下降的方向进行训练以达到训练生成器的目的;多次循环进行固定生成器训练判别器、固定判别器训练生成器的操作,直到判别器的错误率为50%左右为止;

第六、使用最终模型:

对变形的pix2pix模型(如图4所示)进行训练时,生成器的图像生成能力和判别器的判别能力将会得到提高,每经过10次训练后进行一次训练结果的输出和当前生成器模型的保存;当200次训练过程结束后,首先通过传统的simp算法计算20次迭代步骤,将迭代结果输入到最终保存的生成器模型中进行计算,可在3秒内得到最终生成结果图,从而实现最终优化结构的快速计算。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1