韓 陽 朱軍鵬 郭春雨 范毅偉 汪永號(hào)
* (哈爾濱工程大學(xué)船舶工程學(xué)院,哈爾濱 150001)
? (哈爾濱工程大學(xué)青島創(chuàng)新發(fā)展基地,山東青島 266000)
在流體力學(xué)領(lǐng)域,通過實(shí)驗(yàn)或數(shù)值模擬手段都難以獲得復(fù)雜湍流速度場(chǎng)信息,因此如何能簡(jiǎn)便地獲取高保真、高分辨率的流場(chǎng)信息是研究人員長(zhǎng)期以來的追求目標(biāo).流場(chǎng)的超分辨率重建技術(shù)可將低分辨率流場(chǎng)數(shù)據(jù)通過預(yù)先訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型直接重建成高分辨率的流場(chǎng)數(shù)據(jù),相較于計(jì)算流體動(dòng)力學(xué)方法(CFD)可以節(jié)約大量計(jì)算資源和時(shí)間成本.在本文中,提出一種具有廣泛適用性的神經(jīng)網(wǎng)絡(luò)模型,可以將低分辨率的流場(chǎng)信息提高其分辨率并還原各種經(jīng)典流場(chǎng)的流動(dòng)細(xì)節(jié).
深度學(xué)習(xí)作為一種新興技術(shù)在圖像處理、自然語言處理、語音識(shí)別和多模態(tài)學(xué)習(xí)[1]等領(lǐng)域發(fā)展迅速.近年來,該技術(shù)被應(yīng)用于實(shí)驗(yàn)流體力學(xué)方向,處理大量復(fù)雜非線性和高維度流場(chǎng)數(shù)據(jù)[2-3].通過深度學(xué)習(xí)方法可以對(duì)流體運(yùn)動(dòng)進(jìn)行估計(jì),從而提升流體速度場(chǎng)的分辨率.例如,Guo 等[4]研發(fā)了一種實(shí)時(shí)預(yù)測(cè)的卷積模型,以低錯(cuò)誤率為代價(jià),預(yù)測(cè)速度比CFD快了兩個(gè)數(shù)量級(jí).Lee 等[5]開發(fā)了一個(gè)4 級(jí)回歸卷積網(wǎng)絡(luò),從輸入兩張圖像中獲取速度場(chǎng).Cai 等[6]基于卷積神經(jīng)網(wǎng)絡(luò)對(duì)PIV 粒子圖像對(duì)進(jìn)行流動(dòng)估計(jì).然而這些基于卷積神經(jīng)網(wǎng)絡(luò)對(duì)流體運(yùn)動(dòng)估計(jì)缺乏先驗(yàn)物理規(guī)律.為了彌補(bǔ)基于卷積神經(jīng)網(wǎng)絡(luò)對(duì)流動(dòng)估計(jì)性能的不足,Lagemann 等[7]提出了基于光流架構(gòu)的遞歸全場(chǎng)變換(RAFT)模型,在低密度顆粒密度和光照強(qiáng)度變化的條件下表現(xiàn)良好,并且可以端到端地學(xué)習(xí)位移場(chǎng).
除此之外許多研究專注于利用深度學(xué)習(xí)其強(qiáng)大的流動(dòng)信息特征提取與數(shù)據(jù)同化的能力,對(duì)低分辨率流場(chǎng)進(jìn)行超分辨率重建.在計(jì)算機(jī)視覺領(lǐng)域,超分辨率(SR)是一種通過數(shù)字信號(hào)處理的方法提高圖像空間分辨率的技術(shù).2014 年Dong 等[8]首次在SR 問題上使用深度學(xué)習(xí)方法,提出用于單圖像超分辨率的SRCNN 模型,執(zhí)行端到端的超分辨率任務(wù).隨后多種超分辨率模型被設(shè)計(jì)出來,例如超深超分辨率網(wǎng)絡(luò)VDSR[9]、超分辨率生成對(duì)抗網(wǎng)絡(luò)SRGAN[10]、稠密連接超分辨率網(wǎng)絡(luò)SRDenseNet[11]和深度殘差通道注意力網(wǎng)絡(luò)RCAN[12]等模型.SR 已成為計(jì)算機(jī)視覺領(lǐng)域的研究熱點(diǎn).受此啟發(fā),研究人員將深度學(xué)習(xí)方法應(yīng)用于流場(chǎng)的超分辨率重建.
例如,Lee 等[13]提出了基于生成對(duì)抗網(wǎng)絡(luò)(GAN)的湍流小尺度建模方法,該方法可以憑借較少的計(jì)算成本對(duì)未處理的模擬數(shù)據(jù)進(jìn)行結(jié)構(gòu)預(yù)測(cè).Deng 等[14]將超分辨率生成對(duì)抗網(wǎng)絡(luò)(SRGAN[10])和增強(qiáng)型SRGAN(ESRGAN[15])應(yīng)用于流場(chǎng)的超分辨率重建任務(wù)中,以增強(qiáng)兩個(gè)并排圓柱后面復(fù)雜尾流的空間分辨率,結(jié)果表明可以把粗流場(chǎng)的空間分辨率顯著提高42和82倍,能夠準(zhǔn)確地重建高分辨率(HR)流場(chǎng).Fukaimi 等[16]開發(fā)了一種混合下采樣跳躍連接/多尺度模型,對(duì)二維圓柱繞流進(jìn)行測(cè)試,僅僅需要50 個(gè)訓(xùn)練數(shù)據(jù),就可以極大地提高空間分辨率.但是該研究的工況和所搭建的模型都比較簡(jiǎn)單.Liu 等[17]設(shè)計(jì)了靜態(tài)卷積神經(jīng)網(wǎng)絡(luò)(SCNN)和多時(shí)間路徑神經(jīng)網(wǎng)絡(luò)(MTPC),可以高精度重建強(qiáng)制各向同性湍流的高分辨率流場(chǎng).Kong 等[18]做了類似的工作,提出了多路徑超分辨率卷積神經(jīng)網(wǎng)絡(luò)(MPSRC),可以捕捉溫度場(chǎng)的空間分布特征,成功超分辨率重建超燃沖壓發(fā)動(dòng)機(jī)燃燒室的溫度場(chǎng).Ferdian 等[19]提出一種新型超分辨率4DFlowNet 模型,通過學(xué)習(xí)從有噪聲的低分辨率(LR)圖像到無噪聲HR 相位圖像的映射,能夠產(chǎn)生清晰解剖區(qū)域的無噪聲超分辨率相位圖像.2021 年Fukaimi 等[20]開發(fā)了用于時(shí)空SR 分析的深度學(xué)習(xí)方法,可以從空間和時(shí)間上的少量數(shù)據(jù)點(diǎn)重建高分辨率流場(chǎng).但是其模型訓(xùn)練十分復(fù)雜,并嚴(yán)重依賴訓(xùn)練數(shù)據(jù)的時(shí)空關(guān)系.Bi 等[21]設(shè)計(jì)由多個(gè)多尺度聚合塊(LMAB)組成的FlowSRNet 模型,同時(shí)做了輕量化設(shè)計(jì),提出LiteFlowSRNet 架構(gòu),對(duì)各種經(jīng)典流場(chǎng)進(jìn)行超分辨率重建,達(dá)到了先進(jìn)SR 性能.為了對(duì)流場(chǎng)進(jìn)行物理約束,Raissi 等[22]提出了基于物理的神經(jīng)網(wǎng)絡(luò)(PINN),可以用偏微分方程描述給定數(shù)據(jù)集的物理規(guī)律,并在圓柱繞流的示例中展示其解決高維逆問題的能力.隨后Raissi 等[23]將流體力學(xué)基本方程N(yùn)-S 方程編碼到神經(jīng)網(wǎng)絡(luò)里,通過自動(dòng)微分技術(shù)對(duì)模型輸出求導(dǎo),并帶入N-S 方程計(jì)算殘差,最終反向傳播優(yōu)化模型參數(shù),實(shí)現(xiàn)通過軟約束對(duì)顱內(nèi)動(dòng)脈瘤影像的生物流場(chǎng)重構(gòu).Shu 等[24]提出一種僅在訓(xùn)練時(shí)使用高保真數(shù)據(jù)的擴(kuò)散模型,用于從低保真CFD 數(shù)據(jù)輸入重建高保真 CFD 數(shù)據(jù),并且可以通過使用已知偏微分方程的物理信息來提高計(jì)算準(zhǔn)確性,然而文中并未將擴(kuò)散模型與其他深度學(xué)習(xí)模型進(jìn)行詳細(xì)的流場(chǎng)重建性能對(duì)比.
與上述工作不同,本文提出了一種適用于流場(chǎng)超分辨率重建的生成模型FlowDiffusionNet(FDiff-Net),該模型是基于擴(kuò)散概率模型提出的.擴(kuò)散概率模型(擴(kuò)散模型)[25-26]是一種生成模型,其使用馬爾科夫鏈將簡(jiǎn)單分布(如高斯分布)中的潛在變量轉(zhuǎn)換為復(fù)雜分布的數(shù)據(jù).擴(kuò)散模型已經(jīng)在諸如圖像合成和超分辨率圖像重建等領(lǐng)域中大放異彩.其中,谷歌團(tuán)隊(duì)提出的SR3[27]模型和浙江大學(xué)提出的單張圖片超分辨率擴(kuò)散模型SRdiff[28]均在圖像超分辨率上取得了優(yōu)異的結(jié)果.受此啟發(fā)利用擴(kuò)散模型對(duì)低保真的流場(chǎng)數(shù)據(jù)進(jìn)行重建,所提出的模型主要由低分辨率(LR)編碼器和模型主體構(gòu)成,利用殘差特征蒸餾模塊(RFDB)[29]作為L(zhǎng)R 編碼器對(duì)低保真數(shù)據(jù)進(jìn)行編碼,模型主體選用Unet 作為架構(gòu)并增加自注意力層,使得模型在深層次里獲得更大的感受野.對(duì)所提出的FlowDiffusionNet 模型在多個(gè)經(jīng)典流場(chǎng)數(shù)據(jù)集上進(jìn)行了測(cè)試,并比較了直接預(yù)測(cè)高保真流場(chǎng)數(shù)據(jù)進(jìn)行流場(chǎng)重建與預(yù)測(cè)高保真數(shù)據(jù)殘差后進(jìn)而重建流場(chǎng)的性能.并且在推理過程中,為了加快推理速度,引入了Dpm-solver[30]求解器.總結(jié)為以下3 項(xiàng)貢獻(xiàn):
(1)提出了便于遷移訓(xùn)練的FlowDiffusionNet 軟約束擴(kuò)散模型,用于精準(zhǔn)地進(jìn)行流場(chǎng)超分辨率重建,為了更好提取LR 流場(chǎng)的特征,選用了RFDB 模塊作為L(zhǎng)R 編碼器;
(2)提高了模型的流場(chǎng)超分辨率重建速度,將DPM-solver 求解器應(yīng)用到推理過程,提高了模型的效率;
(3)全面評(píng)估該模型的性能,構(gòu)建了多種經(jīng)典SR 流場(chǎng)數(shù)據(jù)集,并根據(jù)不同因素對(duì)復(fù)雜流場(chǎng)進(jìn)行降采樣,從而驗(yàn)證模型的適用性與穩(wěn)定性.
擴(kuò)散模型作為一種新興的生成式模型,避免以往對(duì)抗神經(jīng)網(wǎng)絡(luò)難以收斂以及崩潰的問題,因此更適用于處理比較大的流場(chǎng)數(shù)據(jù)信息.并且擴(kuò)散模型相較于卷積神經(jīng)網(wǎng)絡(luò)與物理神經(jīng)網(wǎng)絡(luò),更易進(jìn)行不同降采樣倍率的遷移學(xué)習(xí),其適用性和泛化性更強(qiáng).本文方法總體框架如圖1 所示,包括兩個(gè)過程: 前向擴(kuò)散過程在上面用綠色箭頭表示,為無參數(shù)學(xué)習(xí);反向擴(kuò)散過程在下面用藍(lán)色箭頭表示,進(jìn)行參數(shù)優(yōu)化.圖中y0表示預(yù)測(cè)流場(chǎng)的殘差,參數(shù) θ是由神經(jīng)網(wǎng)絡(luò)模型擬合的.
圖1 FlowDiffusionNet 模型重建高保真流場(chǎng)的原理Fig.1 The principle of FlowDiffusionNet model to reconstruct high-fidelity flow field
在本節(jié)中,介紹擴(kuò)散模型的基本概念[25].擴(kuò)散模型是一類概率生成模型,采用參數(shù)化馬爾可夫鏈,通過變分推理訓(xùn)練,學(xué)習(xí)如何逆轉(zhuǎn)逐漸退化訓(xùn)練數(shù)據(jù)結(jié)構(gòu)的過程.擴(kuò)散模型訓(xùn)練過程分為兩個(gè)階段: 前向擴(kuò)散過程和反向去噪過程.
前向擴(kuò)散過程可以描述為逐漸破壞數(shù)據(jù)結(jié)構(gòu)的前向加噪處理,通過不斷向輸入的數(shù)據(jù)中添加低水平的噪聲(高斯噪聲),直到全部變成高斯噪聲.給定原始的訓(xùn)練樣本滿足y0~q(y0),通過預(yù)先設(shè)置好的一組數(shù)據(jù) β1,β2,···,βT∈[0,1),將數(shù)據(jù)分布q(y)轉(zhuǎn)換成潛在變量q(yT)
其中T是擴(kuò)散總步數(shù),βt可看作控制擴(kuò)散步驟方差的超參數(shù),I是與輸入數(shù)據(jù)y0具有相同維度的矩陣,N(y;μ,σ)表示均值為μ且方差為α的正態(tài)分布.前向過程可對(duì)任意的時(shí)間步t處進(jìn)行采樣
反向擴(kuò)散過程可以描述為學(xué)習(xí)從噪聲輸入中恢復(fù)原始數(shù)據(jù)的反向去噪處理,采用類似的迭代過程,通過每一步去除噪聲,最終重建原始數(shù)據(jù).然而,由于q(yt-1|yt)取決于整個(gè)數(shù)據(jù)分布,擴(kuò)散模型使用神經(jīng)網(wǎng)絡(luò)作如下近似
其中pθ(yt-1|yt)為參數(shù)化的高斯分布,他們的均值和方差由訓(xùn)練的網(wǎng)絡(luò)μθ(yt,t)和σθ(yt,t)確定.
在訓(xùn)練階段,我們最大化負(fù)對(duì)數(shù)似然的變分下界(ELBO),并引入KL 散度和方差縮減[25]
方程(6)使用KL 散度直接將pθ(yt-1|yt)與前向過程后驗(yàn)分布q(yt-1|yt,y0)進(jìn)行比較
根據(jù)式(3)、式(5)和式(7)得知,等式(6)所有KL 散度是高斯分布之間的比較.當(dāng)t>1 且C為常量時(shí),可以得到
可將方程(6)簡(jiǎn)單優(yōu)化后進(jìn)行訓(xùn)練,有利于提高樣本生成質(zhì)量
其中?θ為噪聲預(yù)測(cè)因子.
在推理過程中,首先從高斯分布 N (0,I),采樣潛在變量yT,然后根據(jù)等式(5)進(jìn)行采樣yt-1~pθ(yt-1|yt)其中
在本節(jié)中,將在擴(kuò)散模型的基礎(chǔ)上介紹條件擴(kuò)散模型.條件擴(kuò)散模型的前向過程與擴(kuò)散模型基本一致,目的是將原始數(shù)據(jù)分布y0轉(zhuǎn)換成潛在變量yT.反向過程是從潛在變量yT開始,利用原始數(shù)據(jù)x的附加信息,來優(yōu)化去噪神經(jīng)網(wǎng)絡(luò)的?θ,從而恢復(fù)無噪聲的原始數(shù)據(jù)y0.該模型是將原始數(shù)據(jù)x和由式(4)得到y(tǒng)t數(shù)據(jù)狀態(tài)作為輸入,通過訓(xùn)練來預(yù)測(cè)噪聲向量?.在訓(xùn)練過程,參數(shù)化μθ有許多不同的辦法,顯然可以使用神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)εθ(yt,t,x),之后通過等式(11)得到μθ(yt,t,x),根據(jù)Saharia 等[27]建議,可將訓(xùn)練?θ的目標(biāo)函數(shù)設(shè)定為
本文選用的參數(shù)重整化方法是通過神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)y0,輸出的結(jié)果可以根據(jù)等式(8)和式(11)產(chǎn)生μθ(yt,t,x).其訓(xùn)練fθ的目標(biāo)函數(shù)可以表示為
推理過程是通過神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)在每個(gè)時(shí)間步長(zhǎng)處去除的噪聲,從而逐步重建數(shù)據(jù)來生成目標(biāo)數(shù)據(jù)
根據(jù)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)高斯條件分布pθ(yt-1|yt,x)定義整個(gè)推理過程.如果前向過程噪聲方差設(shè)置足夠小,那么反向過程p(yt-1|yt,x)近似高斯分布,即證明了在推理過程選擇高斯條件可以為真實(shí)反向過程提供合理的擬合.并且 1-t應(yīng)該足夠大,使得潛在變量yT滿足等式(16).
FlowDiffusionNet 是一種條件擴(kuò)散模型,總體框架如圖一所示.建立在T步擴(kuò)散模型之上,該模型包含兩個(gè)過程: 擴(kuò)散過程和反向擴(kuò)散過程.不是直接預(yù)測(cè) HR 流場(chǎng),而預(yù)測(cè) HR 流場(chǎng)xH和上采樣 LR 流場(chǎng)up(xL)之間的差異,并將差異表示為輸入殘差流場(chǎng)y0.擴(kuò)散過程通過向殘差流場(chǎng)y0不斷添加高斯噪聲,如方程(4)表示,直到變成高斯分布yT.反向擴(kuò)散過程通過使用條件殘差流場(chǎng)預(yù)測(cè)器,以低分辨率編碼器(簡(jiǎn)稱LR 編碼器)對(duì)LR 的流場(chǎng)編碼輸出為條件,在有限時(shí)間步迭代去噪,將高斯分布yT變成殘差流場(chǎng)y0.SR 流場(chǎng)是通過將生成的殘差流場(chǎng)y0添加到上采樣LR 流場(chǎng)up(xL)來進(jìn)行重建的.
在接下來的小節(jié)中,將介紹條件殘差流場(chǎng)預(yù)測(cè)器、LR 編碼器、訓(xùn)練和推理的框架.
1.4.1 條件殘差流場(chǎng)預(yù)測(cè)器
根據(jù)式(15)~式(17)構(gòu)成條件殘差流場(chǎng)預(yù)測(cè)器,定義x是輸入模型里面的條件,在超分辨率流場(chǎng)重構(gòu)任務(wù)中x代表LR 流場(chǎng)xL,根據(jù)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)高斯條件分布pθ(yt-1|yt,x)進(jìn)行推斷HR 流場(chǎng)xH.如圖2 所示,使用U-Net 作為主體,以2 通道yt(u,v)、擴(kuò)散時(shí)間步長(zhǎng)t以及LR 編碼器的輸出作為輸入,其中“res block”,“downsample”,“attention block”,“upsample”分別表示殘差塊、下采樣塊、自注意力塊和上采樣塊;“DS”和“US”分別表示下采樣步驟和上采樣步驟;其中“DS”和“US”后面括號(hào)里(c,2c,4c)表示每個(gè)步驟通道數(shù)量.
圖2 FlowDiffusionNet 的總體網(wǎng)絡(luò)框架Fig.2 The overall network framework for FlowDiffusionNet
首先通過一個(gè)二維卷積層將yt轉(zhuǎn)換到激活狀態(tài),之后把隱藏狀態(tài)yt與經(jīng)過編碼的LR 流場(chǎng)信息在通道上進(jìn)行融合,并將其輸入到UNet 模型里面.通過正弦位置編碼將時(shí)間步長(zhǎng)t編碼至隱藏狀態(tài)te[31],并將te輸入到每一個(gè)殘差模塊中.下采樣路徑由一個(gè)殘差模塊和一個(gè)下采樣層構(gòu)成,上采樣路徑由兩個(gè)殘差模塊和一個(gè)上采樣層構(gòu)成,這樣不對(duì)稱的設(shè)置有利于設(shè)置更加密集的多尺度跳躍殘差連接,從而保證條件殘差流場(chǎng)預(yù)測(cè)器穩(wěn)定.第2 和第3 下采樣路徑中將通道尺寸加倍,并在每個(gè)下采樣路徑中將特征圖的空間尺寸減半,以求降低模型的參數(shù)量,并提高其采樣速度.中間路徑由兩個(gè)殘差塊和一個(gè)自注意力模塊組成,這有利于模型在增大感受野同時(shí)降低參數(shù)量.最后將上采樣路徑輸出,應(yīng)用swich 函數(shù)進(jìn)行激活,并通過卷積預(yù)測(cè)yt-1的殘差流場(chǎng).
1.4.2 LR 流場(chǎng)編碼器
采用LR 流場(chǎng)編碼器對(duì)上采樣LR 流場(chǎng)up(xL)信息進(jìn)行編碼,并將其添加到每個(gè)反向步驟中以引導(dǎo)生成到相應(yīng)的 HR 流場(chǎng).在本文中,選擇使用殘差蒸餾網(wǎng)絡(luò)(RFDN)模型[29]的RFDB 架構(gòu),如圖3 所示,“SRB”表示淺層殘余模塊,“CCA Layer”表示規(guī)范相關(guān)分析,該架構(gòu)的特征提取層和信息蒸餾層,可以全面提取上采樣 LR 流場(chǎng)up(xL)信息.并且舍棄掉RFDN 模型的最后一個(gè)上采樣層,因?yàn)榻?jīng)過測(cè)試證明這樣做的效果要優(yōu)于將直接LR 流場(chǎng)xL輸入RFDB 模塊,較低分辨率輸入會(huì)使得不同的特征提取層輸出信息更加相似,且在上采樣層會(huì)破壞原始LR 流場(chǎng)xL信息.
圖3 RFDB 架構(gòu)Fig.3 RFDB architecture
1.4.3 訓(xùn)練與推理過程
在訓(xùn)練階段,如圖4 所示,從訓(xùn)練集中輸入相應(yīng)LR-HR 流場(chǎng)對(duì),用于訓(xùn)練總擴(kuò)散步長(zhǎng)為T的Flow-DiffusionNet.將xL上采樣為up(xL),并計(jì)算流場(chǎng)殘差HR-up(xL).第1 步: 將流場(chǎng)殘差y0輸入正向擴(kuò)散模塊采樣出任意t時(shí)刻流場(chǎng)殘差狀態(tài)yt,并輸入模型里,值得注意的是這步?jīng)]有可學(xué)習(xí)的參數(shù),所有參數(shù)都是預(yù)先設(shè)置好的.第2 步: 通過LR 流場(chǎng)編碼器將up(xL)編碼為xe,并輸入模型.第3 步: 計(jì)算模型輸出y?和目標(biāo)輸出y0的均方誤差MSEloss,并反向優(yōu)化FlowDiffusionNet 的參數(shù).
圖4 模型的訓(xùn)練過程Fig.4 The training process of the model
推理過程如圖5 所示,使用DPM-solver[30]快速采樣器,極大加快了模型的采樣速度,使得該模型可以在短時(shí)間內(nèi)處理大量流場(chǎng)數(shù)據(jù)信息.如圖5所示,第1 步: FlowDiffusionNet 模型在推理過程中將上采樣 LR 流場(chǎng)up(xL)與從標(biāo)準(zhǔn)高斯分布中采樣得到的潛在變量yT作為輸入,預(yù)測(cè)t=0 時(shí)刻的殘差流場(chǎng);第2 步: 將神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的流場(chǎng)y?輸入到DPMsolver 快速采樣器里面,從而采樣出t時(shí)刻的殘差流場(chǎng)yt;第3 步: 將殘差流場(chǎng)yt和上采樣 LR 流場(chǎng)up(xL)再次輸入到神經(jīng)網(wǎng)絡(luò)里,預(yù)測(cè)t=0 時(shí)刻的殘差流場(chǎng).隨后重復(fù)第1 和第2 步直至采樣出原始?xì)埐盍鲌?chǎng)y0.最終在上采樣LR 流場(chǎng)up(xL)添加殘差流場(chǎng)y0來恢復(fù)SR 流場(chǎng).
圖5 模型的推理過程Fig.5 The inference process of the model
在本節(jié)中,首先描述制作數(shù)據(jù)集的原理和過程,隨后介紹模型訓(xùn)練及采樣的一些細(xì)節(jié).
本文根據(jù)參考文獻(xiàn)收集了5 個(gè)經(jīng)典流場(chǎng),包括:二維湍流運(yùn)動(dòng)[32](DNS 湍流)、地表準(zhǔn)地轉(zhuǎn)流[33](SQG)和約翰霍普金斯湍流數(shù)據(jù)庫[34](JHTDB)等復(fù)雜流場(chǎng),其可以從公開文獻(xiàn)中獲得.表1 列出了不同經(jīng)典流場(chǎng)的用于訓(xùn)練和測(cè)試的數(shù)據(jù)集數(shù)量,并且SR 數(shù)據(jù)集中的流場(chǎng)數(shù)據(jù)不具有嚴(yán)格時(shí)間連續(xù)性.
表1 不同流場(chǎng)SR 訓(xùn)練集與測(cè)試集數(shù)量Table 1 Number of SR training and test sets for different flow fields
接下來我們通過一種常用的降采樣策略來降低流場(chǎng)數(shù)據(jù)的分辨率,生成低分辨率流場(chǎng)數(shù)據(jù)從而構(gòu)建LR-HR 數(shù)據(jù)對(duì)
其中G代表退化模糊操作,α代表下采樣因子,通過經(jīng)典的高斯模糊結(jié)合雙3 次下采樣方案,高斯模糊核函數(shù)的公式如下
其中 σ設(shè)置為5,高斯核大小設(shè)置為16×16,HR 流場(chǎng)數(shù)據(jù)與LR 流場(chǎng)數(shù)據(jù)之間的差異可以用下采樣因子 α表示
其中M表示流向速度矢量的數(shù)量,N表示展向速度矢量的數(shù)量.為了綜合評(píng)價(jià)模型在不同分辨率下的重建能力,選擇了3 種不同的下采樣因子,即4,8 和16.構(gòu)建的SR 數(shù)據(jù)集包含復(fù)雜的湍流結(jié)構(gòu)(DNS 湍流和 JHTDB)和小尺度渦流結(jié)構(gòu)(SQG 和 DNS 湍流),這使得流場(chǎng)重建任務(wù)具有挑戰(zhàn)性.如圖6 所示,展示了在 α=8 下構(gòu)建的SR 流場(chǎng)數(shù)據(jù)集.
圖6 超分辨率流場(chǎng)數(shù)據(jù)集Fig.6 Super-resolution flow field datasets
FlowDiffusionNet 模型是在一臺(tái)NVIDIA 3060 GPU 的電腦上面通過pytorch 實(shí)現(xiàn)的.在訓(xùn)練階段,選擇MSE 作為損失函數(shù),并應(yīng)用Adam 優(yōu)化器,初始學(xué)習(xí)率設(shè)置0.00003,dropout 設(shè)置為0.1 來優(yōu)化模型參數(shù).模型訓(xùn)練超參數(shù)設(shè)置包括設(shè)置擴(kuò)散步長(zhǎng)T=1000,并把前向過程的方差設(shè)置成隨步長(zhǎng)動(dòng)態(tài)增大,從0.000 1 線性增加到0.02.首先在32×32 空間分辨率→256×256 空間分辨率的數(shù)據(jù)集上訓(xùn)練,隨后將在32×32 空間分辨率→256×256 空間分辨率訓(xùn)練好的參數(shù),分別遷移至64×64 空間分辨率→256×256 空間分辨率的數(shù)據(jù)集上和16×16 空間分辨率→256×256 空間分辨率的數(shù)據(jù)集上進(jìn)行訓(xùn)練,模型的總參數(shù)量為69.7 M.
在本文的推理過程中,采用了DPM-solver 采樣方法[30].該采樣方法具有多種優(yōu)點(diǎn),包括不需要任何訓(xùn)練即可適用于擴(kuò)散模型的采樣,并且相較于先進(jìn)的無訓(xùn)練采樣方法,可實(shí)現(xiàn)約10 倍的加速.DPMsolver 利用擴(kuò)散常微分方程的半線性,通過由噪聲預(yù)測(cè)模型的指數(shù)加權(quán)積分,直接近似擴(kuò)散常微分函數(shù)的精確解.該采樣器可以采用1 階、2 階和3 階模式來近似噪聲預(yù)測(cè)模型的指數(shù)加權(quán)積分,其中1 階模式與DDIM[35]采樣過程相同.為了兼顧采樣質(zhì)量和速度,設(shè)置了預(yù)測(cè)xstart的離散噪聲序列DPM 2 階求解器,并應(yīng)用自適應(yīng)采樣方法.
在本節(jié)中將對(duì)FlowDiffusionNet 模型的性能進(jìn)行評(píng)估,首先介紹定量及定性評(píng)估模型的標(biāo)準(zhǔn),隨后比較了不同模型重建流場(chǎng)的精度,最后可視化渦量場(chǎng)并驗(yàn)證其重建效果.
借鑒評(píng)估圖像相似度的兩個(gè)重要指標(biāo),峰值信噪比(PSNR)及結(jié)構(gòu)相似度指標(biāo)(SSIM).PSNR表示精度的破壞性噪聲功率的比值,是衡量原始圖像與處理后圖像數(shù)據(jù)質(zhì)量的重要標(biāo)準(zhǔn),一般認(rèn)為其值高于40 質(zhì)量極好,30~40 之間質(zhì)量是可接受的.具體的公式如下
其中MaxI表示原始數(shù)據(jù)的最大像素值,MSE表示原始數(shù)據(jù)與重建數(shù)據(jù)之間的均方誤差.
SSIM是感知模型,可以衡量圖片的失真程度,也可以衡量?jī)蓮垐D片的相似程度.具體的公式如下
其中 μx和 μy分別表示原始數(shù)據(jù)x和重建數(shù)據(jù)y的平均值,σx和 σy分別表示x和y的標(biāo)準(zhǔn)差,σxy則表示x和y的協(xié)方差,c1和c2是常數(shù)避免分母為0.
在定性評(píng)估中,通過可視化重建流場(chǎng)數(shù)據(jù)的速度場(chǎng)和渦量場(chǎng)分布,從而直觀地觀察到重建流場(chǎng)的詳細(xì)信息.
首先,對(duì)提出的FlowDiffusionNet 模型進(jìn)行了評(píng)估,比較其在預(yù)測(cè)流場(chǎng)殘差和直接預(yù)測(cè)原始流場(chǎng)時(shí)對(duì)于不同流場(chǎng)的重建性能.為了凸顯該模型在流場(chǎng)重建方面的優(yōu)越性,同時(shí)選取了幾種常用的流場(chǎng)超分辨率(SR)方法進(jìn)行比較,包括傳統(tǒng)的雙三次插值方法(bicubic)[36],基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的SRCNN 方法[8]和基于生成對(duì)抗網(wǎng)絡(luò)(GAN)的SRGAN 方法[14].為了評(píng)估流場(chǎng)在不同分辨率尺度下的重建能力,選取了 α為4 (中分辨率水平)、8 (低分辨率水平)和16 (超低分辨率水平).
如表2 所示(表中SRGAN 和SRCNN 性能效果來源于文獻(xiàn)[21]),其中FDiffNet_res 表示預(yù)測(cè)HR 流場(chǎng)殘差,FDiffNet_Nres 表示直接預(yù)測(cè)HR 流場(chǎng),性能最高值加粗表示,所提出的模型在不同的流場(chǎng)數(shù)據(jù)集中均展現(xiàn)出了最優(yōu)秀的性能表現(xiàn).具體而言,對(duì)于涉及復(fù)雜湍流的流場(chǎng),雙三次插值方法的PSNR普遍難以超過30,且其流場(chǎng)重建效果較差,與深度學(xué)習(xí)方法相比仍存在顯著差距.特別是對(duì)于包含小尺度渦結(jié)構(gòu)的流場(chǎng)數(shù)據(jù)集,例如DNS 和SQG,傳統(tǒng)方法在重建精度方面表現(xiàn)最低,相應(yīng)的PSNR和SSIM評(píng)價(jià)指標(biāo)僅分別為20.096/0.758 和22.113/0.728.這說明在局部小尺度渦旋重建任務(wù)中,傳統(tǒng)方法的性能相對(duì)于本文提出的模型仍存在明顯的差距.可以看到,SRGAN 和SRCNN 在 α=4 中等分辨率下,流場(chǎng)重建精度SSIM可以達(dá)到0.9 以上.同樣基于生成的模型,SRGAN 的流場(chǎng)重建效果比FDiffNet效果要差,這是因?yàn)樯蓪?duì)抗模型訓(xùn)練需要達(dá)到納什均衡,并且對(duì)于超參數(shù)較為敏感,需要調(diào)整模型是適用的超參數(shù)設(shè)定.相反,對(duì)于同是生成模型的FDiffNet 訓(xùn)練十分簡(jiǎn)單,只需去擬合反向擴(kuò)散過程中的條件分布,而且模型不易陷入過擬合.SRCNN模型在 α=4 中等分辨率和 α=8 低等分辨率流場(chǎng)重建精度SSIM相差0.023~0.037,而FDiffNet_res 重建精度SSIM僅相差0.002~0.014,這表示提出的模型在不同分辨率的流場(chǎng)重建上,具有更好的精度保持性.FDiffNet 預(yù)測(cè)高分辨率流場(chǎng)的殘差重建效果要優(yōu)于直接預(yù)測(cè)原始高分辨率流場(chǎng),并且在訓(xùn)練時(shí)預(yù)測(cè)殘差能讓模型更快收斂.
表2 在下采樣因子為4,8,16 下不同方法的性能表現(xiàn)Table 2 Performance of different methods with downsampling factors of 4,8,16
FDiffNet 模型主體結(jié)構(gòu)是UNet 模型,輸入與輸出大小是一致的,因此只需簡(jiǎn)單改動(dòng)輸入LR 流場(chǎng)上采樣倍數(shù),無需修改其他任何參數(shù)即可進(jìn)行遷移學(xué)習(xí),這將為訓(xùn)練節(jié)省大量時(shí)間.為了證明FDiffNet模型在遷移學(xué)習(xí)方面的優(yōu)越性,在DNS 流場(chǎng)重建上,對(duì)比了FDiffNet_res 直接在 α=4 下訓(xùn)練65000 步與FDiffNet_res 在 α=8 下訓(xùn)練45000 步之后遷移α=4 下訓(xùn)練65000 步的客觀評(píng)價(jià)指標(biāo),如圖7 所示.經(jīng)過遷移學(xué)習(xí)FDiffNet 模型在訓(xùn)練的穩(wěn)定性提高,相比隨機(jī)初始化的FDiffNet 模型訓(xùn)練方式,其重建精度PSNR 與SSIM 值提升更快,可以大幅節(jié)省模型的訓(xùn)練時(shí)間與成本.FDiffNet 模型在訓(xùn)練α=8低等分辨率的流場(chǎng)重建過程中已經(jīng)學(xué)習(xí)到該種流場(chǎng)分布規(guī)律,因此在遷移到α=4 中等分辨率流場(chǎng)時(shí)可以更快適應(yīng)由下采樣因子變化引起學(xué)習(xí)分布的差異.
圖7 FDiffNet 在遷移學(xué)習(xí)和非遷移學(xué)習(xí)上性能表現(xiàn)Fig.7 FDiffNet performs on transfer learning and non-transfer learning
為直觀展示不同方法流場(chǎng)重建能力,選取傳統(tǒng)Bicubic 方法、深度學(xué)習(xí)SRCNN 方法、FDiffNet_Nres 方法以及FDiffNet_res 方法進(jìn)行對(duì)比,在低等分辨率 α=8 下速度場(chǎng)的重建可視化結(jié)構(gòu)如圖8 所示,其中顏色條表示速度u的大小.對(duì)于每個(gè)流動(dòng)情況,PSNR和SSIM值都在重建的流場(chǎng)下面給出.通過雙三次插值方法重建的流場(chǎng)相對(duì)平滑,相比之下深度學(xué)習(xí)方法會(huì)展現(xiàn)更多流場(chǎng)細(xì)節(jié).其中FDiffNet方法性能表現(xiàn)最優(yōu),相較SRCNN 方法可以優(yōu)化流場(chǎng)中更加精細(xì)化的結(jié)構(gòu),例如在JHTDB channel 流場(chǎng)數(shù)據(jù)紅框內(nèi)的渦流應(yīng)是紡錘型,而SRCNN 直接重建成一個(gè)點(diǎn),相比之下FDiffNet 則完整重建了渦結(jié)構(gòu).這是由于所用LR 編碼器充分提取了低分辨率流場(chǎng)特征,并在重建流場(chǎng)的過程中并不是一步重建,而是通過DPM-solver 采樣器從噪聲中逐步恢復(fù)流場(chǎng)的.用FDiffNet 預(yù)測(cè)HR 流場(chǎng)殘差性能略優(yōu)于直接預(yù)測(cè)HR 流場(chǎng),在重建流場(chǎng)數(shù)據(jù)方面是與原始HR 流場(chǎng)更具有一致性,在圖像上也可直觀地看出FDiffNet_res 重建的流場(chǎng)更貼合真實(shí)流場(chǎng).
圖8 不同方法在 α=8 下重建速度場(chǎng)的比較Fig.8 Comparison of different methods to reconstruct velocity fields at α=8
由于在訓(xùn)練過程中未直接考慮渦度,因此渦度可作為評(píng)估模型學(xué)習(xí)表現(xiàn)的良好指標(biāo).在低等分辨率 α=8 下渦量場(chǎng)的重建可視化結(jié)構(gòu)如圖9 所示,其中顏色條表示渦量的大小,DNS 湍流和SQG 包含更多的渦結(jié)構(gòu),可以顯著揭示重建流場(chǎng)的細(xì)節(jié).類似于速度場(chǎng)的重建結(jié)果,使用FDiffNet 預(yù)測(cè)HR 流場(chǎng)殘差,其重建效果最優(yōu).相比之下,雙三次方法重建的渦量場(chǎng)十分模糊,缺乏流場(chǎng)信息,而SRCNN 方法重建的渦量場(chǎng)很粗糙,并且無法正確估計(jì)渦邊緣結(jié)構(gòu).然而,FDiffNet 則可以有效重建渦量場(chǎng)的細(xì)節(jié)部分,并且和真實(shí)渦量場(chǎng)一樣平滑,這證明了FlowDiffusionNet模型的實(shí)用性.
圖9 不同方法在 α=8 下重建渦量場(chǎng)的比較Fig.9 Comparison of different methods to reconstruct vortex fields at α=8
根據(jù)運(yùn)行時(shí)間和模型大小評(píng)估了模型的計(jì)算效率,如表3 所示.為了公平比較,每種方法都在同一臺(tái)機(jī)器上配備了相同的 Intel Core i7-12700 CPU 和NVIDIA RTX 3060 GPU.另外,我們以超低等分辨率α=16 的DNS 湍流流場(chǎng)為例.注意運(yùn)行時(shí)間是100 個(gè)測(cè)試流場(chǎng)的累計(jì)時(shí)間.
表3 不同方法的計(jì)算效率對(duì)比Table 3 Comparison of computational efficiency of different methods
如表3 所示,可以看出FlowDiffusionNet 模型在計(jì)算效率上存在一定劣勢(shì),與基線的生成模型SRGAN 相比,推理過程更加耗時(shí),這是因?yàn)镚AN的采樣只需要一次神經(jīng)網(wǎng)絡(luò)前饋過程,而擴(kuò)散模型則需要多步神經(jīng)網(wǎng)絡(luò)前饋.即使本文已經(jīng)使用了最先進(jìn)的采樣方法將原始的上百步前饋縮小至10 步以內(nèi),但在推理100 測(cè)試流場(chǎng)所用總時(shí)間仍達(dá)到了58 s.
本文提出了一種基于擴(kuò)散模型的方法,用于不同流場(chǎng)數(shù)據(jù)集的超分辨率重建.該模型優(yōu)化了原始的DDPM 網(wǎng)絡(luò)結(jié)構(gòu),增加了自注意力層,并應(yīng)用LR 編碼器高效提取LR 流場(chǎng)信息.為了提高模型重構(gòu)HR 流場(chǎng)速度,選用了DPM-solver 采樣器進(jìn)行推理.本研究得到以下結(jié)論.
(1)針對(duì)輸入的不同低分辨率流場(chǎng)數(shù)據(jù),與傳統(tǒng)插值方法、基于深度學(xué)習(xí)的SRGAN 和SRCNN 方法相比,所提出的FlowDiffusionNet 模型可以高精度地重建流場(chǎng)數(shù)據(jù).在各種經(jīng)典流場(chǎng)重建中,應(yīng)用提出的模型FlowDiffusionNet 預(yù)測(cè)HR 流場(chǎng)殘差的性能表現(xiàn)比直接預(yù)測(cè)HR 流場(chǎng)更加優(yōu)異.
(2)FlowDiffusionNet 模型具有良好的泛化能力,適用于多種復(fù)雜湍流流場(chǎng)的超分辨率重建工作.在實(shí)驗(yàn)中,FlowDiffusionNet 模型表現(xiàn)十分穩(wěn)定,在 α=4和 α=8 不同分辨率流場(chǎng)重建任務(wù)上,客觀評(píng)價(jià)指標(biāo)SSIM波動(dòng)值小于0.014.
(3)FlowDiffusionNet 模型可以高精度地重建渦結(jié)構(gòu),對(duì)于DNS 和SQG 流場(chǎng),即使在 α=16 超低分辨率下,其客觀評(píng)價(jià)指標(biāo)也可以達(dá)到0.98 以上.FlowDiffusionNet 模型還具有較好的遷移性,在訓(xùn)練階段可以節(jié)省大量時(shí)間.
(4)與文中其他方法相比,FlowDiffusionNet 模型在速度場(chǎng)和渦量場(chǎng)可視化中展示了更多流場(chǎng)重建細(xì)節(jié).尤其對(duì)于在訓(xùn)練中未直接考慮的渦量場(chǎng),FlowDiffusionNet 模型仍然具有較好的重建效果,而其他方法的重建性能則大幅降低.
該工作證明了擴(kuò)散模型在流場(chǎng)超分辨率重建任務(wù)中的巨大潛力.未來將研究模型輕量化,從而實(shí)現(xiàn)低成本和高精度的重建.