馬琰祁 李偉勤 吳育涵 鐘連誠
1 西南石油大學電氣信息學院,成都市新都大道8號,610500
隨著正演計算方法的發展和計算機性能的提高,神經網絡為地球物理學研究打開了新的篇章。已有研究表明,神經網絡在電磁反演中具有可行性[1-2],但目前大部分神經網絡在可控源電磁反演中的應用是基于反向傳播等傳統方法提供初始輸入的一次性生成的網絡模型。神經網絡的非線性優勢在分類問題上效果顯著,但在回歸預測方面其優勢會弱化,導致神經網絡模型出現過擬合或欠擬合等問題[3]。在神經網絡訓練中,較少的特征無法很好地反映地表特征場源之間的關系,因此一般使用高維的訓練樣本,但這也容易導致網絡模型不收斂[4]。由此可見,神經網絡在可控源電磁法中的應用具有一定的挑戰性,同時也有很大的科研拓展空間。
本文提出一種卷積神經網絡(convolutional neural network,CNN)和生成對抗網絡(generative adversarial networks,GAN)相結合的CNN-GAN組合模型來解決可控源電磁二維反演問題。CNN具有較強的空間提取能力,而GAN判別器的識別能力可以增強網絡,抓取更多的數據信息。使用CNN從差分總場中提取地下異常體電導率的空間數據信息,再將獲得的數據信息輸入GAN,以改進數據圖像重建。通過CNN-GAN組合模型訓練方法可以使網絡擁有更強的學習能力,更加有效地挖掘輸入與標簽之間數據的關聯性,最后利用直方圖交互法將組合模型的預測結果與傳統網絡模型的預測結果進行對比。
地電模型由空氣層、地層和地下異常體3部分組成,接收區域位于地面,異常體位于地下,磁偶極子發射源位于異常體上方,其橫坐標位于原點處,地電模型如圖1所示。

圖1 地電模型示意圖
根據麥克斯韋方程組和相應的電磁張量格林函數,可以寫出任意電流分布為j(r)的電場公式:
(1)
式中,rj為剖分后的任意點,E為電場,GE為電場格林算子,D為異常體內部區域。
(2)

E(rj)=GE(ja)+GE(je)
(3)
式中,GE(ja)為過載電流ja產生的異常場,GE(je)為對應背景介質的外部電流je產生的背景場。另有:
(4)
Eb(rj)=GE(je)
(5)

(6)
若已知非均勻區域內的電場和異常體電導率,使用式(6)便可求出任意點rj的電場[5]。式(6)為電磁正演模擬建立了基礎。

(7)

卷積神經網絡(CNN)是深度學習中的代表網絡之一,由輸入層、輸出層、全連接層、卷積層和池化層5部分組成,具體的網絡結構[6]如圖2所示。由于CNN可以將模型中的特征提取出來,然后根據模型的特征進行識別、分類或預測等,其在地震及電磁數據分析領域中的應用十分廣泛。

圖2 CNN示意圖
CNN主要通過訓練網絡來學習輸入與輸出之間的關系,而在其應用于地球物理領域時,可以把某點觀測的電磁場數據看成一個特征。因此,本文將地面接收機接收及處理后的差分總場作為該網絡模型的輸入,將地下異常體的電導率作為輸出,通過一系列卷積操作有效提取出輸入和輸出數據之間的映射關系。將ADAM優化器應用于CNN中,該優化器將AdaGrad算法和RMSProp算法的優點相結合,可對網絡中的每個參數使用相同學習率,并獨立適應神經網絡的學習[7]。
雖然CNN可實現地下異常體電導率的粗略重構,但其池化層丟失了一些有價值的信息,忽略了局部與整體之間的關系,導致精度較低,不能滿足工程應用的要求。因此,本文將CNN的訓練過程作為傳統深度學習方法的初值選擇過程,再使用GAN對模型進行優化。
生成對抗網絡(GAN)由生成器和判別器兩部分組成,具體結構如圖3所示。與CNN不同,GAN是基于模擬人腦建模的,需要不斷學習和模仿,以提升到與標簽數據一致且符合需要的建模水平[8]。

