Page 91 - 2024年第55卷第8期
P. 91
式中:s为第 t个时间步 Decoder循环神经网络的隐藏状态;g(·)为循环神经网络的数学表达式。在
t
Seq2Seq模型中,s= h,f(·)和 g(·)通常使用 LSTM和 GRU。
1 T
由于 Seq2Seq中 Encoder和 Decoder均需要在每个时间步循环,考虑需平衡虚拟传感器的计算效
率,故本文采用 GRU作为地震虚拟传感器模型中 Encoder和 Decoder的循环体。GRU是 LSTM 的简化
变体,通常能够提供同等的效果,但计算速度明显更快 [29] 。GRU包括重置门(R)和更新门(Z),R
t t t
用于捕获时间序列中的短期依赖关系,Z 则用于捕获时间序列中的长期依赖关系。门控循环单元的数
t
学表达如下:
R= σ (xw + h w + b) (4)
t t xr t - 1 hr r
Z= σ (xw + h w + b) (5)
z
t xz
hz
t - 1
t
式中:w 和 w 、w 和 w 分别为 R和 Z 的权重参数;b和 b为偏置参数;σ为 sigmoid激活函数,可
xr hr xz hz t t r z
将输入值转换到区间(0,1)。
将 R 与神经网络的隐藏状态更新机制集成,通过前序隐藏状态 h 更新得到后续时间步的隐藏状
t - 1
t
态 h。
t
槇
h= tanh (xw + (R⊙h )w + b)
{ t t xh t t - 1 hh h (6)
槇
h= Z⊙h + (1 - Z) ⊙h
t t t - 1 t t
式中:w 和 w 为权重参数;b 为偏置参数;符号⊙为 Hadamard积运算符;tanh为非线性激活函数,
xh hh h
槇
确保候选的隐藏状态中的值保持在区间( - 1 ,1)中;h为时间步 t的候选隐藏状态。
t
在地震虚拟传感器构建过程中,由于三个互相垂直方向地震信号具有差异性和独立性,本文采用
基于高斯似然性的多任务学习损失函数 [28] 加快模型训练速度,该综合损失函数定义如下:
3 1 3
L= ∑ 2 L +ln( ∏ σ i ) (7)
i
i =1 2 σ i i =1
式中:L为用于整体反向传播和梯度优化的多任务学习模型的综合损失函数;L 为第 i个子任务的损
i
为观测噪声标量。
失函数,本文采用均方误差损失函数 ( MeanSquaredError,MSE);σ i
3.2 基于 TF和注意力机制改进 Seq2Seq的长时序预测方法 为提高地震虚拟传感器长时序超前感知
的精度,分别在 Encoder和 Decoder中嵌入 TF层和 ITF层,并加入注意力机制,改进传统 Seq2Seq在
过长的序列预测中难以有效编码和全局信息搜索能力弱的缺点,提高虚拟传感器在地震信号长时序预
测任务中的精度。
3.2.1 嵌入 TF层和 ITF层的 Encoder和 Decoder 传统 Seq2Seq采用 Embedding层对输入输出的时间序列
做线性变换,此过程一般不改变输入序列长度。在对长时序列编解码时,LSTM和 GRU的循环层由于误
差逐步累计且 h难以对超过 100个时间步之后的序列有效编码,导致长序列的预测精度不足。而地震监
t
测数据采样率通常高达 50~200Hz,传统的 Seq2Seq显然难以直接用于解决地震信号的长时序预测问题。
针对地震信号长时间序列的非平稳特征,引入 TF层对原始地震信号的时间序列进行时频转换,
减少 Encoder的序列输入长度并提取时频域特征信息,并在 Decoder中嵌入 ITF层用于将预测的时频信
息逆变换为地震信号输出。此过程可将循环层的输入输出特征由一维地震时间序列扩维成二维时频矩
阵,矩阵的长度缩短为时间窗口的个数,矩阵的宽度代表不同的频率,矩阵中每个时频单元的数值为
对应时间段内对应频率的地震强度。
考虑地震信号感知对实时性的高要求,本文的 TF层采用计算量相对较小的短时傅里叶变换(Short -
TimeFourierTransform ,STFT)作为非线性时频变换方法,将地震信号时间序列转换为包含时域和频域
信息的时频矩阵,其计算公式如下:
∫
STFT(t,f) = X( τ )h(x-t)e - i2 π f τ d τ (8)
式中 h(x - t)为时间窗函数,本文选用汉宁窗,X( τ )h(x - t)等价于取出的地震信号在分析时间点 τ 附
近的一个切片。
— 9 6 9 —