所謂的全波形反演的伴隨狀態法

所謂的全波形反演的伴隨狀態法

4 人贊了文章

假設全波形反演的目標函數具有如下形式:

Jleft(m
ight)=frac{1}{2}int_{0}^{T}fleft(u,m,t
ight)dt

常見的 fleft(u,m,t
ight) 的選取方式有:

fleft(u,m,t
ight)=sum_{i=0}^{k}|uleft(x_{r_i},t
ight)-d_{r_i}left(t
ight)|^2

frac{delta J}{delta m}=int_{0}^{T}frac{delta f}{delta u}frac{delta u}{delta m}dt

波場u滿足波動方程:

egin{equation} left{ egin{aligned} & m^2frac{partial^2 u}{partial t^2}=Delta u, xin Omega=H	imes R^2\ & uleft(x,0
ight)=0 \ & frac{partial u}{partial t}left(x,0
ight)=0 \ & uleft(x,t
ight)Big|_{partialOmega}=0 end{aligned} 
ight. end{equation}

其中H=[0,infty)

然後呢,這個 frac{delta u}{delta m} 就要滿足下面的微分方程:

egin{equation} left{ egin{aligned} & m^2frac{partial^2 }{partial t^2}frac{delta u}{delta m}-Deltafrac{delta u}{delta m}=-2mfrac{partial^2 u}{partial t^2}, xin Omega=H	imes R^2\ & frac{delta u}{delta m}left(x,0
ight)=0 \ & frac{partial }{partial t}left(frac{delta u}{delta m}
ight)left(x,0
ight)=0 \ & frac{delta u}{delta m}left(x,t
ight)|_{partialOmega}=0 end{aligned} 
ight. end{equation}

egin{equation} egin{aligned} frac{delta J}{delta m}&=int_{0}^{T}sum_{i=0}^{k}left(u(r_{i},t)-d_{i}left(t
ight)
ight)frac{delta u}{delta m}dt \ &=int_{0}^{T}int_{Omega}frac{delta u}{delta m}sum_{i=0}^{k}left(uleft(x,t
ight)-dleft(r_i,t
ight)
ight)delta(x-r_i)dVdt end{aligned} end{equation}

計算FWI的梯度需要用到Green公式。就簡單推一下Green公式應該怎麼寫吧。首先考慮Stokes公式

int_{partial Omega}omega=int_{Omega}domega

根據這個Stokes定理,可以推出下面這個式子成立

egin{equation} egin{aligned} &int_{Omega}left(vfrac{partial^2 u}{partial (x^{i})^2}-ufrac{partial^2 v}{partial (x^{i})^2}
ight)dx^{1}wedge dx^{2}wedge dots wedge dx^{n} \ =&int_{partial Omega}(-1)^{i-1}left(vfrac{partial u}{partial x^{i}}-ufrac{partial v}{partial x^{i}}
ight)dx^{1}wedge dx^{2}wedgedots dx^{i-1}wedge dx^{i+1}wedge dotswedge dx^{n} end{aligned} end{equation}

這個其實就是Green公式。通過微分形式的運算規則可以驗證上面的微分關係,於是式子就成立了。

egin{equation} egin{aligned} & dleft(left(vfrac{partial u}{partial x^{i}}-ufrac{partial v}{partial x^i}
ight)dx^1wedge dx^2wedgedotswedge dx^{i-1}wedge dx^{i+1}wedgedotswedge dx^{n}
ight) \ =&(-1)^{i-1}left(frac{partial v}{partial x^i}frac{partial u}{partial x^i}+vfrac{partial^2 u}{partial (x^i)^2}-frac{partial u}{partial x^i}frac{partial v}{partial x^i}-ufrac{partial^2 v}{partial (x^i)^2}
ight)dx^1wedge dx^2wedgedotswedge dx^n \ =&(-1)^{i-1}left(vfrac{partial^2 u}{partial (x^i)^2}-ufrac{partial^2 v}{partial (x^i)^2}
ight)dx^1wedge dx^2wedgedotswedge dx^n end{aligned} end{equation}

有了Green公式,在 frac{delta u}{delta m} 滿足的微分方程兩端同時乘以一個函數w。這裡w是一個輔助函數,只是為了計算梯度,後面可以推出w需要滿足的方程。

m^2wfrac{partial^2 }{partial t^2}frac{delta u}{delta m}=wDelta frac{delta u}{delta m}-2mwfrac{partial^2 u}{partial t^2}

對上面的等式兩邊積分,在,然後推啊推啊

egin{equation}egin{aligned} &int_{0}^Tint_{Omega}wDelta vdxdydzdt\ =&int_0^Tint_{Omega}wleft(frac{partial^2 v}{partial x^2}+frac{partial^2 v}{partial y^2}+frac{partial^2 v}{partial z^2}
ight)dxdydzdt\ =&int_0^Tint_{Omega}vleft(frac{partial^2 w}{partial x^2}+frac{partial^2 w}{partial y^2}+frac{partial^2 w}{partial z^2}
ight)dxdydzdt\ +&int_0^Tint_{partial Omega}left(left(vfrac{partial w}{partial x}-wfrac{partial v}{partial x}
ight)dydz \ +left(-vfrac{partial w}{partial y}+wfrac{partial v}{partial y}
ight)dxdz \ +left(vfrac{partial w}{partial z}-wfrac{partial v}{partial z}
ight)dxdy
ight)dt\ =&int_0^Tint_{Omega}vDelta wdxdydzdt+int_0^Tint_{partial Omega}left(vfrac{partial w}{partial z}-wfrac{partial v}{partial z}
ight)dxdydt \ =&int_0^Tint_{Omega}vDelta wdxdydzdtend{aligned}end{equation}

egin{equation}egin{aligned} &int_0^Tint_{Omega}wfrac{partial^2 v}{partial t^2}dxdydzdt\ =&int_0^Tint_{Omega}vfrac{partial^2 w}{partial t^2}dxdydzdt+int_{Omega}left(wfrac{partial v}{partial t}Big|_{t=0}^{t=T}-vfrac{partial w}{partial t}Big|_{t=0}^{t=T}
ight)dxdydz end{aligned}end{equation}

你會發現當w滿足一定條件時,下面這個式子會成立

int_0^Tint_{Omega}frac{delta u}{delta m}left(m^2frac{partial^2}{partial t^2}-Delta
ight)wdxdydzdt=int_0^Tint_{Omega}-2mwfrac{partial^2 u}{partial t^2}dxdydzdt

w滿足什麼條件呢,也就是滿足以下微分方程時,上面那個式子成立

egin{equation} left{ egin{aligned} & m^2frac{partial^2 w}{partial t^2}-Delta w=sum_{i=0}^{k}left(uleft(x,T-t
ight)-dleft(x,T-t
ight)
ight)deltaleft(x-r_i
ight), xin Omega=H	imes R^2\ & wleft(x,T
ight)=0 \ & frac{partial w}{partial t}left(x,T
ight)=0 \ & wleft(x,t
ight)Big|_{partialOmega}=0 end{aligned} 
ight. end{equation}

然後人們就把這個w叫做伴隨波場,這個方法就叫做伴隨狀態法,可以利用這個方法比較方便地在數值上計算FWI的梯度。

如果目標函數的形式發生變化,只需要將第一個微分方程的右端項修改為相應的形式,就可以得到對應的梯度計算方法了。

其實波場的正向傳播,然後是殘差的反向傳播,非常像人工神經網路里的BP演算法,BP也是先feed forward,然後誤差反向傳播,而且關鍵是兩者都是在計算梯度。我覺得這兩個東西如果從某個更深刻的角度來看,應該會有聯繫。


推薦閱讀:

意識量子坍塌 隱含秩序 量子相干離子通道 人腦量子不確定性與非線形系統混沌 神經元凝聚態 量子大腦動力學
一文徹底搞懂BP演算法:原理推導+數據演示+項目實戰(上篇)
DLL:一個炙手可熱的快速深度神經網路庫
跨越時空:找回 RNN 消失的梯度
softmax

TAG:地球物理學 | 神經網路 |