圖3 GAN示意圖
在傳統GAN中,常使用隨機噪聲作為生成器的輸入,但噪聲是隨機采樣的,并且噪聲在原始空間的映射并不是滿射的,這是導致GAN崩潰的原因之一。所以,本文直接使用CNN的輸出作為GAN生成器的輸入,同時也使用ADAM優化器優化二元交叉熵更新生成器的權重。
2.3.1 CNN的評價指標
均方根誤差(RMSE)是判斷CNN預測效果的指標之一。RMSE擅長追蹤異常的數據值,注重預測結果中異常值對模型效果的影響,RMSE值越小,其訓練效果越好[9]。RMSE的計算公式為:
(8)
式中,m為樣本總數,Yi為預測的地下異常體電導率,f(xi)為真實的地下異常體電導率。
2.3.2 GAN的評價指標
傳統GAN的損失函數常表示為:
Ez~Pz[log(1-D(G(z))]
(9)
式中,G為生成器,D為判別器,V(D,G)為其運算關系,x為真實數據,Z為噪聲數據,E為數學期望,Pdata為真實數據的分布,Pz為噪聲數據的分布,G(z)為生成器生成樣本的數據,D(x)為判別器判別圖片的真實概率。
傳統GAN的損失函數常用log(1-D(G(z)))表示生成器的交叉熵,但通過圖4中log(1-D(x))函數曲線發現,當D(x)接近0時,梯度非常小。所以,在傳統GAN訓練初期,生成器“欺騙”判別器的效率很低。雖然-log(D(x))函數和log(1-D(x))函數的整體趨勢都是遞減的,但-log(D(x))函數在D(x)接近0時梯度較大,有利于提高生成器在訓練初期“欺騙”判別器的效率,從而提高GAN整體的訓練速度。此外,為盡可能增強生成器的性能,避免訓練模型出現過擬合的現象,本文增加了L1正則化(L1 regularization)作為損失函數的懲罰項[10],因此可將生成器的損失函數Loss(G)表示為:

圖4 兩種log函數對比
(10)
式中,m為樣本個數,WG為GAN生成器損失的權重初始值,WL1為平均絕對誤差的權重初始值。
對于GAN的判別器損失函數Loss(D)可表示為:
[log(D(x)+β)+log(1-D(G(z))+β)]
(11)
式中,β為常數,用于確保log函數里面的參數大于0。
本文提出的CNN-GAN組合模型結構如圖5所示,該模型彌補了單一網絡容易出現訓練效果不穩定的缺點。考慮到現實情況中獲取差分總場相位的成本很高,所以將差分總場以幅值的形式作為輸入。差分總場幅值可表示為:

圖5 CNN-GAN組合模型
(12)
式中,M為差分總場幅值,Re為差分總場實部的模值,Im為差分總場虛部的模值。通過CNN初步完成對地下異常體電導率的粗略預測,再將預測結果送入GAN生成器中,然后將生成器的預測結果與真實數據信息一同傳入到判別器中,判別器將判斷結果反饋給生成器,通過生成器和判別器相互對抗,提高生成器的回歸預測能力,充分挖掘出差分總場中的隱藏信息。
本文使用電磁仿真模擬軟件批量制作以差分電場幅值作為輸入和以異常體電導率模型作為輸出的數據集。該軟件是基于積分方程方法的頻率域建模軟件,可設計三維地電結構模型,并實現平面波水平和垂直方向的雙極源及X、Y、Z三方向的場源模擬,通過修改參數文件來實現地電模型的模擬,參數設置包括場源參數、激發頻率、層狀模型參數、異常體剖分及異常體電導率等,運行程序即可獲得相應的電磁場數據。
根據油田實際情況建立地電模型,地下異常體的范圍為140 m×140 m×8 m,剖分網格大小為28 m×28 m×2 m,地下異常體形態與電導率是基于MNIST手寫數字集隨機生成的,且異常體電導率經過歸一化的數據預處理后在0~1之間隨機變化。如圖6(a)所示,接收區域在地面上2 000 m×2 000 m,異常體位于地下1 400 m,頻率設置為200 Hz。以磁偶極子發射源為中心布設接收區域,在已知異常體所在儲層大致位置的情況下,發射源A和發射源B分別位于異常體上方和下方100 m處,坐標分別為(0 m,0 m,1 308 m)、(0 m,0 m,1508 m),異常體坐標范圍為X(0~140 m)、Y(0~140 m)、Z(1 400~1 408 m),接收區域范圍為X(-1 000~1 000 m)、Y(-1 000~1 000 m)。接收區域布設如圖6(b)所示,其中紅點為發射源的位置,灰色矩形為異常體。

圖6 可控源模型示意圖
CNN-GAN組合模型的硬件環境包括AMD Ryzen 7 5800H with Radeon Graphics@3.20 GHz,NVIDIA GeForce RTX 3050Ti Laptop GPU;軟件環境包括Python 3.5,TensorFlow1.2和CUDA 10.2等。其中,CNN的學習率設置為0.001,GAN中生成器和判別器的學習率分別設置為0.002和0.000 01,訓練的批量大小為1,Epoch設置為120,初始權重WG和WL1分別設置為1.0和0.1。
數據集由地面接收器采集到的作為深度學習網絡輸入的差分總場幅值和作為網絡輸出的地下異常體電導率構成。隨著網絡模型學習參數的增加,訓練所需數據也會增加,所以高質量的數據更能對網絡性能產生積極影響[11]。經測試,選取1 000個數據集相較于500個數據集對于網絡性能有較大提升;而選取1 200個數據集和1 500個數據集相較于1 000個數據集對于網絡性能的提升并不顯著。因此,考慮到計算效率和時間成本,本文挑選了1 000個異常體占比較大的高質量數據集作為訓練樣本,200個數據集作為測試樣本,送入CNN進行訓練,并使用均方根誤差(RMSE)作為衡量指標。由圖7可以看出,曲線呈跳躍狀,訓練過程不穩定,只能給出粗略的預測結果。再將CNN中粗略的預測結果送入GAN,結果如圖8所示,隨著訓練次數的增加,生成器的損失函數也逐漸降低,前150次迭代GAN生成器和判別器處于激烈的對抗訓練中,迭代至18 000次后趨于平穩,模型基本收斂,結果達到預期效果。由此可知,CNN-GAN組合模型訓練花費時間為36 783 s。

圖7 CNN網絡的均方根誤差

圖8 生成器損失函數
分別使用CNN、GAN及CNN-GAN組合模型進行對比實驗,結果如圖9所示。可以看出,CNN及GAN只能粗略預測異常體電導率,而CNN-GAN組合模型預測的電導率分布與真實情況基本一致,可精確反演出地下異常體的位置形狀。

(a)差分總場幅值作為神經網絡的輸入;(b)真實異常體電導率分布作為神經網絡的標簽;(c)基于CNN的二維反演異常體電導率分布;(d)基于GAN的二維反演異常體電導率分布;(e)基于CNN-GAN的二維反演異常體電導率分布
本文采用直方圖相交法計算模型輸出和標簽之間的相似度,將彩色圖分為3個通道并繪制直方圖[12],將CNN、GAN及CNN-GAN組合模型預測圖形的直方圖分別與標簽RGB三通道直方圖進行匹配,并對匹配結果求平均值,分別得出不同網絡模型預測的圖形與標簽的相似度(表1),發現CNN-GAN組合模型預測的電導率與標簽相似度高達94.38%。

表1 不同模型預測圖形的相似度
針對傳統可控源電磁反演方法容易陷入局部最小、計算量大及反演結果不穩定等問題,本文提出一種基于CNN和GAN的組合神經網絡模型。該模型不僅在總場數據送入網絡前對其進行差分預處理,還提高了CNN的提取能力及GAN的穩定性。將CNN-GAN組合模型的預測結果與傳統CNN和GAN的預測結果進行分析對比,結果顯示,CNN-GAN組合模型預測效果最好,相似度高達94.38%,比傳統CNN和GAN模型分別提高約48%、78%。
神經網絡模型在可控源反演領域還存在許多問題,后期將提高模型的訓練效率,改善CNN-GAN組合模型的泛化能力,以提高其實用性。