蔡梓豪 姜屹 張來平 鄧小剛
摘要:將深度卷積神經(jīng)網(wǎng)絡(luò)引入網(wǎng)格質(zhì)量評價問題有望代替網(wǎng)格工程師完成繁雜的網(wǎng)格質(zhì)量評價工作,節(jié)省計算流體力學數(shù)值模擬的人力成本,但現(xiàn)有方法的準確率和效率仍需要提高.因此,本文提出一種基于卷積注意力網(wǎng)絡(luò)的網(wǎng)格質(zhì)量評價方法.首先,本文提出在輕量級卷積神經(jīng)網(wǎng)絡(luò)模型中嵌入通道注意力的方式以同時提升準確率和效率;其次,設(shè)計了一個神經(jīng)網(wǎng)絡(luò)模型CANet用于網(wǎng)格質(zhì)量評價任務;最后,通過Z-Score標準化對數(shù)據(jù)進行預處理,解決輸入數(shù)據(jù)分布不一致的問題,以進一步提升準確率.實驗結(jié)果表明,與現(xiàn)有方法相比,CANet可以達到更優(yōu)的準確率97.06%,并且在效率上也有至少34.9%的提升.
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò); 注意力機制; 網(wǎng)格質(zhì)量評價; 計算流體力學; 數(shù)值模擬
中圖分類號:??TP391? 文獻標識碼:A? DOI:10.19907/j.0490-6756.2023.053003
收稿日期: ?2022-11-21
基金項目: ?國家重大專項(GJXM92579)
作者簡介: ??蔡梓豪(1998-), 男, 黑龍江大慶人, 碩士研究生,主要研究領(lǐng)域為深度學習. E-mail: 907575778@qq.com
通訊作者: ?姜屹. E-mail: yijiang@mail.ustc.edu.cn
A ?mesh quality evaluation method based on convolutional attention network
CAI Zi-Hao ?1,2 , JIANG Yi ?3 , ZHANG Lai-Ping ?4 , DENG Xiao-Gang ?3
(1.National Key Laboratory of Fundamental Science on Synthetic Vision, Sichuan University, Chengdu 610064, China; ??2.Tianfu Engineering-oriented Numerical Simulation & Software Innovation Center, Sichuan University, Chengdu 610064, China; ??3.Institute of Systems Engineering, Academy of Military Sciences, Beijing 100082, China; ?4.Institute of Defense Science and Technology Innovation, Academy of Military Sciences, Beijing 100071, China)
The introduction of deep convolutional neural network into the mesh quality evaluation problem is expected to replace the engineers in completing the complicated mesh quality evaluations, therby saving the labor cost of computational fluid dynamics numerical simulation. However, the accuracy and efficiency of the existing methods still need improvement. Therefore, a mesh quality evaluation method based on convolutional attention network is proposed in this paper. Firstly, a method of embedding channel attention into the lightweight convolutional neural network model is proposed to improve both accuracy and efficiency. Secondly, a neural network model called CANet is designed for mesh quality evaluation. Finally, Z-Score standardization is used to preprocess the data and solve the problem of inconsistent input data distribution, further improving the accuracy. Experimental results show that, compared with the existing methods, CANet can achieve a better accuracy of 97.06%, and improves the efficiency by at least 34.9%.
Convolutional neural network; Attention mechanism; Mesh quality evaluation; Computational fluid dynamics; Numerical simulation
1 引 言
網(wǎng)格質(zhì)量一直是影響計算流體力學數(shù)值模擬的重要因素之一 ?[1] .質(zhì)量較差的網(wǎng)格將降低數(shù)值模擬求解的精度 ?[2] ,甚至導致結(jié)果不收斂 ?[3] .研究表明,即使一套網(wǎng)格中只存在極少部分的網(wǎng)格單元質(zhì)量較差,這些低質(zhì)量網(wǎng)格單元也會對數(shù)值模擬的結(jié)果產(chǎn)生嚴重影響 ?[4,5] .事實上,即使是十分先進的網(wǎng)格生成工具,也很難保證生成網(wǎng)格的質(zhì)量能夠完全達到數(shù)值求解的要求 ?[6] .為了獲得更可靠的數(shù)值模擬結(jié)果,在數(shù)值模擬求解前執(zhí)行網(wǎng)格質(zhì)量評價是十分必要的 ?[7] .
傳統(tǒng)網(wǎng)格質(zhì)量評價方法往往依賴于網(wǎng)格單元的幾何形狀參數(shù).例如較早的時候,有研究者提出通過網(wǎng)格單元的面積與邊長來計算網(wǎng)格單元的質(zhì)量 ?[8] .隨著研究的不斷深入,大型CAE軟件提出更為復雜的評價指標來評價網(wǎng)格的質(zhì)量 ?[9,10] ,例如網(wǎng)格單元的長細比、最大內(nèi)角、扭曲度、翹曲度、雅可比比率、正交質(zhì)量系數(shù)等.通過對這些指標進行加權(quán)計算,工程師們可以獲得網(wǎng)格中每個網(wǎng)格單元的網(wǎng)格質(zhì)量及分布.
然而,這些方法僅僅關(guān)注于每個網(wǎng)格單元的幾何形狀,卻難以評價網(wǎng)格的整體質(zhì)量,比如網(wǎng)格光滑性差或分布不合理等.實際中,仍然需要由經(jīng)驗豐富的網(wǎng)格質(zhì)量工程師通過這些質(zhì)量評價指標的反饋對網(wǎng)格整體質(zhì)量進行綜合評判,并制定相應的網(wǎng)格優(yōu)化策略.
深度神經(jīng)網(wǎng)絡(luò)有望從網(wǎng)格質(zhì)量評價工作大量的數(shù)據(jù)中學習到網(wǎng)格質(zhì)量評價工作的潛在規(guī)律,從而代替人工網(wǎng)格質(zhì)量評價環(huán)節(jié),節(jié)省網(wǎng)格質(zhì)量評價工作的人力成本.參考傳統(tǒng)網(wǎng)格質(zhì)量評價方法和深度學習圖像分類問題,Chen等人 ?[11] 提出基于卷積神經(jīng)網(wǎng)絡(luò)的網(wǎng)格質(zhì)量評價方法,并設(shè)計了一個基于VGG-19 ?[12] 模型的卷積神經(jīng)網(wǎng)絡(luò)模型GridNet用于評價二維翼型結(jié)構(gòu)網(wǎng)格的質(zhì)量.該方法將網(wǎng)格中的每一個網(wǎng)格單元的最大內(nèi)角、水平長度和豎直長度按網(wǎng)格計算域封裝成三維張量矩陣輸入卷積神經(jīng)網(wǎng)絡(luò)模型,通過卷積神經(jīng)網(wǎng)絡(luò)模型進行網(wǎng)格質(zhì)量的分類.盡管此方法能夠在一定程度替代網(wǎng)格質(zhì)量工程師對網(wǎng)格的整體質(zhì)量進行評價,但其準確率和效率還有待提升.
為了提高模型準確率,Xu等人 ?[13] 設(shè)計了一個基于殘差網(wǎng)絡(luò) ?[14] (ResNet-50)模型的卷積神經(jīng)網(wǎng)絡(luò)模型MeshNet用于網(wǎng)格質(zhì)量評價任務.盡管相較于VGG-19模型,深度殘差網(wǎng)絡(luò)能夠提升模型的數(shù)據(jù)擬合能力,但實驗結(jié)果表明,該方法對準確率的提升效果比較局限,而且更深的網(wǎng)絡(luò)模型大幅降低了效率.
為了提高模型效率,Chen等人 ?[15] 提出了一個基于深度可分離卷積 ?[16] 的網(wǎng)絡(luò)模型MQNet用于網(wǎng)格質(zhì)量的檢測.然而實驗結(jié)果表明,深度可分離卷積在GPU上的表現(xiàn)并沒有理想情況那么優(yōu)越.盡管深度可分離卷積通過將傳統(tǒng)卷積過程分解,減小了計算量,但這也相當于增加了計算次數(shù),導致其在GPU上的計算效率不佳.
卷積神經(jīng)網(wǎng)絡(luò)模型的復雜度普遍與數(shù)據(jù)擬合效果成正比,與效率成反比 ?[12,14,16] .現(xiàn)有工作表明,使用輕量級卷積神經(jīng)網(wǎng)絡(luò)會導致準確率不足,而增加卷積神經(jīng)網(wǎng)絡(luò)模型復雜度對準確率的提升效果比較局限,而且會導致效率的大幅下降.
引入注意力機制是平衡準確率與效率的一種有效方法.2014年,注意力機制 ?[17] 被提出并很快被應用于計算機視覺領(lǐng)域 ?[18,19] .研究證明,注意力機制能夠結(jié)合卷積神經(jīng)網(wǎng)絡(luò)使用,以較小的計算代價有效提升卷積神經(jīng)網(wǎng)絡(luò)模型的準確率 ?[20-24] .通道注意力能夠通過建模各個特征通道的重要程度,并且根據(jù)任務需求增強或者抑制各個特征通道的信息表達,從而提升模型的數(shù)據(jù)擬合效果 ?[25-28] .此外,通道注意力是眾多注意力機制中計算代價較小的一種,更加適合于在現(xiàn)有工作的基礎(chǔ)上提升效率.因此,在輕量級卷積神經(jīng)網(wǎng)絡(luò)模型上嵌入通道注意力,利用通道注意力來彌補卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)擬合能力的不足將是同時提高精度和效率的可行方法.
另外值得注意的問題是,現(xiàn)有方法使用的輸入數(shù)據(jù)中,最大內(nèi)角與水平長度、豎直長度的分布不一致,這會不利于神經(jīng)網(wǎng)絡(luò)模型的數(shù)據(jù)擬合.因此,需要使用數(shù)據(jù)標準化對其進行預處理,約束其數(shù)據(jù)分布.
為此,本文提出了一種基于卷積注意力的網(wǎng)格質(zhì)量評價方法.本文的主要貢獻如下:(1) 提出在輕量級卷積神經(jīng)網(wǎng)絡(luò)模型上嵌入通道注意力的方法以同時提高精度和效率的同時,利用通道注意力對卷積神經(jīng)網(wǎng)絡(luò)擬合能力的增強來彌補輕量級卷積神經(jīng)網(wǎng)絡(luò)擬合能力欠佳的問題;(2) 設(shè)計了一種卷積注意力網(wǎng)絡(luò)模型CANet用于網(wǎng)格質(zhì)量評價任務,通過該模型驗證了所提出方法的有效性,并比較了ECA與經(jīng)典的Squeeze-and-Excitation ??[23] 兩種通道注意力對準確率提升的效果;(3) 使用Z-Score對輸入數(shù)據(jù)進行預處理,解決輸入數(shù)據(jù)不一致的問題,以進一步提高準確率.
2 相關(guān)工作
2.1 殘差網(wǎng)絡(luò)
殘差網(wǎng)絡(luò)是最成熟、應用最廣泛的卷積神經(jīng)網(wǎng)絡(luò)模型之一.憑借獨特的殘差連接結(jié)構(gòu),殘差網(wǎng)絡(luò)的數(shù)據(jù)擬合能力優(yōu)于大多數(shù)卷積神經(jīng)網(wǎng)絡(luò)模型.實驗結(jié)果表明,即使是層數(shù)較少的輕量級殘差網(wǎng)絡(luò),也有很好的數(shù)據(jù)擬合能力 ?[14] .殘差連接結(jié)構(gòu)將原始輸入與卷積后的輸出相加作為最終輸出,從而防止了梯度消失和退化問題,獲得了較強的數(shù)據(jù)擬合能力.殘差模塊第 L+1 層輸出 x ?L+1 ?和第 L 層輸出 x ?L+1 ?的關(guān)系如式(1)所示.
x ?L+1 =x L+f(W ?L+1 x L+b ?L+1 ) ?(1)
其中, W ?L+1 ?表示第 L+1 層卷積層的權(quán)重矩陣; b ?L+1 ?層表示第 L+1 層卷積層的bias值; f 為激活函數(shù).
殘差網(wǎng)絡(luò)有很多衍生的網(wǎng)絡(luò)模型如ResNet-18、ResNet-34、ResNet-50,ResNet-121等.模型名稱中的數(shù)字代表了模型中卷積層的個數(shù),數(shù)字越大則代表模型復雜度越高、計算量越大.
2.2 通道注意力
Squeeze-and-Excitation(SE)是通道注意力中最具代表性的工作.SE通過Squeeze和Excitation兩個操作實現(xiàn)對通道信息表達能力的控制.Squeeze利用全局平均池化 ?[29] 將特征壓縮,實現(xiàn)全局上下文信息的融合,如式(2)所示.
g=GAP( Feature )= 1 H×W ∑ H ?i=1 ?∑ W ?j=1 ?u(i,j) ?(2)
其中,F(xiàn)eature表示輸入特征; u(i,j) 表示特征矩陣的值; H 和 W 分別表示特征矩陣的高和寬.Excitation則類似于循環(huán)神經(jīng)網(wǎng)絡(luò)中門的機制,通過全連接層來為每個特征通道生成權(quán)重.
高效通道注意力(Efficient Channel Attention,ECA)是對SE的改進,與SE相同,ECA同樣利用全局平均池化對特征進行壓縮,融合全局上下文信息.而在Excitation部分,ECA將原本SE模塊中的兩個全連接層替換為一個自適應卷積核的一維卷積層,從而獲得了比SE更好的性能,一維卷積層的卷積核大小 k 根據(jù)輸入特征的通道數(shù) C 自適應,其計算方法如式(3)所示.
k=ψ(C)= ????log ??2(C) γ + b γ ?????odd ?(3)
其中, γ 和 b 為常數(shù)( γ =2, b =1); odd表示離結(jié)果最近的奇數(shù)(向上取).
3 本文方法及模型
本文提出了一種基于卷積注意力網(wǎng)絡(luò)方法,即在輕量級卷積神經(jīng)網(wǎng)絡(luò)上嵌入通道注意力模塊以同時提升準確率和效率.基于這一思想,本文設(shè)計了一個卷積注意力網(wǎng)絡(luò)模型CANet用于網(wǎng)格質(zhì)量評價,并通過Z-Score數(shù)據(jù)標準化解決了輸入數(shù)據(jù)分布不一致問題.本節(jié)將詳細介紹CANet模型的輸入輸出、模型結(jié)構(gòu)、損失函數(shù)及Z-Score數(shù)據(jù)預處理方法.
3.1 模型輸入輸出
類比于深度學習圖像分類問題,CANet的輸入 X 為網(wǎng)格中網(wǎng)格單元的最大內(nèi)角、水平長度和豎直長度構(gòu)成的三維張量矩陣,如式(4)所示.
X=(M,H,V) ?(4)
其中, M 為最大內(nèi)角矩陣; H 為水平長度矩陣; V 為豎直長度矩陣.矩陣的行號、列號確定了網(wǎng)格單元在其計算域中的位置(二維問題中,網(wǎng)格的計算域為一個抽象的矩形平面,網(wǎng)格在計算域的各個方向上分別完全等間距),例如: M ?ij ?元素的值即網(wǎng)格計算域中的第 i 行、第 j 列網(wǎng)格單元的最大內(nèi)角值.網(wǎng)格單元的最大內(nèi)角、水平長度和豎直長度的實際含義如圖1所示.
CANet模型的輸出為模型預測出的該套網(wǎng)格所屬的質(zhì)量類別(獨熱碼向量),如高質(zhì)量網(wǎng)格、正交性差等(具體類別見4.1節(jié)).
3.2 網(wǎng)絡(luò)模型結(jié)構(gòu)
ResNet-18模型相較于VGG-19模型有更高的計算效率,因此CANet模型基于ResNet-18模型設(shè)計,在其中嵌入了ECA,其整體結(jié)構(gòu)如圖2.
其中,RB表示殘差模塊.CANet中包含兩種殘差模塊,即輸入通道數(shù)與輸出通道數(shù)相同的同維殘差模塊(RB1、RB2、RB4、RB6、RB8)和輸入通道數(shù)與輸出通道數(shù)不同的異維殘差模塊(RB3、RB5、RB7),兩種殘差模塊如圖3所示.
其中,3×3 conv表示卷積核大小為3×3的卷積; 1×1 conv 同理.conv后的數(shù)字表示卷積輸出的通道數(shù)./2表示卷積的步長為2,沒有標注的則表示卷積步長為1.Batch Normalization(BN) ?[30] 為批歸一化,用于對卷積輸出進行歸一化處理,從而防止梯度消失.CANet中的殘差模塊輸入 x 與輸出 O(x) 之間的關(guān)系為
O(x)=f(x+BN(W 2f(BN(W 1x+b 1))+b 2)) ?(5)
其中, W ??1 、 W ??2 分別表示第1個和第2個卷積層的權(quán)重; b ?1 ?, b ?2 ?分別表示第1個和第2個卷積層的bias值.BN為批歸一化,其公式為
x ?^ = x-E(x) ?Var(x) ???(6)
式(5)中的 f 表示ReLU激活函數(shù),其輸入 x 與輸出 R(x) 之間的關(guān)系為
R(x)= 0, (x<0) x, (x>0) ??(7)
為了防止過擬合,CANet只在RB2、RB4、RB6和RB8中嵌入了ECA模塊,嵌入的位置如圖4所示.
CANet中的ECA模塊由全局平均池化層、一維卷積層和Sigmoid函數(shù)實現(xiàn),其具體結(jié)構(gòu)如圖5所示.
GAP表示全局平均池化,用于壓縮輸入通道特征,壓縮后的特征輸入一維卷積層,經(jīng)過激活函數(shù)Sigmoid后,與原始輸入相乘,得到最終輸出Feature′,如式(8)所示.
Feature′=Feature× σ(Wg+b) ?(8)
其中, W 為一維卷積的權(quán)重; b 為bias值; σ 表示Sigmoid激活函數(shù)其輸入 x 與輸出 σ(x) 如式(9)所示.
σ(x)= 1 1+e ?-x ???(9)
Maxpool和Avgpool分別表示最大池化和平均池化. 為了防止過擬合,我們在全連接層之后放置了一個dropout層.此外,CANet參考了GridNet和MeshNet模型結(jié)構(gòu),在模型的尾部加入了一個相同的全局池化結(jié)構(gòu)用于更好地預測模型結(jié)果,如圖2的reduce mean,1×1 conv 8和squeeze.最后由softmax函數(shù)用于將模型的輸出轉(zhuǎn)化為概率分布,得到網(wǎng)格所屬的質(zhì)量類別結(jié)果,其公式為
P(z ?i)= e ??z ?i ?∑ ?C ?c=1 e ??z ?c ???(10)
其中, z ?i ?為第 i 個節(jié)點的輸出值; C 為輸出節(jié)點的個數(shù),即分類的類別數(shù)(本文為8類).
3.3 損失函數(shù)
本文使用的損失函數(shù)為交叉熵 ?[31] .交叉熵常被用于深度學習分類問題中,其定義為
cross_entropy =-∑ i P(i) ?log ??2G(i) ?(11)
其中, P(i) 表示模型預測結(jié)果向量的值; G(i) 則為真實標簽向量的值,交叉熵損失函數(shù)可以衡量預測結(jié)果與真實標簽之間的相似性,隨著預測越來越準確,交叉熵的值越來越小.此外,本文在損失函數(shù)中加入 L ??2 正則化項以防止過擬合,如式(12)所示.
Loss=cross_entropy +λ∑ ‖w‖ ?2 ?(12)
3.4 數(shù)據(jù)標準化預處理
由于最大內(nèi)角的數(shù)據(jù)值分布在0~180之間,這與水平長度和豎直長度的數(shù)據(jù)分布不一致,不利于卷積神經(jīng)網(wǎng)絡(luò)模型對數(shù)據(jù)的擬合.為此,本文使用Z-Score標準化對輸入數(shù)據(jù)進行標準化.Z-Score標準化是常用的數(shù)據(jù)標準化方法之一,能夠?qū)⒃窘朴谡龖B(tài)分布的原始數(shù)據(jù)分布約束到標準正態(tài)分布,從而消除最大內(nèi)角與水平長度、豎直長度的值分布差異,進一步提高模型的準確率如下式.
X M= M-M * S M ??(13)
X H= H-H * S H ??(14)
X V= V-V * S V ??(15)
其中, X ?M ?、 X ?H ?、 X ?V ?分別表示Z-Score標準化后的最大內(nèi)角、水平長度、豎直長度矩陣; M 、 H 、 V 分別表示原始數(shù)據(jù)的最大內(nèi)角、水平長度、豎直長度矩陣; M ?* ?、 H ?* ?、 V ?* ?表示數(shù)據(jù)的平均值; S ?M ?、 S ?H ?、 S ?V ?表示數(shù)據(jù)的方差.
4 實驗結(jié)果與分析
4.1 網(wǎng)格數(shù)據(jù)集
本文使用的數(shù)據(jù)集為開源數(shù)據(jù)集NACA-Market ?[11] .數(shù)據(jù)集中包含了10 240套二維NACA0012翼型生成的多塊結(jié)構(gòu)網(wǎng)格數(shù)據(jù),包括網(wǎng)格中每個網(wǎng)格單元的質(zhì)量評價指標以及網(wǎng)格所屬的質(zhì)量類別標簽.網(wǎng)格拓撲和翼型附近的網(wǎng)格如圖6和圖7所示.
網(wǎng)格按實際所包含的網(wǎng)格單元的數(shù)量,被分為10種不同大小的網(wǎng)格尺寸,這與結(jié)構(gòu)網(wǎng)格塊上節(jié)點數(shù)的設(shè)置有關(guān). 每種網(wǎng)格尺寸的數(shù)量及其所包含的網(wǎng)格單元數(shù)如表1所示.
Zhang等人 ?[32] 提出了對網(wǎng)格整體質(zhì)量的三個基本要求,即光滑性、正交性和分布合理性.這種網(wǎng)格評價標準更傾向于網(wǎng)格整體質(zhì)量,有利于指導接下來的網(wǎng)格優(yōu)化.例如針對正交性較差的網(wǎng)格可以采用拓撲變換的優(yōu)化策略,針對光滑性較差的網(wǎng)格可以使用局部變換策略等.
數(shù)據(jù)集中的網(wǎng)格質(zhì)量類別標簽參考了這些基本要求,將網(wǎng)格質(zhì)量分為8類:高質(zhì)量網(wǎng)格、正交性差、光滑性差、分布不合理、正交性差且光滑性差、正交性差且分布不合理、光滑性差且分布不合理、低質(zhì)量網(wǎng)格(三項指標均不合格).每種質(zhì)量類別包含的網(wǎng)格數(shù)量如表2所示.表2中質(zhì)量類別所代表的實際含義如圖8所示.
4.2 實驗環(huán)境與模型參數(shù)設(shè)置
本文全部實驗所用的顯卡為NVIDIA A100,使用的深度學習框架是Tensorflow ?[33] .此外,本文全部實驗使用數(shù)據(jù)集中每種尺寸網(wǎng)格的前75%作為訓練集,后25%作為測試集,即訓練集數(shù)量為 7 680 ,測試集數(shù)量為2 560.
模型參數(shù)方面,dropout率設(shè)置為0.5,batch size設(shè)置為16,學習率隨epoch增加而階梯式降低,其策略如下:
epoch∈(0,20],學習率為0.001;
epoch∈(20,30],學習率為0.0001;
epoch∈(30,50],學習率為0.000 01;
epoch∈(50,100],學習率為0.000 001.
優(yōu)化器使用Nesterov Accelerated Gradient (NAG) ?[34] ,momentum設(shè)置為0.9.為了更好地對比實驗結(jié)果,CANet模型同樣訓練100個epoch,這與現(xiàn)有模型相同.訓練過程中,loss和測試準確率隨epoch數(shù)增加的變化如圖9所示.
4.3 評價指標
準確率是深度學習常用的模型評價指標,其定義為所有預測正確(預測結(jié)果與真實標簽相同)的樣本數(shù),占所有參與預測的樣本總數(shù)的比例,即:
準確率= 正確預測樣本數(shù) 參與預測樣本總數(shù) ??(16)
我們分別計算模型在10種尺寸的網(wǎng)格測試集上的準確率并計算這些準確率的平均值作為每個epoch準確率的結(jié)果,并選擇100個epoch中最優(yōu)的測試集準確率結(jié)果作為模型的最終準確率結(jié)果.
效率方面,本文使用模型訓練一個epoch的時間來衡量模型的效率.為了保證結(jié)果的有效性,所有模型運行在相同的硬件環(huán)境上.
4.4 注意力模塊對準確率的影響
為了探究注意力模塊對準確率的影響,我們搭建了一個經(jīng)典的ResNet-18模型,并在模型后加入相同的全局池化結(jié)構(gòu)用于消融實驗.除此之外,我們搭建了一個基于ResNet-18+SE的模型用于比較ECA和SE兩種注意力在提升準確率方面的性能.該模型將CANet模型中的所有ECA模塊替換為SE模塊.三個模型均在輸入原始數(shù)據(jù)的情況下訓練100個epoch,準確率對比的結(jié)果如圖10所示.
從實驗結(jié)果可以看出,嵌入了注意力模塊的兩個模型準確率高于未嵌入注意力模塊的ResNet-18模型.這說明引入注意力機制的確能夠有效提升模型的準確率,證明了本文提出方法的有效性.此外,實驗結(jié)果顯示,相較于嵌入了SE模塊的網(wǎng)絡(luò)模型,嵌入了ECA的CANet模型對準確率的提升效果更好.這說明ECA較SE對卷積神經(jīng)網(wǎng)絡(luò)模型數(shù)據(jù)擬合能力的提升更強.
4.5 注意力模塊對準確率的影響
為了探究Z-Score數(shù)據(jù)標準化對準確率的影響,我們設(shè)計了一項消融實驗,即Z-Socre標準化后數(shù)據(jù)和原始數(shù)據(jù)訓練出的模型的準確率結(jié)果,比較的結(jié)果如圖11所示.
通過實驗結(jié)果可以看出,Z-Score標準化后的數(shù)據(jù)得到的準確率得到了進一步提升,這說明經(jīng)過Z-Score標準化后,數(shù)據(jù)分布不一致的問題得到了有效的解決,準確率得到了進一步的提升.
4.6 本文模型與現(xiàn)有方法準確率的比較
為了與現(xiàn)有方法的準確率進行比較,我們參照相應文獻復現(xiàn)了GridNet ?[11] 、MeshNet ?[13] 以及MQNet ?[15] 模型并在相同數(shù)據(jù)集上比較了與CANet模型的準確率結(jié)果,模型參數(shù)參照相應文獻設(shè)置.此外,所有模型均使用Z-Score標準化對輸入數(shù)據(jù)進行了預處理,以消除數(shù)據(jù)預處理對模型結(jié)果的影響.所有模型使用相同的評價指標(見4.3節(jié)),比較的結(jié)果如圖12所示.
從實驗結(jié)果可以看出,CANet較現(xiàn)有模型在準確率上有著較明顯的提升,具體來說,較GridNet模型提升了2.93%,這主要得益于ResNet-18模型較VGG-19模型更為出色的數(shù)據(jù)擬合能力和ECA對模型數(shù)據(jù)擬合能力的進一步提升;較MeshNet模型提升了2.61%,這說明在卷積神經(jīng)模型上嵌入注意力機制比增加網(wǎng)絡(luò)模型深度更有助于提升模型的數(shù)據(jù)擬合能力;較MQNet模型提升了4.09%,這主要是因為MQNet模型大量使用深度可分離卷積,為了減少模型計算參數(shù),追求CPU上的計算效率提升,而犧牲了部分準確率.
4.7 本文模型與現(xiàn)有方法效率的比較
為了與現(xiàn)有方法的效率進行比較,我們統(tǒng)計了CANet模型和現(xiàn)有方法模型訓練一個epoch所需要的時間,為了得到更有說服力的結(jié)果,這些模型運行在相同的硬件條件下,此外,為了消除batch size對訓練時間的影響,所有模型的batch size設(shè)置為16,對比的結(jié)果如表3所示.
經(jīng)過比較,CANet模型較GridNet模型每輪訓練快37 s,效率約提升34.9%,這主要是因為GridNet模型中包含更多的512通道的卷積層以及隱藏神經(jīng)元更多的全連接層(1個4096個神經(jīng)元的全連接層和1個1024個隱藏神經(jīng)元的全連接層),導致計算代價大于CANet模型.此外,CANet模型較MeshNet每輪訓練快142 s,效率提升約67.3%,這是因為雖然加入了高效通道注意力模塊,但CANet模型的計算量和模型深度仍小于MeshNet模型.最后,CANet模型較MQNet每輪訓練快50 s,效率提升約42%,這主要是因為深度可分離卷積在GPU上的表現(xiàn)不佳.
最后,為了印證上述分析,我們計算了CANet模型和現(xiàn)有方法模型的參數(shù)量,各模型參數(shù)量的計算的結(jié)果如表4所示.
從各模型參數(shù)量計算的結(jié)果,結(jié)合各模型訓練時間可以看出,CANet模型的參數(shù)量明顯小于GridNet和MeshNet,這說明CANet模型相較GridNet和MeshNet效率的提升的確得益于模型計算復雜度的減小,同時說明模型參數(shù)量在一定程度上決定了模型效率.而MeshNet與GridNet模型計算量相近,但訓練時間上卻相差較大,這說明網(wǎng)絡(luò)深度同樣在一定程度上決定了模型效率.而CANet模型的參數(shù)量大于MQNet模型,但CANet模型在GPU上的訓練時間明顯更小,說明CANet模型相較MQNet的提升的確是因為深度可分離卷積在GPU上因分解卷積過程而導致了性能欠佳.
5 結(jié) 論
本文提出了一種基于卷積注意力網(wǎng)絡(luò)的網(wǎng)格質(zhì)量評價方法.首先,提出在輕量級的卷積神經(jīng)網(wǎng)絡(luò)模型中加入注意力機制的方法以同時提升準確率和效率.此外,設(shè)計了一種神經(jīng)網(wǎng)絡(luò)模型用于網(wǎng)格質(zhì)量評價任務.最后,使用Z-Score數(shù)據(jù)標準化消除了輸入數(shù)據(jù)分布的差異,進一步提升了準確率.實驗結(jié)果證明了本文方法和模型在網(wǎng)格質(zhì)量評價任務中的有效性并較現(xiàn)有方法在準確率和效率方面有著明顯的優(yōu)勢.此外,ECA對模型準確率的提升效果優(yōu)于SE注意力.
盡管基于卷積注意力網(wǎng)絡(luò)的網(wǎng)格質(zhì)量評價方法已經(jīng)達到了較好的準確率和效率,但仍需解決模型泛化性和端到端問題,這也是我們接下來的研究方向.此外,我們將進一步將該方法推廣應用與三維結(jié)構(gòu)網(wǎng)格和非結(jié)構(gòu)網(wǎng)格的質(zhì)量評價,并在質(zhì)量評價的基礎(chǔ)上,針對每一類質(zhì)量較差的網(wǎng)格采用適當?shù)膬?yōu)化方法對整體網(wǎng)格質(zhì)量進行優(yōu)化.
參考文獻:
[1] ??Zint D, Grosso R. Discrete mesh optimization on GPU[C]//International Meshing Roundtable. Cham: Springer, 2018.
[2] ?Naderi M H, Eivazi H, Esfahanian V. New method for dynamic mode decomposition of flows over moving structures based on machine learning (hybrid dynamic mode decomposition)[J]. Phys Fluids, 2019, 31: 127102.
[3] ?Tingfan W U, Xuejun L I U, Wei A N, ?et al . A mesh optimization method using machine learning technique and variational mesh adaptation [J]. Chinese J Aeronaut, 2022, 35: 27.
[4] ?Katz A, Sankaran V. Mesh quality effects on the accuracy of CFD solutions on unstructured meshes[J]. J Comput Phys, 2011, 230: 7670.
[5] ?Sarrate J, ?Palau J, Huerta A. Numerical representation of the quality measures of triangles and triangular meshes [J]. Commun Numer Meth En, 2003, ??19: 551.
[6] ?Gammon M. A review of common geometry issues affecting mesh generation[C]//2018 AIAA Aerospace Sciences Meeting. Florida: AIAA, 2018: ??1402.
[7] ?Delgado-Gutiérrez A, Cárdenas D, Probst O. An efficient and automated method to generate complex blade geometries for numerical analysis [J]. Adv Eng Softw, 2019, 127: 38.
[8] ?李笑牛, 袁克杰. 一種三角形表面網(wǎng)格質(zhì)量綜合度量方法[J]. 大連民族學院學報, 2005, 7: 36
[9] ?Gaikwad S, Arora K, Korivi V, ?et al . Steady and transient CFD approach for port optimization [J]. SAE Int ?J ?Mater ?Manuf, 2009, 1: 754.
[10] ?Lam X B, Kim Y S, Hoang A D, ?et al . Coupled aerostructural design optimization using the kriging model and integrated multiobjective optimization algorithm[J]. J Optimiz Theory App, 2009, 142: 533.
[11] Chen X, Liu J, Pang Y, ?et al . Developing a new mesh quality evaluation method based on convolutional neural network [J]. Eng Appl Comp Fluid, 2020, 14: 391.
[12] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition[C]//Proceedings of the International Conference on Learning Representations (ICLR). San Diego: ICLRF, 2015: 1.
[13] Xu Z, Chen X, Chi L, ?et al . A mesh quality discrimination method based on convolutional neural network [C]//Proceedings of the 2020 IEEE International Conference on Artificial Intelligence and Computer Applications (ICAICA). Dalian, China: IEEE, 2020.
[14] He K, Zhang X, Ren S, ?et al . Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016.
[15] Chen X, Gong C, Liu J, ?et al . A novel neural network approach for airfoil mesh quality evaluation[J]. J Parallel Distr Com, 2022, 164: 123.
[16] Zhang Y, Tian Y, Kong Y, ?et al . Residual dense network for image super-resolution [C]//Proceedings of the Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA: IEEE, 2018.
[17] Howard A G, Zhu M L, Chen B, ?et al . Mobilenets: efficient convolutional neural networks for mobile vision applications[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu: IEEE, 2017: 1310.
[18] Guo M H, Xu T X, Liu J J, ?et al . Attention mechanisms in computer vision: a survey [J]. CVM, 2022, 8: 331.
[19] Han K, Wang Y, Chen H, ?et al . A survey on vision transformer [J]. IEEE T Pattern Anal, 2022, 45: 87.
[20] Wang Q, Wu B, Zhu P, ?et al . ECA-net: efficient channel attention for deep convolutional neural networks [C]//Proceedings of the ?2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020.
[21] Hu J, Shen L, Sun G. Squeeze-and-excitation networks ?[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018.
[22] Vaswani A, Shazeer N, Parmar N, ?et al . Attention is all you need [C]//Neural Information Processing Systems. Long Beach, California, USA: CPS, 2017: 6000.
[23] Woo S, Park J, Lee J Y, ?et al . Cbam: Convolutional block attention module [C]//Proceedings of the European conference on computer vision (ECCV). Munich, Germany: Springer, 2018.
[24] Fu J, Liu J, Tian H, ?et al . Dual attention network for scene segmentation[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019.
[25] 張攀, 李曉華, 周激流. 一種基于注意力嵌入對抗網(wǎng)絡(luò)的全色銳化方法[J]. 四川大學學報:自然科學版, 2023, 60: 012001.
[26] 胡向東,張婷.基于時空融合深度學習的工業(yè)互聯(lián)網(wǎng)異常流量檢測方法[J].重慶郵電大學學報:自然科學版, 2022, 34: 1056.
[27] 王進,徐巍,丁一,等. 基于圖嵌入和區(qū)域注意力的多標簽文本分類[J].江蘇大學學報:自然科學版, 2022, 43: 310.
[28] 朱海琦,李宏,李定文,等. 基于生成對抗網(wǎng)絡(luò)的單圖像超分辨率重建[J]. 吉林大學學報: 理學版, 2021, 59: 1491.
[29] Lin M, Chen Q, Yan S. Network in network [EB/OL]. (2014-03-04)[2022-11-21]. https://arxiv.org/pdf/1312.4400.pdf.
[30] Ioffe S, Szegedy C. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]//Proceedings of the ?International Conference on Machine learning. Lille: PMLR, ??2015.
[31] Rubinstein R Y, Kroese D P. The cross-entropy method: a unified approach to combinatorial optimization, monte-carlo simulation, and machine learning [M]. New York: Springer, 2004.
[32] 張來平, 赫新, 常興華, 等. 復雜外形靜動態(tài)混合網(wǎng)格生成技術(shù)研究新進展[J]. 氣體物理, 2016, 1: 42.
[33] Abadi M, Agarwal A, Barham P, ?et al . Tensorflow: Large-scale machine learning on heterogeneous distributed systems[EB/OL]. [2022-11-21].https://doi.org/10.48550/arXiv.1603.04467.
[34] Nesterov Y E. A method of solving a convex programming problem with convergence rate O(1/k 2)[J]. Dokl ?Akad ?Nauk, 1983, 269: 543.