梁立鋒,劉秀娟,張宏兵,陳程浩,陳錦華
(1.嶺南師范學(xué)院 地理系,廣東 湛江 524057;2.河海大學(xué) 地球科學(xué)與工程學(xué)院,江蘇 南京 210098)
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)是一種被廣泛使用的深度學(xué)習(xí)方法[1],包括圖像分類、圖像定位和圖像分割[2]。近年來(lái),CNN已被應(yīng)用于各種地震問(wèn)題,包括隨機(jī)地震道編輯[3]、噪聲衰減[4]、地震巖相反演[5]和儲(chǔ)層預(yù)測(cè)[6]和斷層解釋方面[7-8]。
遞歸神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)是解決序列數(shù)據(jù)問(wèn)題的一種神經(jīng)網(wǎng)絡(luò)。與卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)不同,RNN考慮了前一個(gè)樣本對(duì)下一個(gè)樣本的影響[9]。在RNN網(wǎng)絡(luò)基礎(chǔ)上,LSTM能更準(zhǔn)確地學(xué)習(xí)時(shí)間序列的長(zhǎng)期依賴性,解決了需要人工提取時(shí)間序列特征的問(wèn)題。但該方法存在收斂速度慢等問(wèn)題。門控遞歸單元神經(jīng)網(wǎng)絡(luò)(GRU)是在LSTM的基礎(chǔ)上進(jìn)行改進(jìn)和優(yōu)化的神經(jīng)網(wǎng)絡(luò)。它具有更快的收斂速度和保持與LSTM相似的精度。RNN及優(yōu)化的網(wǎng)絡(luò)廣泛應(yīng)用于測(cè)井曲線重建[10],并在自然語(yǔ)言處理[11]、醫(yī)療[12]等領(lǐng)域也得到了廣泛的應(yīng)用。
CNN網(wǎng)絡(luò)能夠提取地震圖像的局部特征,GRU網(wǎng)絡(luò)能夠提取地震數(shù)據(jù)的低頻趨勢(shì),兩者構(gòu)成混合深度學(xué)習(xí)網(wǎng)絡(luò),可以完整地反演地震EI全頻信息。CNN-GRU混合深度學(xué)習(xí)反演彈性阻抗(EI)取得了較好的反演效果[13]。CNN模型無(wú)法對(duì)所有數(shù)據(jù)集進(jìn)行最佳泛化[14],混合深度學(xué)習(xí)模型也面臨同樣的問(wèn)題,所以在對(duì)新的數(shù)據(jù)集進(jìn)行混合深度學(xué)習(xí)方法時(shí),必須選取合適的超參數(shù)。而混合深度學(xué)習(xí)中,超參數(shù)可以分為網(wǎng)絡(luò)內(nèi)部參數(shù)和網(wǎng)絡(luò)外部參數(shù),內(nèi)部參數(shù)包含網(wǎng)絡(luò)層數(shù)、每一層的激活函數(shù)、每個(gè)網(wǎng)絡(luò)層卷積核尺寸、偏置項(xiàng)的尺寸,網(wǎng)絡(luò)的不同鏈接方式、群組歸一化尺寸、反卷積尺寸等,外部參數(shù)包括學(xué)習(xí)率、訓(xùn)練輪次(Epoch)、批尺寸(batch_size)、正則化參數(shù)及參與網(wǎng)絡(luò)訓(xùn)練的測(cè)井個(gè)數(shù)等。這些參數(shù)即使對(duì)于小型的深度學(xué)習(xí)網(wǎng)絡(luò),總體參數(shù)個(gè)數(shù)也可能達(dá)到上千個(gè),對(duì)于特定的數(shù)據(jù)集,我們可以采用窮舉的方式,獲得一套能夠充分發(fā)揮深度學(xué)習(xí)網(wǎng)絡(luò)性能的超參數(shù),但這樣無(wú)疑會(huì)耗費(fèi)大量人工和機(jī)器運(yùn)行時(shí)間。從文獻(xiàn)調(diào)研結(jié)果來(lái)看,國(guó)外學(xué)者對(duì)學(xué)習(xí)率這個(gè)超參數(shù)進(jìn)行了研究,并利用線性循環(huán)迭代可變學(xué)習(xí)率在圖像處理領(lǐng)域取得了較好的應(yīng)用效果[15]。Breuel探討了MNIST手寫(xiě)數(shù)字識(shí)別問(wèn)題中超參數(shù)對(duì)CNN神經(jīng)網(wǎng)絡(luò)訓(xùn)練的影響,主要研究了批尺寸、學(xué)習(xí)率與訓(xùn)練誤差、測(cè)試誤差的關(guān)系[16]。在混合深度學(xué)習(xí)地震反演領(lǐng)域,不同類型的超參數(shù)對(duì)網(wǎng)絡(luò)性能及計(jì)算速度影響尚缺乏系統(tǒng)性研究,直接影響了反演精度和推廣應(yīng)用。
因此,本文在混合深度學(xué)習(xí)反演彈性阻抗基礎(chǔ)上[13],重點(diǎn)探討 Epoch、batch_size、正則化參數(shù)、參與網(wǎng)絡(luò)訓(xùn)練的測(cè)井個(gè)數(shù)、學(xué)習(xí)率等5個(gè)超參數(shù)對(duì)網(wǎng)絡(luò)性能及計(jì)算速度的影響,為深度學(xué)習(xí)地震反演超參數(shù)選取提供依據(jù)。
為了研究超參數(shù)對(duì)反演結(jié)果的影響,選取Marmousi 2模型[17]作為深度學(xué)習(xí)的數(shù)據(jù)集。Marmousi 2模型是Marmousi合成模型的彈性擴(kuò)展,整個(gè)模型寬度為17 km,深度為3.5 km,垂直分辨率為1.25 m。根據(jù)研究需要,我們選取了整個(gè)二維地震剖面的中間部分,共計(jì)2 720道,其時(shí)間域地震剖面如圖1所示。對(duì)選取的地震道集重新進(jìn)行數(shù)據(jù)集劃分,即把數(shù)據(jù)集重新劃分為訓(xùn)練集、測(cè)試集和驗(yàn)證集,這樣劃分的好處是可以驗(yàn)證混合深度學(xué)習(xí)網(wǎng)絡(luò)的泛化性能。GRU-CNN混合深度學(xué)習(xí)采用Motaz在2019年提出的網(wǎng)絡(luò)框架[13]。由于該網(wǎng)絡(luò)總體參數(shù)達(dá)到上千個(gè),難以對(duì)其全部進(jìn)行研究,因此本文在內(nèi)部網(wǎng)絡(luò)參數(shù)保持不變情況下,重點(diǎn)研究5個(gè)外部超參數(shù)。
圖1 Marmorsi2模型時(shí)間域地震剖面(局部)Fig.1 Time domain seismic profile of marmorsi2 model(local)
圖2a對(duì)比了混合深度學(xué)習(xí)與卷積深度學(xué)習(xí)兩種彈性阻抗反演方法,反演時(shí)長(zhǎng)為2 070 ms,從生產(chǎn)上看,長(zhǎng)時(shí)窗地震反演會(huì)增加反演的難度。整體上看,混合深度學(xué)習(xí)反演結(jié)果與測(cè)井彈性阻抗擬合較好,低頻趨勢(shì)合理,局部地層反演達(dá)到預(yù)設(shè)要求,探究其原因,主要是混合深度學(xué)習(xí)反演方法在算法中有機(jī)結(jié)合了卷積神經(jīng)網(wǎng)絡(luò)(CNN)及門控循環(huán)單元(GRU)兩種深度學(xué)習(xí)方法,而卷積神經(jīng)網(wǎng)絡(luò)能夠?qū)π√椎貙舆M(jìn)行特征提取,門控循環(huán)單元(GRU)深度學(xué)習(xí)則可以對(duì)地震長(zhǎng)時(shí)間序列進(jìn)行低頻信息的提取。從圖2a中可以看出,在0~400ms和1 800~2 100 ms兩個(gè)時(shí)窗范圍內(nèi),綠線較大程度地偏離了測(cè)井彈性阻抗結(jié)果,說(shuō)明反演誤差較大,主要原因是卷積深度學(xué)習(xí)對(duì)低頻信息提取能力較差。圖2b對(duì)比了兩種反演方法計(jì)算時(shí)間,CNN用時(shí)197.64 ms,CNN+GRU混合反演用時(shí)263.8 ms,混合反演用時(shí)略高,其原因是在混合深度學(xué)習(xí)反演中,當(dāng)?shù)卣饠?shù)據(jù)流向CNN網(wǎng)絡(luò)時(shí),同時(shí)地震數(shù)據(jù)也流向了GRU網(wǎng)絡(luò),而每一部分的數(shù)據(jù)流均會(huì)耗費(fèi)GPU計(jì)算時(shí)間。這造成兩種反演方法的耗時(shí)差異。圖2c對(duì)比了兩種反演方法的相關(guān)系數(shù),統(tǒng)計(jì)時(shí)窗是圖2a中的整條曲線時(shí)窗,統(tǒng)計(jì)方法采用R2相關(guān)方法,這種相關(guān)方法的優(yōu)點(diǎn)是考慮了兩條曲線的均方誤差。卷積深度學(xué)習(xí)的相關(guān)系數(shù)代表圖2a中卷積深度學(xué)習(xí)反演結(jié)果(綠線)與測(cè)井彈性阻抗(紅線)的相關(guān)系數(shù),混合深度學(xué)習(xí)的相關(guān)系數(shù)代表圖2a中黑線與紅線的相關(guān)系數(shù),圖2c表明,混合深度學(xué)習(xí)的相關(guān)系數(shù)明顯高于卷積深度學(xué)習(xí)反演方法。
a—反演結(jié)果對(duì)比;b—耗時(shí)對(duì)比;c—相關(guān)系數(shù)對(duì)比a—inversion results comparison;b—time consmption comparison;c—correlation coefficient comparison圖2 卷積深度學(xué)習(xí)與混合深度學(xué)習(xí)反演效率效果對(duì)比Fig.2 Comparison of inversion efficiency and result between convolution deep learning and hybrid deep learning
圖3為不同batch-size對(duì)相關(guān)系數(shù)及計(jì)算時(shí)間的影響。圖3a為batch_size測(cè)試圖,縱軸表示整個(gè)地震剖面上反演的EI道與實(shí)測(cè)EI的總相關(guān)系數(shù),從圖中可以看出,整體上相關(guān)系數(shù)在0.96 ~0.98之間,隨著batch_size逐漸變大而呈現(xiàn)出非規(guī)律性的相關(guān)系數(shù)變化,這也說(shuō)明如果想取得最佳的反演效果,需要進(jìn)行多次的batch_size參數(shù)測(cè)試。 圖3b為不同batch_size情況下反演耗時(shí)分布,為保證具有可對(duì)比性,每次batch_size測(cè)試,反演均包含模型訓(xùn)練與模型測(cè)試兩部分,深度學(xué)習(xí)程序在GPU上運(yùn)算,除了batch_size參數(shù)不同,其余實(shí)驗(yàn)參數(shù)均相同,除了batch_size=50時(shí)運(yùn)行時(shí)間有突變,隨著batch_size的增加,實(shí)驗(yàn)耗時(shí)逐漸遞增。因此結(jié)合圖3,綜合時(shí)間成本及相關(guān)系數(shù),選取batch_size參數(shù)為33次為適宜參數(shù)。
圖3 Batch-size對(duì)相關(guān)系數(shù)(a)及計(jì)算時(shí)間(b)的影響Fig.3 Batch-size effect on correlation coefficient(a) and calculation time(b)
圖4為參與模型訓(xùn)練的井的個(gè)數(shù)對(duì)相關(guān)系數(shù)及計(jì)算時(shí)間的影響。圖4a縱軸表示整個(gè)地震剖面上反演的EI道與實(shí)測(cè)EI的總相關(guān)系數(shù),從圖中可以看出,當(dāng)井的個(gè)數(shù)從1口到45口井遞增變化時(shí),相關(guān)系數(shù)整體上呈現(xiàn)非周期性的波動(dòng)。當(dāng)只有1口井時(shí),相關(guān)系數(shù)較?。划?dāng)大于2口井時(shí),整體上相關(guān)系數(shù)處于0.96~0.98之間。這表明了深度學(xué)習(xí)網(wǎng)絡(luò)受參與訓(xùn)練的井?dāng)?shù)的影響較小,也說(shuō)明了混合深度學(xué)習(xí)網(wǎng)絡(luò)的穩(wěn)健性。圖4b表明隨著參與訓(xùn)練的井?dāng)?shù)遞增,深度學(xué)習(xí)網(wǎng)絡(luò)耗時(shí)整體上近似線性遞增,因此,綜合圖4選取參與訓(xùn)練的井?dāng)?shù)為13時(shí),相關(guān)系數(shù)較高,同時(shí)時(shí)間成本較低。
圖4 參與訓(xùn)練的井?dāng)?shù)對(duì)相關(guān)系數(shù)(a)、計(jì)算時(shí)間(b)的影響Fig.4 Influence of number of wells participating in the training on correlation coefficient(a) and calculation time(b)
在相同超參數(shù)情況下,將深度學(xué)習(xí)網(wǎng)絡(luò)分別運(yùn)行在CPU和GPU上,其CPU型號(hào)是intel i7-8550U,主頻是1.8 GHz,GPU顯卡型號(hào)是NVIDIA GeForce GTX1050獨(dú)立顯卡,參與反演的地震道是2 720道,深度學(xué)習(xí)網(wǎng)絡(luò)在CPU運(yùn)行時(shí)間是6 746 ms,在GPU上運(yùn)行時(shí)間是381 ms,CPU耗時(shí)將近是GPU耗時(shí)的18倍。其餅狀圖如圖5所示。可見(jiàn),對(duì)于深度學(xué)習(xí)反演算法,利用GPU運(yùn)算更加具有實(shí)用性。
圖5 相同超參數(shù)情況下GPU運(yùn)算與CPU運(yùn)算耗時(shí)比較Fig.5 Comparison of operation time between GPU andCPU with the same hyper-parameters
在深度學(xué)習(xí)中,由于數(shù)據(jù)集一般都很龐大,而每個(gè)數(shù)據(jù)單元都可能需要計(jì)算梯度,在這種情況下,一次性將全部數(shù)據(jù)加入計(jì)算機(jī)內(nèi)存是不可能的,筆者嘗試開(kāi)辟虛擬內(nèi)存空間,依然會(huì)存在內(nèi)存爆滿(內(nèi)存利用率100%)的情況,影響深度學(xué)習(xí)效率。圖6a表示不同Epoch數(shù)量與相關(guān)系數(shù)關(guān)系,縱軸表示整個(gè)地震剖面上反演的EI道與實(shí)測(cè)EI的總相關(guān)系數(shù);圖6b表示反演耗時(shí)與Epoch數(shù)量選擇的變化關(guān)系??梢钥闯?,Epoch數(shù)量增加導(dǎo)致計(jì)算耗時(shí)近似線性增加。當(dāng)Epoch<70時(shí),相關(guān)系數(shù)變化劇烈,對(duì)照?qǐng)D6b,此時(shí)雖然計(jì)算耗時(shí)較少,但可以認(rèn)為反演結(jié)果不穩(wěn)定;當(dāng)Epoch數(shù)量為280~700時(shí),相關(guān)系數(shù)趨于穩(wěn)定;隨著Epoch數(shù)量增加,耗時(shí)呈現(xiàn)近似線性增加;綜上,可以優(yōu)選Epoch=280作為較好的超參數(shù)選擇。
圖6 輪次(Epoch)與相關(guān)系數(shù)(a)、計(jì)算耗時(shí)(b)的關(guān)系Fig.6 Relation diagram of Epoch vs the correlation coefficient(a) and time consumption(b)
圖7是α參數(shù)與相關(guān)系數(shù)、計(jì)算耗時(shí)關(guān)系圖,反映了兩個(gè)正則化參數(shù)α、β之間的比例關(guān)系,其中,α代表了彈性阻抗EI在整個(gè)損失函數(shù)中所占的權(quán)重,β代表了地震在整個(gè)損失函數(shù)中所占的權(quán)重。α,β兩個(gè)正則化參數(shù)的內(nèi)涵是,相當(dāng)于在地震反演中更加認(rèn)同地震數(shù)據(jù)還是更加相信測(cè)井?dāng)?shù)據(jù)。為了完備討論這個(gè)問(wèn)題,一般α、β都需要給定各自的范圍,之后兩兩組合,再進(jìn)行反演試算。本文為了達(dá)到上述效果,簡(jiǎn)化了表征方式,即取α∈[0.1,2.0],步長(zhǎng)為0.1,同時(shí)針對(duì)每一個(gè)α取值,β取值均為1,相當(dāng)于α∶β∈[0.1,2.0],步長(zhǎng)為0.1,特別說(shuō)明,這里面也包含了α∶β=1∶1情況,即地震與測(cè)井所占權(quán)重相等(兩者同等重要)。從圖7a可以看出當(dāng)α∶β≤0.5∶1,相關(guān)系數(shù)變化劇烈,最小相關(guān)系數(shù)僅為0.75;當(dāng)α∶β≥0.6∶1時(shí),相關(guān)系數(shù)大于 0.95。圖7a整條曲線表明,地震非監(jiān)督與測(cè)井監(jiān)督部分的比例關(guān)系對(duì)于最終的反演結(jié)果是有影響的,這說(shuō)明,深度學(xué)習(xí)雖然可以通過(guò)網(wǎng)絡(luò)的正向傳播及反向梯度自動(dòng)求導(dǎo),從而尋求得到最佳的網(wǎng)絡(luò)參數(shù),但是,超參數(shù)的選取依然是值得關(guān)注的問(wèn)題,尤其對(duì)于實(shí)際的生產(chǎn)項(xiàng)目,應(yīng)該有必要做好這部分的測(cè)試工作,從而全面發(fā)揮深度學(xué)習(xí)網(wǎng)絡(luò)的超強(qiáng)性能。從圖7b可以看出,當(dāng)α∈[0.1,2.0],整個(gè)耗時(shí)在200 s和205 s之間,當(dāng)α∶β=1.2∶1時(shí)耗時(shí)出現(xiàn)突變。這說(shuō)明,對(duì)于三維大工區(qū),要結(jié)合圖7的相關(guān)系數(shù)及時(shí)間消耗圖綜合選取正則化參數(shù)。
圖7 正則化參數(shù)α與相關(guān)系數(shù)(a)、計(jì)算耗時(shí)(b)關(guān)系Fig.7 Relation diagram of regularization parameter α vs correlation coefficient(a) and time consumption(b)
在最原始的梯度更新算法[13]中:
(1)
a—余弦學(xué)習(xí)率曲線;b—常數(shù)學(xué)習(xí)率與余弦學(xué)習(xí)率損失曲線對(duì)比a—cosinc learning rate curve;b—loss curve comparison between constant learning rate and cosinc learning rate圖8 學(xué)習(xí)率曲線及改進(jìn)方法Fig.8 Learning rate curve and improvement method
1)對(duì)于深度學(xué)習(xí)反演,超參數(shù)選取是值得探討的內(nèi)容。在生產(chǎn)項(xiàng)目中一般依靠經(jīng)驗(yàn)進(jìn)行參數(shù)選擇,難以對(duì)反演精度進(jìn)行準(zhǔn)確量化。本文的模擬結(jié)果表明,選取不同的超參數(shù),雖然深度學(xué)習(xí)算法都能使深度學(xué)習(xí)網(wǎng)絡(luò)收斂,但最終的反演結(jié)果及反演耗時(shí)是有優(yōu)劣之分的。
2)本文為深度學(xué)習(xí)反演提供了一個(gè)可行的超參數(shù)選取思路,即通過(guò)挑選典型的二維測(cè)線,利用深度學(xué)習(xí)算法在GPU上的快速運(yùn)算技術(shù),快速提取正則化參數(shù)α、Epoch、batch_size、參與網(wǎng)絡(luò)訓(xùn)練的井?dāng)?shù)等參數(shù)與相關(guān)系數(shù)、時(shí)間關(guān)系圖,從而為深度學(xué)習(xí)超參數(shù)選取提供科學(xué)依據(jù)。
3)關(guān)于超參數(shù)的完全自動(dòng)化選取及深度學(xué)習(xí)的自我進(jìn)化機(jī)制研究是未來(lái)進(jìn)一步研究方向。
致謝:感謝審稿專家和編輯老師對(duì)本文提出的寶貴意見(jiàn)和建議,感謝成都理工大學(xué)陳學(xué)華教授對(duì)論文初稿提出的寶貴意見(jiàn)。